尝试构建Argo CD的故事
这是什么?
以下是使用kubectl在argocd中创建的方法,作为备忘录进行记录。
做法 (yà fǎ)
创建命名空间
# kubectl create namespace argocd
如果要手动创建,请使用上述命令,在kustomization.yaml中批量创建时,您可以创建类似namespace.yaml的文件。
kind: Namespace
apiVersion: v1
metadata:
name: argocd
labels:
name: argocd
安装创建文件时需要的文件。
公式说明中提到有两种类型的安装文件。
这次我们采用了Multi-Tenant,并下载了所述的install.yaml文件。
然后将文件名更改为argocd-install.yaml。
将文件放置
将下载的文件放置在类似以下目录结构的位置。
# tree
.
├── argocd-install.yaml
├── namespace.yaml
└── kustomization.yaml
apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
namespace: argocd
resources:
- namespace.yaml
- https://raw.githubusercontent.com/argoproj/argo-cd/v2.0.4/manifests/ha/install.yaml
移動到要执行的目录,执行以下命令。
# kubectl apply -k .
customresourcedefinition.apiextensions.k8s.io/applications.argoproj.io unchanged
customresourcedefinition.apiextensions.k8s.io/appprojects.argoproj.io unchanged
serviceaccount/argocd-application-controller created
serviceaccount/argocd-dex-server created
serviceaccount/argocd-redis-ha created
serviceaccount/argocd-redis-ha-haproxy created
serviceaccount/argocd-server created
role.rbac.authorization.k8s.io/argocd-application-controller created
role.rbac.authorization.k8s.io/argocd-dex-server created
role.rbac.authorization.k8s.io/argocd-redis-ha created
role.rbac.authorization.k8s.io/argocd-redis-ha-haproxy created
role.rbac.authorization.k8s.io/argocd-server created
clusterrole.rbac.authorization.k8s.io/argocd-application-controller unchanged
clusterrole.rbac.authorization.k8s.io/argocd-server unchanged
rolebinding.rbac.authorization.k8s.io/argocd-application-controller created
rolebinding.rbac.authorization.k8s.io/argocd-dex-server created
rolebinding.rbac.authorization.k8s.io/argocd-redis-ha created
rolebinding.rbac.authorization.k8s.io/argocd-redis-ha-haproxy created
rolebinding.rbac.authorization.k8s.io/argocd-server created
clusterrolebinding.rbac.authorization.k8s.io/argocd-application-controller unchanged
clusterrolebinding.rbac.authorization.k8s.io/argocd-server unchanged
configmap/argocd-cm created
configmap/argocd-gpg-keys-cm created
configmap/argocd-rbac-cm created
configmap/argocd-redis-ha-configmap created
configmap/argocd-redis-ha-health-configmap created
configmap/argocd-ssh-known-hosts-cm created
configmap/argocd-tls-certs-cm created
secret/argocd-secret created
service/argocd-dex-server created
service/argocd-metrics created
service/argocd-redis-ha created
service/argocd-redis-ha-announce-0 created
service/argocd-redis-ha-announce-1 created
service/argocd-redis-ha-announce-2 created
service/argocd-redis-ha-haproxy created
service/argocd-repo-server created
service/argocd-server created
service/argocd-server-metrics created
deployment.apps/argocd-dex-server created
deployment.apps/argocd-redis-ha-haproxy created
deployment.apps/argocd-repo-server created
deployment.apps/argocd-server created
statefulset.apps/argocd-application-controller created
statefulset.apps/argocd-redis-ha-server created
networkpolicy.networking.k8s.io/argocd-application-controller-network-policy created
networkpolicy.networking.k8s.io/argocd-dex-server-network-policy created
networkpolicy.networking.k8s.io/argocd-redis-ha-proxy-network-policy created
networkpolicy.networking.k8s.io/argocd-redis-ha-server-network-policy created
networkpolicy.networking.k8s.io/argocd-repo-server-network-policy created
networkpolicy.networking.k8s.io/argocd-server-network-policy created
一旦执行,就会产生各种东西,如上所示。
确认是否已经制作完成。
# kubectl pod -n argocd
NAME READY STATUS RESTARTS AGE
argocd-application-controller-0 0/1 ContainerCreating 0 24s
argocd-dex-server-76ff776f97-vln62 0/1 Init:0/1 0 24s
argocd-redis-ha-haproxy-5886787f8b-nrd5h 0/1 Init:0/1 0 24s
argocd-redis-ha-haproxy-5886787f8b-r7qrp 0/1 Pending 0 24s
argocd-redis-ha-haproxy-5886787f8b-s587f 0/1 Pending 0 24s
argocd-redis-ha-server-0 0/2 Init:0/1 0 24s
argocd-repo-server-6d859bdccf-b6pxw 0/1 ContainerCreating 0 24s
argocd-repo-server-6d859bdccf-k2xqr 0/1 Pending 0 24s
argocd-server-65957f79f6-c2t2r 0/1 ContainerCreating 0 24s
argocd-server-65957f79f6-kf9hk 0/1 Pending 0 24s
# kubectl get svc -n argocd
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
argocd-dex-server ClusterIP 10.108.72.243 <none> 5556/TCP,5557/TCP,5558/TCP 36m
argocd-metrics ClusterIP 10.101.176.100 <none> 8082/TCP 36m
argocd-redis-ha ClusterIP None <none> 6379/TCP,26379/TCP 36m
argocd-redis-ha-announce-0 ClusterIP 10.97.211.150 <none> 6379/TCP,26379/TCP 36m
argocd-redis-ha-announce-1 ClusterIP 10.96.95.101 <none> 6379/TCP,26379/TCP 36m
argocd-redis-ha-announce-2 ClusterIP 10.109.42.3 <none> 6379/TCP,26379/TCP 36m
argocd-redis-ha-haproxy ClusterIP 10.109.225.203 <none> 6379/TCP 36m
argocd-repo-server ClusterIP 10.110.225.87 <none> 8081/TCP,8084/TCP 36m
argocd-server ClusterIP 10.107.103.155 <none> 80/TCP,443/TCP 36m
argocd-server-metrics ClusterIP 10.106.125.117 <none> 8083/TCP 36m
6. 我们试试是否连接成功吧。 ba.)
确认通过端口转发连接到本地的argocd。
# kubectl port-forward svc/argocd-server -n argocd 8080:443
7. 使用浏览器登录

对此的看法/对此的感受/我的想法/我的体会
看公式上写了很多东西,仔细阅读是很好的。。。