Argo CD系列视频图文版之安装 argocd 并运行示例
开篇
本期视频,我们来在试验环境中安装 ArgoCD,然后跑个官方 demo,带大家初步感受下 ArgoCD 的功能。
配套视频
安装 ArgoCD
ArgoCD 的部署,也可以通过官方提供的 Helm Chart 直接部署,但为了让大家了解更多的底层逻辑,咱们直接使用官方提供的配置清单安装。
1. 应用 ArgoCD 配置清单
kubectl create namespace argocd kubectl apply -n argocd -f https://raw.githubusercontent.com/argoproj/argo-cd/stable/manifests/install.yaml2. 查看部署配置
kubectl get deploy -n argocdNAME READY UP-TO-DATE AVAILABLE AGE argocd-dex-server 1/1 1 1 46m argocd-redis 1/1 1 1 46m argocd-repo-server 1/1 1 1 46m argocd-server 1/1 1 1 46m3. 配置 ingress
apiVersion: networking.k8s.io/v1 kind: Ingress metadata:name: argocd-server-ingressnamespace: argocdannotations:kubernetes.io/tls-acme: "true"kubernetes.io/ingress.class: nginxnginx.ingress.kubernetes.io/force-ssl-redirect: "true"nginx.ingress.kubernetes.io/ssl-passthrough: "true"nginx.ingress.kubernetes.io/backend-protocol: "HTTPS" spec:rules:- host: monday.automan.funhttp:paths:- path: /pathType: Prefixbackend:service:name: argocd-serverport:name: httpstls:- hosts:- monday.automan.funsecretName: argocd-secret4. 查看服务器导出地址
kubectl get ingress -n argocdNAME CLASS HOSTS ADDRESS PORTS AGE argocd-server-ingress <none> monday.automan.fun 10.10.14.91 80, 443 3m18s5.配置 hosts 解析域名
10.10.14.91 monday.automan.fun配置好后,访问 monday.automan.fun 即可进入登录页。
注:细心的同学可能已经注意到,虽然 ingress 中配置了 https 协议,但浏览器仍然显示链接非安全。那是因为 argocd-secret 中存储的证书,是 ArgoCD 生成的自签证书,浏览器不信任。想要获得安全连接,可以使用浏览器信任的域名证书替换即可。
获取管理员密码
# admin 用户密码 kubectl -n argocd get secret argocd-initial-admin-secret -o jsonpath="{.data.password}" | base64 -d部署 demo
1.创建应用
argocd-example-apps.git[1]
基于 ArgoCD 官方示例仓库,部署 kustomize-guestbook 到 guestbook 命名空间
“注: 如果目标命名空间不存在,需勾选 AUTO CREATE NAMESPACE
”2.导出应用服务
修改 guestbook 命令空间下的 service 类型,由 ClusterIp 变更为 NodePort
apiVersion: v1 kind: Service metadata:annotations:kubectl.kubernetes.io/last-applied-configuration: |{"apiVersion":"v1","kind":"Service","metadata":{"annotations":{},"labels":{"app.kubernetes.io/instance":"guestbook"},"name":"kustomize-guestbook-ui","namespace":"guestbook"},"spec":{"ports":[{"port":80,"targetPort":80}],"selector":{"app":"guestbook-ui"}}}creationTimestamp: "2021-09-09T11:52:45Z"labels:app.kubernetes.io/instance: guestbookname: kustomize-guestbook-uinamespace: guestbookresourceVersion: "492594"selfLink: /api/v1/namespaces/guestbook/services/kustomize-guestbook-uiuid: 40c30cd5-5743-4c86-a2af-3338d9d0a2d0 spec:clusterIP: 10.233.5.15ports:- port: 80protocol: TCPtargetPort: 80selector:app: guestbook-uisessionAffinity: Nonetype: NodePort # 修改此处导出服务后,即可通过主机节点IP 地址加端口访问应用服务。
“http://10.10.17.90:30021
”结束语
ArgoCD 的安装部署,看似很麻烦,实际上整个思路还是比较清晰的。ArgoCD 的 UI 是极简主义风格的,一些管理员功能未在前端中体现,也是出于安全的角度考虑。
下期视频,我将带领大家在 github 上创建仓库,咱们自己动手,跑个样例出来。
遇到问题不要慌,我们还有社区支持。最后不要忘记点赞哦 !!!
参考资料
[1]
argocd-example-apps.git: https://github.com/argoproj/argocd-example-apps.git
总结
以上是生活随笔为你收集整理的Argo CD系列视频图文版之安装 argocd 并运行示例的全部内容,希望文章能够帮你解决所遇到的问题。
- 上一篇: 华为认证HCNA-IoT物联网工程师培训
- 下一篇: 创新谈-汪海