-
[Kubernetes] Dashboard 셋업 및 외부 접속 설정Docker & Kubernetes 2022. 11. 23. 08:53
* 본 포스팅에서 가이드 하는 방법은 보안적으로 결코 추천되지 않는 방법이므로 학습용으로만 사용하길 권장한다.
* 외부 접속 설정을 하기 위한 배경 지식 (중요!!)
: NodePort를 통해 외부에서 쿠버네티스에 접근 하는 방법
: https://seongjin.me/kubernetes-service-types/
* Dashboard 셋업
- 공식 가이드
: https://kubernetes.io/docs/tasks/access-application-cluster/web-ui-dashboard/
Deploy and Access the Kubernetes Dashboard
Deploy the web UI (Kubernetes Dashboard) and access it.
kubernetes.io
- YAML 파일 다운로드
: 커스터마이징 후 APPLY 할것임 (왜냐? 위에서 말한 노드포트 뚫어줘야 하기 때문..)
: 가급적 구성 시점의 최신 버전으로 적용 해 주는것이 좋다고 봄
https://raw.githubusercontent.com/kubernetes/dashboard/v2.6.1/aio/deploy/recommended.yaml
- 파일 커스텀 (들여쓰기 내어쓰기 주의!!! - 이것때문에 한참 삽질... ㅠㅠ)
kind: Service apiVersion: v1 metadata: labels: k8s-app: kubernetes-dashboard name: kubernetes-dashboard namespace: kubernetes-dashboard spec: ports: - nodePort: 30880 # <-- 여기 노드 포트 뚫 port: 443 targetPort: 8443 selector: k8s-app: kubernetes-dashboard type: NodePort # <-- 노드 포트를 쓰겠다는 설정
# yaml 파일 적용 $ kubectl apply -f recommended.yaml
* 접속 여부 체크
: 접속을 위해 필요하다면 포트 포워딩(30880)이 필요 하다. 설명은 생략함.
# 접속 체크 (with InternetBrowser) # https 주의! 우리는 443 포트를 맵핑 했으므로! https://[대시보드가 설치된 서버 물리아이피]:30880
* 대시보드 클러스터 바인딩 생성
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
* 대시보드 사용자 서비스 맵핑
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 # ... content before... spec: containers: - args: - --auto-generate-certificates - --namespace=kubernetes-dashboard - --token-ttl=0 # <-- 이걸 추가 image: kubernetesui/dashboard:v2.6.0 # ... content after ...
* 참고자료
쿠버네티스 대시보드 토큰 발행 및 접속
대시보드 토큰 발행 전에 쿠버네티스 대시보드가 설치되지 않았다면 아래 글을 확인하기 바랍니다. https://park-hw.tistory.com/entry/%EC%BF%A0%EB%B2%84%EB%84%A4%ED%8B%B0%EC%8A%A4-%EB%8C%80%EC%8B%9C%EB%B3%B4%EB%93%9C-%EC%A0
park-hw.tistory.com
'Docker & Kubernetes' 카테고리의 다른 글
[Docker] GlusterFS volume-plugin 구성 (feat.CentOS7) (0) 2023.02.08 [Docker] Docker Swarm 클러스터 구축 (1) 2022.12.26 [Kubernetes] 클러스터 환경 구축 (0) 2022.11.04 [Docker] Code-server 구축 (0) 2022.11.04 [Docker] Custom image 만들기 (feat. MS-SQL) (0) 2022.11.04