The Essentials of GitOps

Armory Spinnaker whitepapers

Issue link: https://resources.armory.io/i/1379501

Contents of this Issue


Page 0 of 5

BROUGHT TO YOU IN PARTNERSHIP WITH 1 The Essentials of GitOps ISAAC MOSQUERA CHIEF TECHNOLOGY OFFICER, ARMORY CONTENTS ∙ The Need for a New Operational Model ∙ Infrastructure Automation for Modern Applications ∙ GitOps Benefits ∙ GitOps Tooling and Technologies ∙ A Common GitOps Workflow ∙ Conclusion THE NEED FOR A NEW OPERATIONAL MODEL With increasing user demand for always-on applications, available on any device, the complexity and sophistication of soware development and delivery amplify. Traditional, monolithic apps are being decomposed into cloud services that are built and run by a distributed workforce, collaborating from around the globe. Operations teams need a new paradigm to support the upsurge of deployment frequency across multiplying services and in multiple regions, all while reducing risk, increasing uptime, and staying secure. GitOps is an operational framework that takes DevOps best practices used for application development, such as version control, collaboration, compliance, and CI/CD, and applies them to infrastructure automation. While GitOps practices work well within any soware environment, Kubernetes is particularly well suited due to its use of declarative infrastructure definitions kept alongside application code in a Git repository. Keeping your system definition in Git means your engineers can use familiar, Git-based tooling and workflows to manage both application and infrastructure changes. With the entire state of your cluster kept under source control, you gain the ability to automate changes for less risk, recreate historical states, review a robust audit log, manage compliance, and more. INFRASTRUCTURE AUTOMATION FOR MODERN APPLICATIONS GitOps practices aren't dependent on any specific technology. While logically GitOps is simply managing operations by Git, there are three core practices that make up a mature GitOps practice: Infrastructure-as- code (IaC), merge requests (MRs) as the request for change and system of record, and continuous integration/continuous delivery (CI/CD). GitOps = IaC + MRs + CI/CD CORE PRACTICE: INFRASTRUCTURE-AS-CODE Infrastructure-as-Code (IaC) is the practice of keeping all infrastructure configurations stored as code. GitOps uses a Git repository as the single source of truth for the definition of your infrastructure environments. By shiing your environment definitions from manual configuration to configuration by code, you gain access to an array of benefits such as version control, code collaboration, and auditability. You also unlock Git as the user interface for your infrastructure, allowing you to leverage all of the developer tooling, training, and knowledge associated with Git for your infrastructure operations.

Articles in this issue

Links on this page

view archives of Whitepapers - The Essentials of GitOps