安装ArgoCD
参考:https://argo-cd.readthedocs.io/en/stable/getting_started/
创建命名空间
kubectl create namespace argocd
下载install.yml
curl -L https://raw.githubusercontent.com/argoproj/argo-cd/stable/manifests/install.yaml > argocd.yaml
修改镜像地址
先查看需要的镜像
cat argocd.yaml | grep image:
其中 ghcr.io/dexidp/dex:v2.38.0
和 redis:7.0.15-alpine
镜像国内服务下载。需做如下更改
swr.cn-north-4.myhuaweicloud.com/ddn-k8s/ghcr.io/dexidp/dex:v2.38.0
swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/redis:7.0.15-alpine
安装ArgoCD
kubectl apply -n argocd -f argocd.yaml
查看pod的启动情况
kubectl get pod -n argocd -o wide
操作ArgoCD
端口转发配置
默认情况下,ArgoCD服务不对外暴露服务,可以通过LoadBalancer或者NodePort类型的Service、Ingress、kubectl端口转发等方式将ArgoCD服务发布到Kubernetes集群外部。
LoadBalancer模式
将argocd-server服务类型更改为LoadBalancer
kubectl patch svc argocd-server -n argocd -p '{"spec": {"type": "LoadBalancer"}}'
Kubectl端口转发也可用于连接 API 服务器,而无需暴露服务。
kubectl port-forward svc/argocd-server -n argocd 8080:443
kubectl port-forward --address 0.0.0.0 svc/argocd-server -n argocd 8443:443 &
kubectl port-forward -h #查看port-forward命令
#删除转发需要kill
ps aux | grep port-forward
kill -p id
NodePort 模式
kubectl patch svc argocd-server -n argocd -p '{"spec": {"type": "NodePort"}}'
kubectl get svc -n argocd
因为没有使用Ingress的方式暴露访问域名,是使用IP+PORT的方式暴露访问地址。可以看到,argocd-server的类型已经是NodePort了,它生成了一个随机端口31436。所以ArgoCD的访问地址是:https://10.0.2.12:31436/ (10.0.2.12是node节点的ip地址)
获取admin用户的密码
kubectl get secret -n argocd argocd-initial-admin-secret -o yaml
得到的密码是经过Base64编码的,需要进行解码
echo aHpOU2ZMbVcweXpjMVF4SQ== | base64 -d
或者直接使用以下一条命令搞掂
kubectl -n argocd get secret argocd-initial-admin-secret -o jsonpath="{.data.password}" | base64 -d
访问ArgoCD
https://127.0.0.1:8080
ArgoCD CLI工具安装
参考:https://argo-cd.readthedocs.io/en/stable/cli_installation/
安装
curl -sSL -o argocd-linux-amd64 https://github.com/argoproj/argo-cd/releases/latest/download/argocd-linux-amd64
mv argocd-linux-amd64 argocd
chmod 755 argocd
mv argocd /usr/bin
查看版本
argocd version
使用ArgoCD CLI工具查看admin用户密码
argocd admin initial-password -n argocd
//blog.csdn.net/cr7258/article/details/122028096