쿠버네티스 대시보드 토큰 발행 및 접속
대시보드 토큰 발행 전에
쿠버네티스 대시보드가 설치되지 않았다면 아래 글을 확인하기 바랍니다.
쿠버네티스 대시보드 적용
쿠버네티스 대시보드 설치 전에 쿠버네티스는 대시보드를 공식적으로 지원해 준다, 아래글은 해당 문서를 참고하여 작성 하였다. (이때 버전은 2.6.0) 참조 : https://github.com/kubernetes/dashboard GitHub -
park-hw.tistory.com
대시보드 사용자 만들기
kubernetes-dashboard라는 네임스페이스에 (대시보드 설치 시 namespace가 알아서 생성)
admin-user라는 이름으로 서비스 계정을 생성할 것이다.
일일히 yaml파일을 만들어 create하기 귀찮으므로 cat을 사용하겠다. (자기마음)
ClusterRoleBinding
cat <<EOF | kubectl create -f -
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRoleBinding
metadata:
name: admin-user
roleRef:
apiGroup: rbac.authorization.k8s.io
kind: ClusterRole
name: admin
subjects:
- kind: ServiceAccount
name: admin-user
namespace: kubernetes-dashboard
EOF
ServiceAccount
cat <<EOF | kubectl create -f -
apiVersion: v1
kind: ServiceAccount
metadata:
name: admin-user
namespace: kubernetes-dashboard
EOF
대시보드 토큰 발행
모두 추가가 되었다면 대시보드 토큰을 발행 해 보도록 하자.
kubectl -n kubernetes-dashboard create token admin-user
토큰을 발행하게 된다면 아래와 같이 내 생각보다 괴랄하게 긴 토큰이 발행 된 것을 확인할 수 있다.
위에 발행된 토큰을 대시보드에 입력하면 대시보드에 로그인 되는것을 확인 할 수 있다.
대시보드 토큰 제한시간 변경
토큰의 시간은 기본적으로 짧다 나의 경우에는 밥먹고 왔더니 토큰 접속이 되지 않는것을 확인하였다.
토큰의 지속시간을 무제한으로 변경 해 보도록 하자.
kubectl edit -n kubernetes-dashboard deployments.apps kubernetes-dashboard
쉘에 입력한다면 대시보드 deployment의 수정 화면이 열린다.
아래와 같이 수정해주도록 하자
# ... content before...
spec:
containers:
- args:
- --auto-generate-certificates
- --namespace=kubernetes-dashboard
- --token-ttl=0 # <-- 이걸 추가
image: kubernetesui/dashboard:v2.6.0
# ... content after ...
길게 설명 하지 않고 token-ttl값을 0으로 준다면 유효시간이 사라지게 된다. (숫자 1당 1초라고 적혀있으나 확인x)
모두 작업 완료 하였다면 토큰을 다시 생성해서 접속 하도록 하자.