Argocd学习

argocd官网文档链接
ArgoCD官网文档

在K8S集群使用argocd命令将集群添加到argcd的cluster列表中
argocd cluster add kubernetes-admin@iamdemo --name iamdemo --kubeconfig /root/.kube/config

image

遇到一个添加失败的问题,通过修改/root/.kube/config的server: https://iamdemo.tp-link.com:6443,原来是https://127.0.0.1:6443
添加后可以通过
argocd cluster list查看argocd对接的集群
argocd proj list 查看project

image

image

Project概念:提供了应用程序的逻辑分组
(1)限制可能部署的内容,如限制Git源仓库
(2)限制应用可以部署到的集群和命名空间
(3)可以限制部署或者不能部署的对象类型,RBAC,Daemonsets,Networkpolicy等
每一个应用程序都需要属于一个项目,default项目是自动创建的,如果没有也可以在UI界面之自己创建,default项目允许从任何Git仓库,部署任何资源到任何集群,也可以修改
也可以通过命令的形式创建项目

argocd proj create myproject -d https://kubernetes.default.svc,mynamespace -s https://github.com/argoproj/argocd-example-apps.git

ArgoCD中增加Git源仓库可以在UI界面进行操作
git仓库可以通过ssh/https连接
http的方式需要写用户和密码,可以跳过Skip server verification来源检验
ssh的方式需要添加private key

image

通过Gitlab+ArgoCD部署一个基础Nginx服务

在Gitlab仓库创建一个K8S仓库,http://dbatest1.ip.tp-link.com/fujianjun/k8s_project2.git
yaml文件不能放在仓库第一层,需要在第一层创建文件夹然后文件放文件夹里,因为在ArgoCD新增APP时需要填写Path路径,这里创建了一个test目录,deployment.yaml文件放在test目录下

image

添加Webhooks钩子

因为ArgoCD默认的自动同步Git仓库时间是180s,三分钟,如果想要实时进行同步需要在相应的Git仓库添加Webhooks
argocd的webhooks接口为argocd的ip+端口/api/webhook

image
测试通过200即可
image

posted @ 2024-02-28 14:31  付同學  阅读(112)  评论(0)    收藏  举报