IaC Innovations:
The
automation for deploying infrastructure in a consistent, repeatable and
error-free manner, involves assets, we call code because it takes similar
diligence to be written as any application code that performs create, update
and delete of business entities. Infrastructure-as-code has been devops-oriented,
often gaining mutually reinforcing automation between the pipeline and the
infrastructure delivered. Technology varies with cloud native forms, providers
like Ansible, Terraform, and domain specific language such as Pulumi. IaC can
be curated as a set of machine-readable files, descriptive model, and configuration
templates. There are two approaches for writing it: an imperative approach and
a declarative approach. The imperative approach allows users to specify the
exact steps to be taken for a change and the system does not deviate from them
while a declarative approach specifies the final form and the tool or platform
involved goes through the motion of provisioning them. As with DevOps based
growth, IaC is usually short-sighted often manifesting independent
shared-nothing and even redundant deployments for different business scenarios,
leaving little room for consolidation, consistency and organization across
deployment hierarchies of management group, subscription, resource groups and
resource types.
Yet complex
IaC deployment writers invest in many notable routines to bring cloud best
practices, and artifact management to IaC. These include uniform, consistent
and global naming conventions, registries that can be published by the system
for cross subscription and cross region lookups, parameterizing diligently at
every scope including hierarchies, leveraging dependency declarations, and
reducing the need for scriptability in favor of system and user defined
organizational units of templates. This article introduces an infrastructure
knowledge base that can live in the cloud and is continuously updated with each
deployment to provide supportability via read-only stores and frequently
publishing continuous and up-to-date information on the rollouts and their key
performance indicators and help alleviate the operations from the design and
development of IaC.
Such a knowledge base would be a hub and spoke model correlating resources with their origin information and existence identifiers and provide a one-stop shop for information regarding the infrastructure that would otherwise require manual cross linking of git repositories, pipeline runs, and issue tracking that are usually disparate systems in themselves. It would make the store cloud native so that the information can be available to query just like the various graph explorers that provide unparalleled querying and automation capabilities for resources and identities in the cloud. This extra mile for a knowledge management system in the cloud as a re-purposable data model across infrastructure maintaining organizations provides more than a single pane of glass for infrastructure drill downs and cross-reference. It brings a platform and enables many virtuous feedback cycles that serve IaC writers and arms them with more information at their fingertips before they make any changes.
No comments:
Post a Comment