云原生下基于K8S声明式GitOps持续部署工具ArgoCD实战-上

@
目录

  • 概述
    • 定义
    • 工作原理
    • 主要组件
    • 核心概念
  • 环境准备
    • 概述
    • 安装Kubekey
    • 创建K8S
    • 安装K9S
    • OpenLB
    • 安装ArgoCD
    • 安装 ArgoCD CLI
    • 从Git库中创建一个应用程序
概述定义
ArgoCD 官网地址 https://argoproj.github.io/cd
ArgoCD 最新官网文档 https://argo-cd.readthedocs.io/en/stable/
ArgoCD GitHub源码地址 https://github.com/argoproj/argo-cd
Argo官网 https://argoproj.github.io/(用Kubernetes做更多的事情,用于Kubernetes运行工作流、管理集群和正确执行giitops的开源工具)
Argo CD是Kubernetes的声明式、GitOps连续交付工具 。Argo CD是由Intuit主导的开源项目,是Argo项目集合中的一个,Argo项目集合还包括Argo Workflow、Argo Rollout、Argo Event等项目 。
Argo CD 遵循 GitOps 模式,使用 Git 仓库作为定义所需应用程序状态的真实来源,Argo CD 支持多种 Kubernetes 清单:
  • kustomize
  • helm charts
  • ksonnet applications
  • jsonnet files

云原生下基于K8S声明式GitOps持续部署工具ArgoCD实战-上

文章插图
Argo CD主要优势有:
  • 应用程序定义、配置和环境应该是声明性的和版本控制的 。
  • 应用程序部署和生命周期管理应该是自动化的、可审计的,并且容易理解 。
  • Argo CD是一个独立的部署工具,支持对多个环境、多个Kubernetes集群上的应用进行统一部署和管理 。
工作原理Argo CD 是通过一个 Kubernetes 控制器来实现的,它持续 watch 正在运行的应用程序并将当前的实时状态与所需的目标状态( Git 存储库中指定的)进行比较 。已经部署的应用程序的实际状态与目标状态有差异,则被认为是 状态,Argo CD 会报告显示这些差异,同时提供工具来自动或手动将状态同步到期望的目标状态 。在 Git 仓库中对期望目标状态所做的任何修改都可以自动应用反馈到指定的目标环境中去 。
云原生下基于K8S声明式GitOps持续部署工具ArgoCD实战-上

文章插图
主要组件