ks-installer 로 kubesphere 설치하기

cloud2000·2024년 1월 1일

설치

이미 존재하는 k8s cluster에 ks-installer로 kubesphere를 설치 할 수 있다.
설치하는 방법은 아래와 같다. 먼저 kubeadm으로 설치된 클러스터에서 kubesphere가 etcd를 모니터링 하도록 secret을 생성한다.

$ kubectl -n kubesphere-monitoring-system create secret generic kube-etcd-client-certs  \
--from-file=etcd-client-ca.crt=/etc/kubernetes/pki/etcd/ca.crt  \
--from-file=etcd-client.crt=/etc/kubernetes/pki/etcd/healthcheck-client.crt  \
--from-file=etcd-client.key=/etc/kubernetes/pki/etcd/healthcheck-client.key

다음으로 kubesphere 관련 yaml파일을 실행하고 kube-installer pod의 log를 확인한다.

$ kubectl apply -f https://github.com/kubesphere/ks-installer/releases/download/v3.3.0/kubesphere-installer.yaml
$ kubectl apply -f https://github.com/kubesphere/ks-installer/releases/download/v3.3.0/cluster-configuration.yaml

$ kubectl logs -n kubesphere-system $(kubectl get pod -n kubesphere-system -l app=ks-installer -o jsonpath='{.items[0].metadata.name}') -f

$ kubectl get svc/ks-console -n kubesphere-system

브라우저로 http://IP:30880에 기본 계정인 admin/P@88w0rd로 로그인 한다.

소스파악

각 addon들의 repostory 주소와 tag는 ks-installer/roles/download/defaults/main.yml 에 정의되어 있다.

다만, metrics-server의 tag가 아래와 같이 v0.4.2로 고정되어 있어서 arm 아키텍처일 경우에는 docker image의 오류로 실행되지 않으므로 배포 후 deployment를 v0.4.2-arm64으로 수정하여 기동되게 했다 ㅠㅠ

ducker hub에서 metrics server tag 조회

metrics-server v0.4.2

#metrics:
metrics_server_repo: "{{ base_repo }}{{ namespace_override | default('kubesphere') }}/metrics-server"
metrics_server_tag: v0.4.2

kubekey의 plugin은 cmd/kk/pkg/plugins package 하위로 dns, network, storage가 있다. dns는 coredns와 nodelocaldns이며, network은 calico, cillum, flannel, hybridnet, multus등이 있고, storage는 openeb가 있다.

profile
클라우드쟁이

0개의 댓글