4.Cost Estimation: based on the referenced architecture, we can create a template for cost estimates. For some of the components, we might need to put in parameters as well, for examples how many Tera Bytes of storage. This will serve not only as the cost estimates for the project to make decision, but also the cost baseline when we try to manage the on-going cost and growth accordingly.
Self-Service Provisioning
This will be the center-piece of the whole governance. It is about finding the answers to âhow to gain both speed and control when provisioning cloud resourcesâ. Let us determine these scenarios:
Scenario 1: Central Cloud Operation Team to provision cloud resources
Pros: Ensure adherence to standard policies and IT security requirements
Cons: Central team would become a major bottleneck if it could not scale effectively. Also, the risks of human-errors.
Scenario 2: Users can provision cloud resources themselves
Pros: Speed. Mitigate bottle-neck.
Cons: Challenges in proactively control the adherence to policies and IT security requirements. Also, the risks of human-errors.
It is quite clear that we will need some kind of tools, and of course, Infra-as-Code (IaC), to automate the provisioning of cloud resources. This is where CI/CD Pipeline + Infra-as-Code can be the answer.
By using CI/CD Pipeline + Infra-as-Code + Referenced Architectures, with the right templates that embedded control of policies and IT security requirements, we can quickly and safely provisioning cloud resources with all the guardrails built-in.
Infra-as-Code could be in the form of the cloud service providers tool-of-choice (e.g. AWS CloudFormation, Azure Resource Manager, GCP Deployment Manager, or go neutral like HachiCorp Terraform). Using it with the CI/CI Pipeline tool like Gitlab + Jenkins + Terraform, or even sprinkle in some SecOps tools like SAST or DAST, will complete the picture of embedding policies and guardrails into the self-service provisioning tool.
Now, the Application Teams or even Full Stack Developer Wizards can just simply push the code, and let the pipeline auto-provisioning the cloud resources for them. Central Cloud Operations team can use their time to optimize or add more Referenced Architecture to make the pipeline even more useful. Everyone is happy.