개발/Kubernetes
dashboard-admin-token 생성
피터JK
2025. 2. 21. 19:02
728x90
ServiceAccount Token이 포함된 Secret이 보이지 않는다면.
대시보드 로그인에 사용할 ServiceAccount Token을 찾으려면 다음 단계를 따르세요.
✅ 1. 올바른 Secret 목록 확인
먼저, dashboard-admin과 관련된 Secret 목록을 확인하세요.
kubectl -n kubernetes-dashboard get secret
이 명령을 실행하면 여러 개의 Secret이 출력됩니다.
여기서 "dashboard-admin-token-xxxx" 같은 형식의 Secret을 찾아야 합니다.
✅ 2. 정확한 Secret을 사용하여 토큰 확인
위 명령어 실행 후, "dashboard-admin-token-XXXX" 같은 Secret이 있으면, 다음 명령어로 해당 토큰을 가져올 수 있습니다.
kubectl -n kubernetes-dashboard describe secret dashboard-admin-token-XXXX
또는, 한 줄 명령어로 바로 토큰 값을 가져오려면:
kubectl -n kubernetes-dashboard get secret dashboard-admin-token-XXXX -o jsonpath="{.data.token}" | base64 --decode
⚠️ 중요:
dashboard-admin-token-XXXX 부분은 실제 get secret 명령어에서 확인한 Secret 이름으로 바꿔야 합니다.
✅ 3. 만약 해당 Secret이 없다면? (새로 생성하기)
만약 "dashboard-admin-token-XXXX" 형식의 Secret이 존재하지 않는다면,
ServiceAccount를 직접 생성해야 할 수도 있습니다.
1️⃣ ServiceAccount 생성
kubectl create serviceaccount dashboard-admin -n kubernetes-dashboard
2️⃣ ClusterRoleBinding 생성
kubectl create clusterrolebinding dashboard-admin-binding \
--clusterrole=cluster-admin \
--serviceaccount=kubernetes-dashboard:dashboard-admin
3️⃣ 토큰 생성
Kubernetes 1.24 이상에서는 자동으로 Token을 생성하지 않으므로, 수동으로 토큰을 생성해야 합니다.
- Token Secret 직접 생성
kubectl apply -f - <<EOF
apiVersion: v1
kind: Secret
metadata:
name: dashboard-admin-token
namespace: kubernetes-dashboard
annotations:
kubernetes.io/service-account.name: "dashboard-admin"
type: kubernetes.io/service-account-token
EOF
- 토큰 가져오기
kubectl -n kubernetes-dashboard get secret dashboard-admin-token -o jsonpath="{.data.token}" | base64 --decode

🚀 결론
- kubectl -n kubernetes-dashboard get secret 명령어로 "dashboard-admin-token-XXXX"이 있는지 확인
- kubectl -n kubernetes-dashboard describe secret dashboard-admin-token-XXXX로 토큰 가져오기
- 만약 없다면, dashboard-admin ServiceAccount 및 Token을 새로 생성 후 확인
이제 얻은 토큰을 Kubernetes Dashboard 로그인 화면에 입력하면 로그인할 수 있습니다!
728x90