쿠버네티스 입문 - 2. 쿠버네티스 + 대시보드 설치
docker, kubernetes, registry

도커 데스크톱이 있는 경우

  • enable kubernetes 체크박스를 체크합니다. kube

도커 데스크톱 없이 설치하는 것은 나중에 컴퓨터 재설치하면 써보겠습니다.

  • 필자는 이미 도커데스크톱으로 쿠버네티스를 설치했기에… 충돌이 나서 나중에 다시 작성해보겠습니다.

Kubernetes 계정추가

# 아이디는 saro 암호는 1234라고 가정하고 진행해보겠습니다.


kubectl create secret generic saro --from-literal=password=1234

# clusterrole view, edit, admin 등등이 있습니다.
kubectl create clusterrolebinding saro-binding --clusterrole=edit --user=saro

설정변경

kubectl config view
# 클러스터 설정:
kubectl config set-cluster production-cluster --server=https://kc.saro.me
# 컨텍스트 설정:
kubectl config set-context production-context --cluster=production-cluster --user=saro
# 현재 컨텍스트 변경
kubectl config use-context production-context

helm 설치

https://helm.sh/docs/intro/install/

  • 리눅스
    curl -fsSL https://raw.githubusercontent.com/helm/helm/main/scripts/get-helm-3 | bash
    
  • 윈도우
    # 파워쉘
    winget install Helm.Helm
    

Kubernetes Dashboard 설치

https://github.com/kubernetes/dashboard

# Add kubernetes-dashboard repository
helm repo add kubernetes-dashboard https://kubernetes.github.io/dashboard/

# Deploy a Helm Release named "kubernetes-dashboard" using the kubernetes-dashboard chart
helm upgrade --install kubernetes-dashboard kubernetes-dashboard/kubernetes-dashboard --create-namespace --namespace kubernetes-dashboard

# 중간에 아래 파일의 권한오류가 발생한다면. 
chmod 600 /home/유저이름/.kube/config

# 성공시 메시지
Congratulations! You have just installed Kubernetes Dashboard in your cluster.

To access Dashboard run:
  kubectl -n kubernetes-dashboard port-forward svc/kubernetes-dashboard-kong-proxy 8443:443

NOTE: In case port-forward command does not work, make sure that kong service name is correct.
      Check the services in Kubernetes Dashboard namespace using:
        kubectl -n kubernetes-dashboard get svc

Dashboard will be available at:
  https://localhost:8443

kube 접속을 하면 아래와 같이 나옵니다. kube wsl은 호스트 문제가 일어나니 cmd나 파워쉘을 열고 아래와 같이 입력합니다.

# 예를 들어 저는 saro라는 계정을 만들어서 진행해보겠습니다.
kubectl create serviceaccount 사용할계정 -n kubernetes-dashboard
kubectl create clusterrolebinding 사용할계정 --clusterrole=cluster-admin --serviceaccount=kubernetes-dashboard:사용할계정
kubectl -n kubernetes-dashboard create token 사용할계정

생성된 토큰을 넣어주면, 아래와 같이 로그인이 완료됩니다. kube

  • 접속할 때마다 토큰을 만드는 것이 귀찮다면 아래와같이 기간을 길게 잡습니다. (10년)
    kubectl -n kubernetes-dashboard create token 사용할계정 --duration=8760h