K8S安装argocd

1:ArgoCD介绍
Argo CD is a declarative, GitOps continuous delivery tool for Kubernetes. Argo CD是一个基于Kubernetes的声明式的GitOps工具。 

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

2.实验环境:

[root@k8s-master ~]# kubectl get no
NAME         STATUS   ROLES                  AGE     VERSION
k8s-master   Ready    control-plane,master   5d17h   v1.23.0
k8s-node01   Ready    <none>                 5d17h   v1.23.0
k8s-node02   Ready    <none>                 5d17h   v1.23.0
[root@k8s-master ~]# kubectl get no
NAME         STATUS   ROLES                  AGE     VERSION
k8s-master   Ready    control-plane,master   5d17h   v1.23.0
k8s-node01   Ready    <none>                 5d17h   v1.23.0
k8s-node02   Ready    <none>                 5d17h   v1.23.0
[root@k8s-master ~]# docker images
REPOSITORY                                                        TAG             IMAGE ID       CREATED         SIZE
quay.io/argoproj/argocd                                           v2.11.3         4a29ef67566a   8 weeks ago     460MB
ghcr.io/dexidp/dex                                                v2.38.0         f94213d142aa   6 months ago    98.3MB
redis                                                             7.0.14-alpine   6642e4fb6e9b   7 months ago    33.2MB
calico/kube-controllers                                           v3.25.0         5e785d005ccc   18 months ago   71.6MB
calico/cni                                                        v3.25.0         d70a5947d57e   18 months ago   198MB
calico/node                                                       v3.25.0         08616d26b8e7   18 months ago   245MB
calico/kube-controllers                                           v3.23.1         4d33632489a4   2 years ago     135MB
calico/cni                                                        v3.23.1         90d97aa939bb   2 years ago     262MB
calico/node                                                       v3.23.1         fbfd04bbb7f4   2 years ago     219MB
registry.aliyuncs.com/google_containers/kube-apiserver            v1.23.0         e6bf5ddd4098   2 years ago     135MB
registry.aliyuncs.com/google_containers/kube-scheduler            v1.23.0         56c5af1d00b5   2 years ago     53.5MB
registry.aliyuncs.com/google_containers/kube-proxy                v1.23.0         e03484a90585   2 years ago     112MB
registry.aliyuncs.com/google_containers/kube-controller-manager   v1.23.0         37c6aeb3663b   2 years ago     125MB
registry.aliyuncs.com/google_containers/etcd                      3.5.1-0         25f8c7f3da61   2 years ago     293MB
kubernetesui/dashboard                                            v2.4.0          72f07539ffb5   2 years ago     221MB
registry.aliyuncs.com/google_containers/coredns                   v1.8.6          a4ca41631cc7   2 years ago     46.8MB
registry.aliyuncs.com/google_containers/pause                     3.6             6270bb605e12   2 years ago     683kB
kubernetesui/metrics-scraper                                      v1.0.7          7801cfc6d5c0   3 years ago     34.4MB

关于argocd介质详见:

链接: https://pan.baidu.com/s/1ho-ezf6GUzllOHGQObQeQA?pwd=u8up 提取码: u8up

1:创建一个命名空间存放argocd的Pod
[root@k8s-master ~]# kubectl create ns argocd
namespace/argocd created
 
2:通过本地方式部署
[root@k8s-master ~]# kubectl apply -n argocd -f install.yaml

[root@k8s-master ~]# kubectl get pod,svc -n argocd
NAME                                                    READY   STATUS    RESTARTS      AGE
pod/argocd-application-controller-0                     1/1     Running   1 (10h ago)   10h
pod/argocd-applicationset-controller-6c9ffcb978-5f4tv   1/1     Running   1 (10h ago)   10h
pod/argocd-dex-server-dbccdf8d8-ngfdr                   1/1     Running   1 (10h ago)   10h
pod/argocd-notifications-controller-6d7b75d9b-5j7nn     1/1     Running   1 (10h ago)   10h
pod/argocd-redis-78ff6464dd-6nklb                       1/1     Running   1 (10h ago)   10h
pod/argocd-repo-server-6d9474d5c6-4jh8s                 1/1     Running   1 (10h ago)   10h
pod/argocd-server-5cdbb4db49-f2245                      1/1     Running   1 (10h ago)   10h

NAME                                              TYPE        CLUSTER-IP       EXTERNAL-IP   PORT(S)                      AGE
service/argocd-applicationset-controller          ClusterIP   10.108.56.98     <none>        7000/TCP,8080/TCP            10h
service/argocd-dex-server                         ClusterIP   10.100.5.12      <none>        5556/TCP,5557/TCP,5558/TCP   10h
service/argocd-metrics                            ClusterIP   10.108.45.43     <none>        8082/TCP                     10h
service/argocd-notifications-controller-metrics   ClusterIP   10.111.144.10    <none>        9001/TCP                     10h
service/argocd-redis                              ClusterIP   10.107.130.208   <none>        6379/TCP                     10h
service/argocd-repo-server                        ClusterIP   10.109.42.152    <none>        8081/TCP,8084/TCP            10h
service/argocd-server                             NodePort    10.109.160.22    <none>        80:30230/TCP,443:32036/TCP   10h
service/argocd-server-metrics                     ClusterIP   10.106.80.200    <none>        8083/TCP                     10h

使用NodePort方式暴露端口

[root@k8s-master argocd]# kubectl edit svc -n argocd argocd-server
# Please edit the object below. Lines beginning with a '#' will be ignored,
# and an empty file will abort the edit. If an error occurs while saving this file will be
# reopened with the relevant failures.
#
apiVersion: v1
kind: Service
metadata:
  annotations:
    kubectl.kubernetes.io/last-applied-configuration: |
      {"apiVersion":"v1","kind":"Service","metadata":{"annotations":{},"labels":{"app.kubernetes.io/component":"server","app.kubernetes.io/name":"argocd-server","app.kubernetes.io/part-of":"argocd"},"name":"argocd-server","namespace":"argocd"},"spec":{"ports":[{"name":"http","port":80,"protocol":"TCP","targetPort":8080},{"name":"https","port":443,"protocol":"TCP","targetPort":8080}],"selector":{"app.kubernetes.io/name":"argocd-server"}}}
  creationTimestamp: "2024-08-02T13:53:28Z"
  labels:
    app.kubernetes.io/component: server
    app.kubernetes.io/name: argocd-server
    app.kubernetes.io/part-of: argocd
  name: argocd-server
  namespace: argocd
  resourceVersion: "59196"
  uid: 9bf21f42-9cf8-446a-81b2-2ec236369914
spec:
  clusterIP: 10.109.160.22
  clusterIPs:
  - 10.109.160.22
  externalTrafficPolicy: Cluster
  internalTrafficPolicy: Cluster
  ipFamilies:
  - IPv4
  ipFamilyPolicy: SingleStack
  ports:
  - name: http
    nodePort: 30230
    port: 80
    protocol: TCP
    targetPort: 8080
  - name: https
    nodePort: 32036
    port: 443
    protocol: TCP
    targetPort: 8080
  selector:
    app.kubernetes.io/name: argocd-server
  sessionAffinity: None
  type: NodePort
status:
  loadBalancer: {}

获取admin的密码

[root@k8s-master ~]# echo $(kubectl get secret -n argocd argocd-initial-admin-secret -o yaml | grep password | awk -F: '{print $2}') | base64 -d
dlhJwUhDI0pAkIYO[root@k8s-master ~]#

访问地址:https://192.168.56.201:32036/

用户admin,密码

修改密码:

密码修改为admin123

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值