Skip to main content

Kubernetes Dashboard


설치

helm repo add kubernetes-dashboard https://kubernetes.github.io/dashboard/ \
&& helm repo update kubernetes-dashboard
helm search repo kubernetes-dashboard -l | head -n 10
mkdir -p monitoring/kubernetes_dashboard/helm
helm show values kubernetes-dashboard/kubernetes-dashboard \
--version 5.4.1 \
> monitoring/kubernetes_dashboard/helm/values.yaml
monitoring/kubernetes_dashboard/helm/values.yaml
extraArgs:
- --token-ttl=86400

metricsScraper:
enabled: true
helm upgrade kubernetes-dashboard kubernetes-dashboard/kubernetes-dashboard \
--install \
--version 5.4.1 \
-n monitoring \
-f monitoring/kubernetes_dashboard/helm/values.yaml
rbac/admin-sa.yaml
apiVersion: v1
kind: ServiceAccount
metadata:
name: admin-sa
namespace: monitoring

---
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRoleBinding
metadata:
name: admin-crb
roleRef:
apiGroup: rbac.authorization.k8s.io
kind: ClusterRole
name: cluster-admin
subjects:
- kind: ServiceAccount
name: admin-sa
namespace: monitoring
kubectl apply -f rbac/admin-sa.yaml

Removal

kubectl delete -f rbac/admin-sa.yaml
helm uninstall -n monitoring kubernetes-dashboard

Service

Token

kubectl -n monitoring get secret $(kubectl -n monitoring get sa/admin-sa -o jsonpath="{.secrets[0].name}") -o go-template="{{.data.token | base64decode}}"

토큰을 출력해서 사용하는 경우 위 명령어를 매번 실행하고, config파일에 저장해놓고 사용하려는 경우 아래 명령어를 통해 config파일에 토큰을 저장해두면 됩니다.

kubectl config set-credentials $(kubectl config current-context) --token=$(kubectl -n monitoring get secret $(kubectl -n monitoring get sa/admin-sa -o jsonpath="{.secrets[0].name}") -o go-template="{{.data.token | base64decode}}")
warning

한 config 파일에 여러 context가 있는 경우 config파일로 로그인할 수 없습니다. 한 context에 한 config 파일로 만들고 KUBECONFIG 환경변수로 여러 config 파일을 묶어서 사용하는 것이 좋습니다.

Proxy

kubectl proxy

http://localhost:8001/api/v1/namespaces/kubernetes-dashboard/services/https:kubernetes-dashboard:/proxy/

Port forward

kubectl port-forward -n monitoring svc/kubernetes-dashboard 8002:443

https://localhost:8002

Reference