Kubernetes 공식 대시보드 배포

쿠버네티스 공식 대시보드는 기본으로 배포되지 않으, 설치 방법이 공식 문서에 있습니다.

1. 대시보드 배포

다음 명령어로 대시보드를 배포할 수 있습니다.

kubectl apply -f https://raw.githubusercontent.com/kubernetes/dashboard/v2.2.0/aio/deploy/recommended.yaml

이것이 개인 클러스터에 배포되기 때문에 프락시를 통해서 접근해야 합니다. kube-proxy는 대시보드 서비스로 요청을 프락시할 수 있습니다. 귀하의 워크스페이스에서 다음 명령어를 실행하세요.

kubectl proxy --port=8080 --address='0.0.0.0' --disable-filter=true &

이러면 프락시를 시작하고 8080번 포트로 모든 인터페이스에서 접속 대기하며 비로컬 호스트 요청을 필터링을 사용하지 않도록 설정합니다.

이 명령은 현재 터미널 세션에서 백그라운드에서 계속 실행됩니다.

XSRF 공격을 방어하는 보안 기능인 요청 필터링을 비활성화 하였습니다. 이것은 프로덕션 환경에서 권장하지 않지만 개발 환경에서는 유용합니다.

2. 대시보드 사용하기

이제 쿠버네티스 대시보드를 사용할 수 있습니다.

  1. 클라우드9 환경에서 Tools / Preview / Preview Running Application 을 클릭합니다.

  2. URL의 끝으로 가서 다음을 추가합니다.

/api/v1/namespaces/kubernetes-dashboard/services/https:kubernetes-dashboard:/proxy/

주소를 입력하면 로그인 화면이 표시 됩니다. Cloud9 미리보기 브라우저는 토큰 인증을 지원하지 않는 것으로 보입니다. 따라서 Cloud9 미리보기 브라우저 탭에 로그인 화면이 표시된 상태에서 아래와 같이 Pop Out 버튼을 눌러 일반 브라우저 탭에서 로그인 화면을 엽니다.

새로운 터미널 탭을 열고 다음을 입력합니다.

aws eks get-token --cluster-name eksworkshop-eksctl | jq -r '.status.token'

이 명령의 출력을 복사 한 다음 Token 옆에 있는 라디오 버튼을 클릭 한 다음 아래 텍스트 필드에 마지막 명령의 출력을 붙여 넣습니다.

그리고 Sign In 버튼을 누릅니다.

3. 정리하기

프록시를 중지하고 대시 보드 배포를 삭제합니다.

# kill proxy
pkill -f 'kubectl proxy --port=8080'

# delete dashboard
kubectl delete -f https://raw.githubusercontent.com/kubernetes/dashboard/v2.2.0/aio/deploy/recommended.yaml

쿠버네티스 대시보드 배 실습을 완료하였습니다.

Last updated