본문으로 건너뛰기
버전: 1.0.4

7.2. 사용자 관리

어떨 때 보는가​

  • 새 팀원의 계정을 만들고 클러스터 접근 권한을 줄 때
  • 누가 어떤 권한을 갖고 있는지 확인할 때
  • 팀이 바뀌어 그룹을 새로 만들거나 정리할 때
  • 나간 사람의 계정을 지울 때
  • 로그인은 되는데 화면이 비어 있을 때

사용자와 그룹​

Console 은 통합 인증 서버(SSO)에 등록된 계정으로 로그인합니다. 이 화면에서 계정과 그룹을 만들고 지우며, 클러스터 접근 권한을 연결 합니다. 별도의 계정 관리 화면을 열 필요가 없습니다.

사람마다 권한을 따로 주면 인원이 바뀔 때마다 손봐야 합니다. 그룹에 권한을 주고 사람을 그룹에 넣는 방식 이 관리하기 쉽습니다. 이 화면도 그룹을 중심으로 만들어져 있습니다.

사용자 목록​

사용자 관리 > 사용자 로 들어갑니다.

사용자 목록
열설명
사용자아이디와 표시 이름·전자우편
그룹속한 그룹. 이름 앞에 oidc: 가 붙습니다. 옆의 연필 표시로 소속을 고칩니다
네임스페이스권한이 미치는 구역
역할그 구역에서 할 수 있는 일(편집 / 조회)
클러스터 관리자클러스터 전체를 관리하는 계정에만 표시됩니다
접근 경로권한을 그룹에서 받았는지, 계정에 직접 줬는지

오른쪽 위 [사용자 추가] 가 보이지 않으면 계정을 만들 권한이 없는 것입니다. 관리자 그룹(admins)에 속한 사용자에게만 보입니다.

사용자 추가​

[사용자 추가] 를 누르면 입력 화면이 열립니다. 별표(*)가 붙은 것이 필수입니다.

항목설명
아이디 *계정을 구분하는 값. 만든 뒤에는 바꿀 수 없습니다
전자우편 *로그인할 때 쓰는 값입니다. 만든 뒤 Console 에서 바꿀 수 없습니다
표시 이름목록에 나오는 이름. 비워 두면 성과 이름을 이어 붙여 씁니다
성 · 이름
전화번호숫자와 하이픈(-)만 넣을 수 있습니다
초기 비밀번호 *8자 이상. 확인란에 같은 값을 한 번 더
그룹 *하나 이상 골라야 합니다

로그인에 쓰는 값은 아이디가 아니라 전자우편입니다. 클러스터가 사용자를 전자우편으로 구분하기 때문입니다. 계정을 알려줄 때 주소를 함께 전달하십시오.

그룹을 하나 이상 고르게 하는 이유는, 그룹이 없으면 로그인은 되지만 아무 화면도 볼 수 없기 때문입니다. 넣을 그룹이 아직 없으면 먼저 그룹을 만들고 돌아옵니다.

입력값이 규칙에 맞지 않으면 해당 칸 아래에 이유가 표시되고 저장되지 않습니다.

계정 정보 고치기와 비밀번호​

목록에서 사용자 행을 누르면 오른쪽에 상세가 열립니다. 위쪽의 [편집] 으로 표시 이름·성· 이름·전화번호를 고칩니다.

아이디와 전자우편은 고칠 수 없습니다. 두 값은 계정을 구분하는 기준이라, 바뀌면 그 계정에 매인 권한을 다시 찾지 못합니다. 바꿔야 한다면 새 계정을 만들고 이전 계정을 지웁니다.

같은 화면의 [비밀번호 변경] 으로 다른 사용자의 비밀번호를 바꿉니다. 자기 비밀번호는 화면 오른쪽 위 계정 메뉴의 비밀번호 변경 에서 바꿉니다.

계정 삭제​

상세 화면 오른쪽 위 삭제 표시로 지웁니다. 되돌릴 수 없으므로 어떤 계정을 지우는지 확인하는 창이 먼저 열립니다.

지워지는 것은 로그인 계정뿐입니다. 그 사람이 만들어 둔 애플리케이션이나 그 밖의 자원은 클러스터에 그대로 남습니다. 계정에 직접 준 권한도 남으므로 필요하면 따로 지웁니다.

다음 계정은 지울 수 없어 삭제 표시가 보이지 않습니다.

대상이유
자기 자신지우면 그 자리에서 사용자 관리가 끊깁니다
마지막 관리자지우면 아무도 사용자를 관리할 수 없습니다
사용자 디렉터리를 관리하는 계정계정 저장소가 스스로 쓰는 계정입니다

사람이 나갈 때는 ① 모든 그룹에서 빼고 → ② 즉시 막아야 하면 비밀번호를 바꾸고 → ③ 인수인계가 끝나면 계정을 지우는 순서가 안전합니다. 계정을 먼저 지우면 그 사람이 만든 자원의 소유자 기록을 확인하기 어려워집니다.

사용자 그룹 화면​

사용자 관리 > 사용자 그룹 에서 그룹 목록을 봅니다. 그룹 이름을 누르면 오른쪽에 권한 편집 화면이 열립니다.

편집 단위는 역할 카드 하나 = 역할 하나 입니다. 그룹에 여러 역할을 줄 수 있고, 역할마다 적용 범위를 따로 정합니다.

그룹 추가​

오른쪽 위 [그룹 추가] 로 새 그룹을 만듭니다. 관리자 그룹(admins)에 속한 사용자에게만 이 버튼이 보입니다.

항목설명
그룹 이름영소문자·숫자·하이픈만 2~32자. 예: developers, team-a
권한편집 사용자 또는 조회 사용자 중 하나를 반드시 골라야 합니다

권한을 반드시 고르게 하는 이유는, 권한 없는 그룹을 만들면 그 그룹에 넣은 계정이 로그인은 되지만 아무 화면도 볼 수 없기 때문입니다. 만든 사람은 권한을 준 것으로 알고, 받은 사람은 빈 화면을 보게 됩니다.

만들어진 그룹은 고른 역할을 모든 네임스페이스에 대해 갖습니다. 특정 네임스페이스로 범위를 좁히려면 그룹 상세에서 역할 카드의 네임스페이스 칸을 고칩니다.

그룹 이름은 목록에 oidc: 가 붙어 보입니다. 어느 시스템에서 온 그룹인지 구분하려고 Kubernetes 가 붙이는 표시이며, 만들 때는 붙이지 않습니다.

새 그룹은 만든 즉시 적용되고, 그 그룹에 속한 사용자가 다음에 로그인할 때부터 정한 권한이 적용됩니다.

Console 이 정하는 것은 Kubernetes 권한까지입니다. 그 밖의 도구에서 이 그룹이 권한을 가지려면 설치 담당자가 따로 설정해야 합니다.

그룹 삭제​

그룹 상세 화면 오른쪽 위 삭제 표시로 지웁니다. 어떤 그룹을 지우는지 확인하는 창이 먼저 열립니다.

확인 창에서 그 그룹에 준 Kubernetes 권한도 함께 지울지 고릅니다. 기본값은 함께 지움 입니다. 함께 지우지 않으면 권한이 남아, 나중에 같은 이름으로 그룹을 만들 때 그 권한을 그대로 물려받습니다.

다른 그룹이나 사용자와 함께 쓰는 권한은 지우지 않습니다. 그 권한에서 이 그룹만 빼고 나머지는 남깁니다. 그렇게 하지 않으면 관계없는 사람의 권한까지 사라집니다.

다음 그룹은 지울 수 없어 삭제 표시가 보이지 않습니다.

대상조치
구성원이 남아 있는 그룹먼저 구성원을 다른 그룹으로 옮깁니다
설치가 만든 그룹admins·users·viewers 와 lldap_ 로 시작하는 그룹. 그대로 둡니다

리소스를 만들 수 없는 네임스페이스​

Console 에서 자원을 만들 때 다음 네임스페이스는 고를 수 없습니다. 저장을 누르면 거부되고 이유가 표시됩니다.

네임스페이스이유
default클러스터 코어와 권한을 공유하고, 삭제할 수 없어 정리할 방법이 없습니다. CIS Kubernetes Benchmark 도 사용하지 않기를 권고합니다
kube- 로 시작하는 이름kube-system·kube-public·kube-node-lease 등 클러스터 코어가 씁니다

애플리케이션은 용도별 네임스페이스를 만들어 그 안에 배치합니다. 생성 화면의 네임스페이스 칸은 비어 있으며, 값을 직접 고르거나 입력해야 합니다.

역할을 고르는 방법​

역할 추가 를 누르면 고를 수 있는 역할 목록이 나옵니다.

목록에 나오는 역할에는 조건이 있습니다.

조건설명
관리 대상 표시가 붙은 역할운영 담당자가 "이 역할은 화면에서 부여해도 된다" 고 표시한 것
cluster-admin클러스터 전체 관리자. 예외로 항상 나옵니다

표시가 없는 역할은 목록에 나오지 않습니다. 클러스터에는 설치한 도구들이 만든 역할이 수십 개씩 있어서, 전부 보여 주면 필요한 역할을 찾을 수 없기 때문입니다. 필요한 역할이 안 보이면 운영 담당자에게 그 역할을 목록에 넣어 달라고 요청하십시오.

네임스페이스 단위 역할(Role)은 같은 이름이 여러 네임스페이스에 있을 수 있어 이름 (네임스페이스) 형태로 표시됩니다.

RoleBinding 과 ClusterRoleBinding 고르기​

역할을 고른 뒤 카드 안에서 어떤 방식으로 연결할지 정합니다.

방식적용 범위네임스페이스 선택
RoleBinding선택한 네임스페이스에만여러 개를 고를 수 있습니다
ClusterRoleBinding모든 네임스페이스선택 항목이 사라집니다

기본값은 RoleBinding 입니다. 범위가 좁아 안전한 쪽입니다.

한 역할을 여러 네임스페이스에 주는 일은 흔합니다. 예를 들어 개발팀에게 dev 와 test 두 네임스페이스의 편집 권한을 주려면, 역할 카드 하나에서 두 네임스페이스를 함께 고릅니다.

ClusterRoleBinding 은 kube-system 을 포함한 모든 네임스페이스 에 적용됩니다. 꼭 필요한 경우에만 쓰십시오.

여러 변경을 한 번에 저장​

역할을 더하거나 빼면 곧바로 반영되지 않고 화면 아래에 변경 건수와 저장 바 가 나타납니다.

  1. 필요한 변경을 모두 합니다.
  2. 아래 저장 바에서 변경 내용을 확인합니다.
  3. 저장 을 누르면 확인 창이 뜹니다.
  4. 진행 상황이 항목별로 표시됩니다. 일부가 실패하면 그 항목만 다시 시도할 수 있습니다.

되돌리기 를 누르면 저장 전 상태로 돌아갑니다.

적용 순서는 회수를 먼저, 부여를 나중에 입니다. 권한을 잘못 넓히는 중간 상태가 생기지 않게 하기 위해서입니다.

기본 역할이 없을 때​

클러스터에 기본 역할이 준비되어 있지 않으면 화면 위에 안내 배너가 뜹니다. 기본 롤 생성 버튼으로 만들 수 있습니다.

만들어지는 역할은 세 가지입니다.

역할권한
cop-cluster-users자원을 만들고 고칠 수 있습니다 (편집)
cop-cluster-viewers자원을 볼 수 있습니다 (읽기)
cop-namespace-lister네임스페이스 목록을 볼 수 있습니다

cop-namespace-lister 는 화면 동작에 필요한 것입니다. 이 권한이 없으면 로그인은 되지만 네임스페이스 선택 상자가 비어 보이고 목록이 나오지 않습니다.

이미 있으면 빠진 규칙만 채우므로 여러 번 눌러도 안전합니다.

콘솔이 만드는 오브젝트​

Console 이 만든 연결에는 표시가 붙고, 이름이 cop- 로 시작합니다.

이름무엇인가
cop-access-*네임스페이스 단위 연결
cop-cluster-access-*클러스터 전체 연결
cop-group-*-ns-lister네임스페이스 목록 조회용 자동 연결

Console 이 만들지 않은 연결은 편집할 수 없습니다. 다른 사람이 명령어로 만든 것을 화면에서 바꾸면 그쪽 관리 방식과 충돌하기 때문입니다. "외부 관리" 로 표시되며, 필요하면 콘솔 관리로 전환 을 눌러 넘겨받은 뒤에 편집합니다.

접근이 안 될 때​

증상확인할 것
로그인은 되는데 화면이 비어 있음그 그룹에 cop-namespace-lister 가 연결되었는지
일부 메뉴만 보임메뉴는 권한에 따라 숨겨집니다. 필요한 자원의 조회 권한이 있는지
그룹 권한이 적용되지 않음그룹 이름 철자, 인증 서버가 그룹 정보를 넘겨 주는지
그룹 목록이 비어 있음인증 서버 연결 상태. 직접 입력으로도 지정할 수 있습니다

로그인한 뒤 그룹 정보가 반영되지 않으면 로그아웃 후 다시 로그인해 보십시오. 권한은 로그인 시점에 발급된 토큰에 담깁니다.