카테고리 없음

EKS Kubernetes Dashboard 7에서 사용자 추가 방법 (RBAC 설정 및 로그인)

idea9329 2025. 2. 20. 14:10
반응형

 

🔹 개요

Amazon EKS에서 Kubernetes Dashboard 7 버전을 사용할 경우, RBAC(Role-Based Access Control)를 통해 사용자를 추가하고 권한을 부여해야 합니다.
이 문서는 Kubernetes 대시보드에서 새로운 사용자를 추가하는 방법을 설명합니다.


✅ EKS Kubernetes Dashboard 7에서 사용자 추가 방법

📌 1. 서비스 계정(ServiceAccount) 생성

먼저, 대시보드에 접근할 사용자(ServiceAccount)를 생성합니다.

kubectl create serviceaccount dashboard-user -n kubernetes-dashboard

 설명:

  • dashboard-user라는 새로운 서비스 계정(ServiceAccount)을 생성합니다.
  • 네임스페이스는 kubernetes-dashboard를 사용합니다.

📌 2. 권한(Role) 및 역할 바인딩(RoleBinding) 생성

RBAC을 사용하여 대시보드에서 사용할 수 있는 권한을 부여해야 합니다.
아래 YAML 파일을 생성하고 적용하세요.

💾 dashboard-user-role.yaml 파일 생성

apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRoleBinding
metadata:
  name: dashboard-user
subjects:
  - kind: ServiceAccount
    name: dashboard-user
    namespace: kubernetes-dashboard
roleRef:
  kind: ClusterRole
  name: cluster-admin
  apiGroup: rbac.authorization.k8s.io

 설명:

  • dashboard-user 계정에 클러스터 관리자(cluster-admin) 권한을 부여합니다.
  • ClusterRoleBinding을 사용하여 모든 리소스를 관리할 수 있도록 설정합니다.

📌 권한 적용:

kubectl apply -f dashboard-user-role.yaml

 보안 주의:

cluster-admin 권한은 모든 Kubernetes 리소스를 제어할 수 있습니다.
보안이 중요한 환경에서는 필요한 최소한의 권한만 부여하는 것이 좋습니다.
필요에 따라 view 또는 edit 권한만 부여하는 방식으로 변경할 수 있습니다.


📌 3. 사용자 로그인 토큰 발급

Kubernetes Dashboard에 로그인하려면 서비스 계정의 인증 토큰을 가져와야 합니다.

kubectl -n kubernetes-dashboard create token dashboard-user

 설명:

  • dashboard-user의 토큰을 생성하고 출력합니다.
  • 출력된 토큰을 복사하여 로그인 시 사용합니다.

📌 4. 대시보드 접근 (포트포워딩 설정)

Kubernetes Dashboard는 기본적으로 외부에서 직접 접근할 수 없습니다.
포트 포워딩을 설정하여 로컬 환경에서 접근할 수 있도록 합니다.

kubectl port-forward -n kubernetes-dashboard service/kubernetes-dashboard 8000:443

 설명:

  • localhost:8000에서 대시보드에 접근 가능
  • 웹 브라우저에서 https://localhost:8000으로 접속 후 로그인 가능

📌 5. Kubernetes Dashboard 로그인

  1. 웹 브라우저에서 https://localhost:8000로 접속
  2. "토큰 로그인(Token Sign-In)"을 선택
  3. 앞서 생성한 토큰을 입력
  4. 로그인 버튼 클릭 후 대시보드 사용

🚀 결론

 EKS에서 Kubernetes Dashboard 7에 새로운 사용자 추가 가능
 RBAC을 활용하여 ServiceAccount  ClusterRoleBinding 설정
 사용자 인증을 위해 Kubernetes 서비스 계정 토큰을 생성 후 로그인
 보안을 고려하여 cluster-admin 대신 view 또는 edit 권한을 부여하는 방법도 가능

📌 이제 Kubernetes Dashboard에서 새로운 사용자를 추가하고 관리할 수 있습니다! 🎯

반응형