ArgoCD集成部署到Kubernetes

本文详细介绍了如何在Kubernetes1.23.3环境中安装和配置ArgoCD2.3.3,包括创建命名空间、部署ArgoCD服务器、设置NodePort暴露、配置用户权限,以及使用GitOps进行应用的声明式定义、部署和生命周期管理。通过示例展示了从代码变更到自动部署的过程,体现了ArgoCD的强大功能。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1:环境

kubernetes 1.23.3
ArgoCD 2.3.3

2:ArgoCD介绍

Argo CD is a declarative, GitOps continuous delivery tool for Kubernetes. Argo CD是一个基于Kubernetes的声明式的GitOps工具。 那么,什么是GitOps呢? GitOps是以Git为基础,使用CI/CD来更新运行在云原生环境的应用,它秉承了DevOps的核心理念--“构建它并交付它(you built it you ship it)”。

 

它的优势总结如下:
1:应用定义、配置和环境信息是声明式的,并且可以进行版本控制;
2:应用部署和生命周期管理是全自动化的,是可审计的,清晰易懂;
3:Argo CD是一个独立的部署工具,支持对多个环境、多个Kubernetes集群上的应用进行统一部署和管理

3:部署ArgoCD 

# 安装很简单,不过在实际使用中需要对数据进行持久化。

1:创建一个命名空间存放argocd的Pod
[root@k8s-master ~]# kubectl create ns argocd
namespace/argocd created

2:通过官方命令部署(镜像在国外,需要梯子,或者加速也行)
[root@k8s-master ~]# kubectl apply -n argocd -f https://raw.githubusercontent.com/argoproj/argo-cd/stable/manifests/install.yaml

3:查看部署状态
[root@k8s-master ~]# kubectl get pod,svc -n argocd
NAME                                                    READY   STATUS    RESTARTS   AGE
pod/argocd-application-controller-0                     1/1     Running   0          60s
pod/argocd-applicationset-controller-79f97597cb-mwzld   1/1     Running   0          62s
pod/argocd-dex-server-6fd8b59f5b-zx76f                  1/1     Running   0          62s
pod/argocd-notifications-controller-5549f47758-2rgjk    1/1     Running   0          61s
pod/argocd-redis-79bdbdf78f-xhd8f                       1/1     Running   0          61s
pod/argocd-repo-server-5569c7b657-t5ftv                 1/1     Running   0          61s
pod/argocd-server-664b7c6878-9tjlh                      1/1     Running   0          61s

4:因为需要访问,我们可以通过NodePort或者Ingress暴露 argocd-server
# 我这里使用 NodePort
# 但是我们需要修改一下argocd-server的暴露方式为NodePort
[root@k8s-master argocd]# kubectl edit svc -n argocd argocd-server
......
  selector:
    app.kubernetes.io/name: argocd-server
  sessionAffinity: None
  type: NodePort
status:
  loadBalancer: {}
[root@k8s-master argocd]# kubectl get svc -n argocd
NAME                                      TYPE        CLUSTER-IP      EXTERNAL-IP   PORT(S)                      AGE
argocd-applicationset-controller          ClusterIP   200.1.73.127    <none>        7000/TCP                     15m
argocd-dex-server                         ClusterIP   200.1.77.207    <none>        5556/TCP,5557/TCP,5558/TCP   15m
argocd-metrics                            ClusterIP   200
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值