All Products
Search
Document Center

Container Service for Kubernetes:GitOps overview

Last Updated:Apr 19, 2024

GitOps is a framework that uses Git repositories to manage application templates and implement continuous deployment for applications. In the GitOps framework, applications in Kubernetes clusters are deployed only by using Git repositories. The Fleet instances of Distributed Cloud Container Platform for Kubernetes (ACK One) are integrated with Argo CD and support multi-cluster management. The Fleet instances allow you to implement continuous delivery based on GitOps. This ensures high availability and meets requirements such as distributing system components across clusters. This topic describes GitOps and ACK One GitOps.

Introduction to GitOps

In the GitOps framework, applications in Kubernetes clusters are deployed only by using Git repositories. GitOps continuously adjusts applications in Kubernetes clusters until the applications reach the expected state in the application templates in the source Git repositories.

Benefits of GitOps

  • Ease of learning: Git is easy to learn and integrate.

  • High reliability: GitOps uses Git repositories as the only source of application templates and provides version control, fast rollbacks, and auditing.

  • High security: No permissions on Kubernetes clusters are required for developers to use GitOps. This ensures cluster security. To use GitOps, only permissions on Git repositories are required.

  • Continuous deployment: Applications in Kubernetes clusters are automatically updated based on the source Git repositories. This implements continuous deployment for applications in Kubernetes clusters.

GitOps architecture

image

Introduction to ACK One GitOps

The Fleet instances of Distributed Cloud Container Platform for Kubernetes (ACK One) are integrated with open source Argo CD to implement GitOps-based continuous delivery for applications. Argo CD is an open source Cloud Native Computing Foundation (CNCF) project and a continuous delivery tool that adopts the declarative configuration method of GitOps. Argo CD is integrated with Git repositories and Helm repositories, and provides a full-featured UI. Argo CD is implemented as a Kubernetes controller that continuously monitors applications and synchronizes applications with their source Git repositories. For more information about Argo CD, see Argo CD.

Benefits of ACK One GitOps

  • ACK One GitOps is integrated with Argo CD and provides a CLI and a UI that offer the same user experience as the CLI and the UI provided by Argo CD.

  • ACK One GitOps provides a separate Argo CD console that is integrated with Alibaba Cloud single sign-on (SSO) and supports permission control among users.

  • ACK One GitOps supports application distribution across clusters. Argo CD is automatically enabled for the clusters that are associated with the Fleet instances of ACK One. The associated clusters use GitOps for application distribution.

  • ACK One GitOps supports Argo CD ApplicationSet to improve the user experience of application distribution across clusters.

  • ACK One GitOps is O&M-free and provides out-of-the-box features.

ACK One GitOps architecture

image

Features

Name

Description

References

Work with GitOps

Enable GitOps on a Fleet instance of ACK One to deploy a multi-cluster application.

Work with GitOps

Manage users based on GitOps

The types of users that are supported by ACK One GitOps and how to grant permissions to a user.

User management

Log on to the GitOps system

Log on to the GitOps system.

Log on to the GitOps system

Manage source Git repositories

Add a Git repository to or remove a Git repository from the GitOps system, and view Git repositories that are added to the GitOps system.

Repository management

Use GitOps to manage ACK clusters

Use the GitOps system to manage ACK clusters.

Use GitOps to manage ACK clusters

Manage applications based on GitOps

Use the GitOps system to manage applications.