Link Search Menu Expand Document

클러스터롤

Table of contents

  1. 클러스터롤(Clusterrole)
  2. 메뉴이동
  3. 화면구성
  4. 클러스터롤 생성
  5. 클러스터롤 수정
  6. 클러스터롤 삭제

클러스터롤(Clusterrole)

클러스터롤(ClusterRole)은 쿠버네티스 리소스에 대한 권한(규칙)들의 집합을 정의하는 객체입니다. 쿠버네티스의 권한 부여는 기본적으로 거부(Deny) 상태에서 필요한 권한을 추가(Allow)해 나가는 방식입니다.

특정 네임스페이스 내에서만 동작하는 롤(Role)과 달리, 클러스터롤(ClusterRole)은 네임스페이스에 종속되지 않는 클러스터 전역(Cluster-scoped) 리소스라는 점에서 가장 큰 차이가 있습니다.

ClusterRole의 주요 용도

  • 클러스터 범위 리소스 제어: 노드(Node), 퍼시스턴트 볼륨(PV) 등 특정 네임스페이스에 속하지 않는 전역 리소스에 대한 접근 권한을 정의할 때 사용합니다.

  • 모든 네임스페이스의 리소스 제어: 특정 네임스페이스가 아닌, 클러스터 내 모든 네임스페이스에 존재하는 파드(Pod)나 시크릿(Secret) 등을 한 번에 조회하고 관리할 때 사용합니다.

  • 공통 권한 템플릿으로 활용: ClusterRole을 통해 공통적인 권한 집합을 클러스터 수준에 한 번 정의해 두고, 개별 네임스페이스에서 롤바인딩(RoleBinding)을 통해 특정 사용자에게 이 권한을 부여하는 템플릿 용도로도 활용할 수 있습니다.

예제 Yaml
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRole
metadata:
  # "namespace" omitted since ClusterRoles are not namespaced
  name: secret-reader
rules:
- apiGroups: [""]
  #
  # at the HTTP level, the name of the resource for accessing Secret
  # objects is "secrets"
  resources: ["secrets"]
  verbs: ["get", "watch", "list"]

메뉴이동

접근제어 ➡ 클러스터롤

ac-003.png


화면구성

생성된 클러스터롤 정보를 제공합니다. ac-011.png


클러스터롤 생성

+생성을 클릭 후 내용을 입력하여 클러스터롤을 생성할 수 있습니다.

ac-012.png


클러스터롤 수정

클러스터롤 목록에서 특정 클러스터롤을 클릭하여 우측 YAML에 수정할 내용 입력 후 수정버튼을 클릭하면 수정할 수 있습니다.


클러스터롤 삭제

삭제 버튼 클릭 시 삭제 팝업창이 나타나며 삭제하려는 해당 클러스터롤 이름을 입력 후 Delete 버튼 클릭 시 클러스터롤이 삭제됩니다.

clusterrole-delete.png