简介
Argo CD是用于Kubernetes的声明性GitOps连续交付工具。
关于 GitOps 相关的概念这里不做更多介绍,本文主要以实战为主,通过一个完整的使用示例,希望对大家实践 GitOps 有所帮助。
接来下就开干…
安装Argo CD
1、根据官网文档,其实安装很简单,两条命令搞定
kubectl create namespace argocd
kubectl apply -n argocd -f https://raw.githubusercontent.com/argoproj/argo-cd/stable/manifests/install.yaml
这里说明下,如果有私有仓库,可以先把需要的镜像下载下来传到自己的私有仓库,要不然可能会因为网络原因部署很慢甚至不成功,
a、需要如下四个镜像,我先下载到自己的仓库了。
image: hub.kubeops.net/dev/dex:v2.25.0
image: hub.kubeops.net/dev/haproxy:2.0.4
image: hub.kubeops.net/dev/argocd:latest
image: hub.kubeops.net/dev/redis:5.0.10-alpine
b、我这里直接修改argocd的Service类型为NodePort,方便测试。线上环境建议配置Ingress
2、部署完成如下所示
[root@ argo]# kubectl get po -n argocd
NAME READY STATUS RESTARTS AGE
argocd-application-controller-0 1/1 Running 0 12d
argocd-dex-server-58ff66cff7-nmgh5 1/1 Running 0 12d
argocd-redis-ha-haproxy-68c68f5664-bjp9b 1/1 Running 0 12d
argocd-redis-ha-haproxy-68c68f5664-crttm 1/1 Running 0 12d
argocd-redis-ha-haproxy-68c68f5664-xzckx 1/1 Running 0 12d
argocd-redis-ha-server-0 2/2 Running 0 12d
argocd-redis-ha-server-1 2/2 Running 0 12d
argocd-redis-ha-server-2 2/2 Running 0 12d
argocd-repo-server-5f665db888-4pjzl 1/1 Running 0 12d
argocd-repo-server-5f665db888-vkvc2 1/1 Running 0 12d
argocd-server-78798c96c8-hpn4q 1/1 Running 0 12d
argocd-server-78798c96c8-j7frq