0%

Learn how to best use GitOps to automate manual tasks in the continuous delivery and deployment process

Key Features

  • Explore the different GitOps schools of thought and understand which GitOps practices will work for you and your team
  • Get up and running with the fundamentals of GitOps implementation
  • Understand how to effectively automate the deployment and delivery process

Book Description

The world of software delivery and deployment has come a long way in the last few decades. From waterfall methods to Agile practices, every company that develops its own software has to overcome various challenges in delivery and deployment to meet customer and market demands. This book will guide you through common industry practices for software delivery and deployment.

Throughout the book, you'll follow the journey of a DevOps team that matures their software release process from quarterly deployments to continuous delivery using GitOps. With the help of hands-on tutorials, projects, and self-assessment questions, you'll build your knowledge of GitOps basics, different types of GitOps practices, and how to decide which GitOps practice is the best for your company. As you progress, you'll cover everything from building declarative language files to the pitfalls in performing continuous deployment with GitOps.

By the end of this book, you'll be well-versed with the fundamentals of delivery and deployment, the different schools of GitOps, and how to best leverage GitOps in your teams.

What you will learn

  • Explore a variety of common industry tools for GitOps
  • Understand continuous deployment, continuous delivery, and why they are important
  • Gain a practical understanding of using GitOps as an engineering organization
  • Become well-versed with using GitOps and Kubernetes together
  • Leverage Git events for automated deployments
  • Implement GitOps best practices and find out how to avoid GitOps pitfalls

Who this book is for

This book is for engineering leaders and anyone working in software engineering, DevOps, SRE, build/release, or cloud automation teams. A basic understanding of the DevOps software development life cycle (SDLC) will help you to get the most out of this book.

Table of Contents

  1. Repeatability Reliability Scalability through GitOps
  2. Foreword
  3. Contributors
  4. About the author
  5. About the reviewer
  6. Preface
    1. Who this book is for
    2. What this book covers
    3. To get the most out of this book
    4. Download the color images
    5. Conventions used
    6. Get in touch
    7. Reviews
  7. Section 1: Fundamentals of GitOps
  8. Chapter 1: The Fundamentals of Delivery and Deployment
    1. How did we get here?
    2. What is a deployment process?
    3. What is a delivery process?
    4. What makes any practice continuous?
    5. Summary
  9. Chapter 2: Exploring Common Industry Delivery and Deployment Practices
    1. Common industry practices for deployment
    2. Common industry practices for delivery
    3. Common tools used for deployment and delivery
    4. Needs versus wants
    5. The automation test
    6. Summary
  10. Chapter 3: The "What" and "Why" of GitOps
    1. Why does a continuous process matter?
    2. What is GitOps?
    3. Declarative execution and declarative state
    4. To push or pull ?
    5. Summary
  11. Section 2: GitOps Types, Benefits, and Drawbacks
  12. Chapter 4: The Original GitOps – Continuous Deployment in Kubernetes
    1. Original GitOps basics
    2. Kubernetes and operators
    3. Manifest explosion
    4. Benefits and drawbacks of originalist GitOps
    5. Common originalist GitOps tools
    6. Summary
  13. Chapter 5: The Purist GitOps – Continuous Deployment Everywhere
    1. Purist GitOps basics
    2. Servers, containers, and serverless deployment-as-code
    3. Declarative files overload
    4. Benefits and drawbacks of purist GitOps
    5. Common purist GitOps tools
    6. Summary
  14. Chapter 6: Verified GitOps – Continuous Delivery Declaratively Defined
    1. Verified GitOps basics
    2. Test, governance, deploy, verify, and restore as code
    3. One file, many files, or somewhere in-between
    4. Benefits and drawbacks of verified GitOps
    5. Common verified GitOps tools
    6. Summary
  15. Chapter 7: Best Practices for Delivery, Deployment, and GitOps
    1. The purpose of best practices
    2. Continuous deployment considerations
    3. Continuous delivery considerations
    4. Where GitOps ties in
    5. Summary
  16. Section 3: Hands-On Practical GitOps
  17. Chapter 8: Practicing the Basics – Declarative Language File Building
    1. Nesting and flat files
    2. XML file building
    3. JSON file building
    4. YAML file building
    5. Templatization types
    6. Summary
  18. Chapter 9: Originalist Gitops in Practice – Continuous Deployment
    1. Setting up minikube
    2. Homebrew
    3. VirtualBox
    4. kubectl
    5. minikube
    6. Setting up VSCode
    7. Downloading and installing
    8. Adding extensions
    9. Setting up Kubernetes and Helm
    10. Installing Helm
    11. Creating a Helm chart
    12. Removing unwanted files
    13. Adding required files
    14. Adding required information
    15. Exploring the files
    16. Testing the deployment
    17. Local continuous deployment with GitOps file building
    18. Starting minikube
    19. Run on Save configuration
    20. GitHub
    21. GitHub access
    22. Originalist GitOps with Argo CD
    23. Starting minikube
    24. Disabling the Run on Save extension
    25. Installing Argo CD
    26. Installing Argo CD CLI
    27. Argo CD API server access
    28. Logging in via the CLI
    29. Registering the cluster
    30. Creating an application from a Git repository
    31. Pushing a change
    32. Summary
  19. Chapter 10: Verified GitOps Setup – Continuous Delivery GitOps with Harness
    1. Mapping out the process
    2. One manifest or many
    3. Simple LAMP stack deployment
    4. Advanced setup for Tomcat with memcached and failover
    5. A manifest for integrations
    6. A manifest for configuration
    7. A manifest for execution
    8. A manifest for delivery
    9. Verified GitOps with Harness
    10. Summary
  20. Chapter 11: Pitfall Examples – Experiencing Issues with GitOps
    1. Building and testing Kubernetes manifests
    2. Failure strategies
    3. Governance and approvals
    4. Proprietary manifest building
    5. Summary
  21. Chapter 12: What's Next?
    1. Delivery versus deployment
    2. GitOps – what and why
    3. Continuous deployment GitOps – originalist and purist
    4. Continuous delivery GitOps – verified
    5. Best practices first, then GitOps
    6. Summary
    7. Why subscribe?
  22. Other Books You May Enjoy
    1. Packt is searching for authors like you
    2. Leave a review - let other readers know what you think
44.200.82.195