1. 개요
- 목적: Kubernetes 클러스터를 더 쉽게 관리하기 위해 Kubernetes Dashboard (관리 UI)를 설정하고 사용하는 방법을 학습합니다.
- Kubernetes Dashboard: Kubernetes 클러스터를 시각적으로 관리하고 모니터링할 수 있는 웹 기반 UI 도구입니다.
2. Kubernetes Dashboard 설치
Kubernetes Dashboard는 기본적으로 Kubernetes 클러스터에 설치되지 않으며, 설치하려면 Helm을 사용해야 합니다.
2.1 Helm 설치
- Helm: Kubernetes용 패키지 관리자입니다. Helm을 사용하여 Kubernetes 클러스터에 패키지를 설치하거나 관리할 수 있습니다.
- 설치 방법:
- MacOS:
brew install helm
명령어를 사용하여 Homebrew로 설치.
- Windows: Chocolaty 패키지 관리자를 설치한 후
choco install kubernetes-helm
명령어로 설치.
2.2 Helm을 사용하여 Kubernetes Dashboard 설치
- Helm 저장소 추가:
helm repo add kubernetes-dashboard https://kubernetes.github.io/dashboard/
- Kubernetes Dashboard 설치:
helm install kubernetes-dashboard kubernetes-dashboard/kubernetes-dashboard
- 설치 완료 후, "Congratulations, you have just installed Kubernetes Dashboard inside your cluster"라는 메시지를 확인할 수 있습니다.
3. Kubernetes Dashboard에 접근하기
Kubernetes Dashboard에 접근하려면 포트 포워딩을 통해 로컬 시스템에서 대시보드에 연결할 수 있습니다.
- 포트 포워딩 명령어:
kubectl proxy
- 이 명령어를 실행하면 대시보드가 로컬 시스템의
https://localhost:8443
에서 실행됩니다.
- 브라우저에서 이 URL을 통해 대시보드에 접근합니다.
4. Kubernetes Dashboard 로그인
- 토큰 생성: 대시보드에 접근하려면 토큰이 필요합니다.
- 서비스 계정 생성:
kubectl apply -f dashboard-adminuser.yaml
명령어로 서비스 계정 생성.
- 클러스터 역할 바인딩:
kubectl apply -f dashboard-adminrolebinding.yaml
명령어로 클러스터 역할을 서비스 계정에 할당.
- 토큰 가져오기:
kubectl -n kubernetes-dashboard create token admin-user
명령어로 토큰 생성 후 복사.
- 대시보드 로그인 페이지에서 토큰 입력 후 로그인.
5. 대시보드 사용 및 설정 유지
- 대시보드 탐색: Kubernetes 클러스터의 네임스페이스, 파드, 서비스, 디플로이먼트 등을 대시보드에서 시각적으로 확인 가능.
- 장기 토큰 설정:
- 시크릿 생성: 장기 토큰을 생성하여 매번 토큰을 재생성하지 않도록 설정 (
kubectl apply -f dashboard-secret.yaml
).
- 토큰 사용: 생성된 토큰을 사용하여 대시보드에 로그인하고 관리.
6. 요약
- Kubernetes Dashboard를 설치하고 설정하는 과정을 완료했습니다.
- Helm을 통해 쉽게 설치할 수 있으며, 서비스 계정과 클러스터 역할 바인딩을 통해 안전하게 대시보드에 접근할 수 있습니다.
- 대시보드를 사용하여 Kubernetes 클러스터의 상태를 시각적으로 확인하고 관리할 수 있습니다.
이 단계를 통해 Kubernetes 클러스터를 더 쉽게 관리할 수 있게 되었으며, Helm을 사용한 설치 과정도 익힐 수 있었습니다.