👏

我流お家クラウドを構築する【2】~ArgoCDをセットアップする

2023/08/16に公開

前回に引き続き、お家クラウドを構築しようと思う。
今回はCDの要になるArgoCDを前回作ったクラスタ上に作っていこうと思う。

ArgoCDのインストールをする

参考にするのは公式サイトです。

ArgoCDのインストール

# argoCDという名前の名前空間が作られる
kubectl create namespace argocd
# マニフェストからargoCDをデプロイする
kubectl apply -n argocd -f https://raw.githubusercontent.com/argoproj/argo-cd/stable/manifests/install.yaml

もし、UI、SSO、マルチクラスター機能を使わない場合は、コアArgo CD コンポーネントのみを以下のコマンドでデプロイできる

kubectl apply -n argocd -f https://raw.githubusercontent.com/argoproj/argo-cd/stable/manifests/core-install.yaml

今回はInstall.yamlの値を少し変えたいのでinstall.yamlを取得する(もっといい方法あるかも)

wget https://raw.githubusercontent.com/argoproj/argo-cd/stable/manifests/install.yaml

## ArgoCD のWebUIにアクセスする
デフォルトでArgoCD APIサーバは外部に公開されてないので、NodePortを使ってArgoCDを公開する

以下のコマンドでWebUIを提供しているDeploymentのyamlを生成する
```bash
kubectl expose deployment argocd-server -n argocd --type=NodePort --dry-run=client -o yaml > kubernetes-argocd-nodeport.yaml
nano kubernetes-argocd-nodeport.yaml

次のようにkubernetes-argocd-nodeport.yamlを編集する

kubernetes-argocd-nodeport.yaml apiVersion
kind: Service
metadata:
  name: self-rgocd-server-nodeport
  namespace: argocd
spec:
  ports:
  - name: port-1
    port: 8080
    protocol: TCP
    targetPort: 8080
    nodePort: 30800
  selector:
    app.kubernetes.io/name: argocd-server
  type: NodePort

最後に変更したyamlを適用させる

kubectl apply -f kubernetes-argocd-nodeport.yaml

パスワードをあらかじめ確認しておく

 kubectl -n argocd get secret/argocd-initial-admin-secret -o jsonpath="{.data.password}" | base64 -d; echo

返された値をあらかじめコピっておく。
任意のクライアントでノードのIPアドレスとportを指定する

Username:admin
Password:先のパスワード

参考 https://qiita.com/ohtsuka-shota/items/a6b7a68150426011c7c1

サンプルとかは省略します

次回:Harborのセットアップ

Discussion