Infrastructure provisioning
softwareArchitecture infrastructureAsCode devOps microservice
Historic background
Good read: https://dzone.com/articles/infrastructure-provisioning-%E2%80%93
Summary:
Provisioning servers for technology were traditionally:
* Buy computers, setup servers, make available, or
* Hire a service of managed hosting: you decided what you needed, then hired a service to manage it for you
Cloud computing came as the next evolution step of provisioning of infrastructure, the area is called: Cloud provisioning of infrastructure, which was a change of paradigm where no sales person was involved and all is automated.
Cloud provisioning of infrastructure is a practice of DevOps. Along with: * CD/CI management: Automate processes of building and deploying software, they might use tools like containers (where they manage the underlying infrastructure) or serverless (where they dont) * Version control of systems and code * Agile software development * Infrastructure as code (IaC) * Configuration management of systems * Monitoring
Tool IaC: Terraform
https://developer.hashicorp.com/terraform/intro
Infrastructure as code tool, to build, change and version cloud services.
Helps provisioning a consistent workflow and manage all infrastructure in a life cycle. It can manage low-level components like compute, storage, and networking resources, as well as high-level components like DNS entries and SaaS features.
for cloud and on-prem (On-premises data centers, commonly referred to as “on-prem,” allow you to have full control of your infrastructure, while cloud computing is cost-efficient and easy to scale up and down.)