Argo CD in Practice The GitOps Way of Managing Cloud-Native Applications
Build CD pipelines following GitOps principles like declarative and immutable changes stored in version control, all continuously reconciled by Argo CD, and minimize the failure of deployments. Purchase of the print or Kindle book includes a free eBook in the PDF format. Key Features Discover how to...
Main Author: | |
---|---|
Other Authors: | , |
Format: | eBook |
Language: | Inglés |
Published: |
Birmingham :
Packt Publishing, Limited
2022.
|
Edition: | 1st ed |
Subjects: | |
See on Biblioteca Universitat Ramon Llull: | https://discovery.url.edu/permalink/34CSUC_URL/1im36ta/alma991009703306806719 |
Table of Contents:
- Cover
- Title Page
- Copyright and Credits
- Dedicated
- Foreword
- Contributors
- Table of Contents
- Preface
- Part 1: The Fundamentals of GitOps and Argo CD
- Chapter 1: GitOps and Kubernetes
- Technical requirements
- What is GitOps?
- Kubernetes and GitOps
- Architecture
- HTTP REST API server
- Controller manager
- Imperative and declarative APIs
- Imperative - direct commands
- Imperative - with config files
- Declarative - with config files
- Declarative - with config folder
- Building a simple GitOps operator
- IaC and GitOps
- Summary
- Further reading
- Chapter 2: Getting Started with Argo CD
- Technical requirements
- What is Argo CD?
- Get familiar with Argo CD
- Core concepts and vocabulary
- Argo CD reconciliation
- Vocabulary
- Explaining architecture
- Architectural overview
- The core components of Argo CD
- The core objects/resources of Argo CD
- Running Argo CD with Helm locally
- Running the first Argo CD application
- Running Argo CD with Argo CD Autopilot locally
- Synchronization principles
- Resource hooks
- Sync waves
- Summary
- Further reading
- Part 2: Argo CD as a Site Reliability Engineer
- Chapter 3: Operating Argo CD
- Technical requirements
- Declarative configuration
- HA installation with Kustomize
- Argo CD self-management
- Configuration updates
- Setting up an HA installation
- API server
- Repository server
- Application controller
- Redis cache
- Dex server
- Planning for disaster recovery
- Installing the CLI
- Creating the backup
- Restoring on a different cluster
- Enabling observability
- Monitoring with Prometheus
- Metrics for the operating team
- Metrics for the microservices teams
- Notifying the end user
- Installing Argo CD Notifications
- Starting a pipeline
- Summary
- Further reading
- Chapter 4: Access Control.
- Technical requirements
- Declarative users
- Admin and local users
- Service accounts
- Local service accounts
- Project roles and tokens
- Single sign-on
- SSO with Dex
- SSO with Argo CD directly
- Summary
- Further reading
- Part 3: Argo CD in Production
- Chapter 5: Argo CD Bootstrap K8s Cluster
- Technical requirements
- Amazon EKS with Terraform
- Getting familiar with Amazon EKS
- Designing EKS infrastructure
- Provisioning EKS with Terraform
- Bootstrapping EKS with Argo CD
- Preparing Argo CD Terraform
- Applying Argo CD Terraform
- Using the app of apps pattern
- Why the app of apps pattern?
- Bootstrapping utilities
- Bootstrap in practice
- Destroying infrastructure
- Starting fresh infrastructure
- App of apps disadvantages
- What is ApplicationSet?
- Generators
- Summary
- Further reading
- Chapter 6: Designing Argo CD Delivery Pipelines
- Technical requirements
- Motivation
- Simple blue/green in K8s
- Deployment strategies
- What is Argo Rollouts?
- Why Argo Rollouts?
- The architecture of Argo Rollouts
- Blue-green deployment strategy
- Canary deployment strategy
- A real CI/CD pipeline
- Setting up Argo Rollouts
- Automated blue-green promotion with GitHub Actions
- Automated rolling out with sync phases
- Keeping secrets safe
- Storing secrets safely
- Argo CD and External Secrets Operator
- Microservices CI/CD
- Monorepo microservices
- Summary
- Further reading
- Chapter 7: Troubleshooting Argo CD
- Technical requirements
- Initial setup
- Addressing day-to-day issues
- Restarting components
- Using a specific version of Helm
- Improving performance
- Application controller
- Repository server
- Summary
- Further reading
- Chapter 8: YAML and Kubernetes Manifests
- Technical requirements
- Working with templating options
- Helm
- Kustomize.
- Exploring types of validation
- Validating a Kubernetes schema
- Enforcing best practices for your manifests
- Performing extended checks with conftest
- Summary
- Further reading
- Chapter 9: Future and Conclusion
- Technical requirements
- Democratizing GitOps
- What is GitOps Engine?
- The GitOps agent
- What is kubernetes-sigs/cli-utils?
- kapply usage
- Wrap up
- Summary
- Further reading
- Index
- Other Books You May Enjoy.