7.2. 사용자 관리
어떨 때 보는가
- 새 팀 원에게 클러스터 접근 권한을 줄 때
- 누가 어떤 권한을 갖고 있는지 확인할 때
- 로그인은 되는데 화면이 비어 있을 때
사용자와 그룹
Console 은 통합 인증 서버(SSO)에 등록된 계정으로 로그인합니다. 이 화면에서는 등록된 사용자와 그룹을 확인하고 클러스터 접근 권한을 연결 합니다.
사람마다 권한을 따로 주면 인원이 바뀔 때마다 손봐야 합니다. 그룹에 권한을 주고 사람을 그룹에 넣는 방식 이 관리하기 쉽습니다. 이 화면도 그룹을 중심으로 만들어져 있습니다.
사용자 목록
사용자 관리 > 사용자 로 들어갑니다.

| 열 | 설명 |
|---|---|
| 사용자 이름 | 로그인에 쓰는 계정 |
| 이름 | 표시 이름 |
| 전자우편 | 등록된 주소 |
| 그룹 | 속한 그룹. 누르면 그 그룹의 권한 화면으로 갑니다 |
이 화면은 보기 전용입니다. 사용자를 새로 만들거나 지우는 것은 통합 인증 서버에서 합니다. Console 에서는 그 계정에 클 러스터 권한을 연결하는 일만 합니다.
사용자 그룹 화면
사용자 관리 > 사용자 그룹 에서 그룹 목록을 봅니다. 그룹 이름을 누르면 오른쪽에 권한 편집 화면이 열립니다.
편집 단위는 역할 카드 하나 = 역할 하나 입니다. 그룹에 여러 역할을 줄 수 있고, 역할마다 적용 범위를 따로 정합니다.
역할을 고르는 방법
역할 추가 를 누르면 고를 수 있는 역할 목록이 나옵니다.
목록에 나오는 역할에는 조건이 있습니다.
| 조건 | 설명 |
|---|---|
| 관리 대상 표시가 붙은 역할 | 운영 담당자가 "이 역할은 화면에서 부여해도 된다" 고 표시한 것 |
cluster-admin | 클러스터 전체 관리자. 예외로 항상 나옵니다 |
표시가 없는 역할은 목록에 나오지 않습니다. 클러스터에는 설치한 도구들이 만든 역할이 수십 개씩 있어서, 전부 보여 주면 필요한 역할을 찾을 수 없기 때문입니다. 필요한 역할이 안 보이면 운영 담당자에게 그 역할을 목록에 넣어 달라고 요청하십시오.
네임스페이스 단위 역할(Role)은 같은 이름이 여러 네임스페이스에 있을 수 있어 이름 (네임스페이스)
형태로 표시됩니다.
RoleBinding 과 ClusterRoleBinding 고르기
역할을 고른 뒤 카드 안에서 어떤 방식으로 연결할지 정합니다.
| 방식 | 적용 범위 | 네임스페이스 선택 |
|---|---|---|
| RoleBinding | 고른 네임스페이스에만 | 여러 개를 고를 수 있습니다 |
| ClusterRoleBinding | 모든 네임스페이스 | 선택 항목이 사라집니다 |
기본값은 RoleBinding 입니다. 범위가 좁아 안전한 쪽입니다.
한 역할을 여러 네임스페이스에 주는 일은 흔합니다. 예를 들어 개발팀에게 dev 와 test 두
네임스페이스의 편집 권한을 주려면, 역할 카드 하나에서 두 네임스페이스를 함께 고릅니다.
ClusterRoleBinding 은
kube-system을 포함한 모든 네임스페이스 에 적용됩니다. 꼭 필요한 경우에만 쓰십시오.
여러 변경을 한 번에 저장
역할을 더하거나 빼면 곧바로 반영되지 않고 화면 아래에 변경 건수와 저장 바 가 나타납니다.
- 필요한 변경을 모두 합니다.
- 아래 저장 바에서 변경 내용을 확인합니다.
- 저장 을 누르면 확인 창이 뜹니다.
- 진행 상황이 항목별로 표시됩니다. 일부가 실패하면 그 항목만 다시 시도할 수 있습니다.
되돌리기 를 누르면 저장 전 상태로 돌아갑니다.
적용 순서는 회수를 먼저, 부여를 나중에 입니다. 권한을 잘못 넓히는 중간 상태가 생기지 않게 하기 위해서입니다.
기본 역할이 없을 때
클러스터에 기본 역할이 준비되어 있지 않으면 화면 위에 안내 배너가 뜹니다. 기본 롤 생성 버튼으로 만들 수 있습니다.
만들어지는 역할은 세 가지입니다.
| 역할 | 권한 |
|---|---|
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 가 연결되었는지 |
| 일부 메뉴만 보임 | 메뉴는 권한에 따라 숨겨집니다. 필요한 자원의 조회 권한이 있는지 |
| 그룹 권한이 적용되지 않음 | 그룹 이름 철자, 인증 서버가 그룹 정보를 넘겨 주는지 |
| 그룹 목록이 비어 있음 | 인증 서버 연결 상태. 직접 입력으로도 지정할 수 있습니다 |
로그인한 뒤 그룹 정보가 반영되지 않으면 로그아웃 후 다시 로그인해 보십 시오. 권한은 로그인 시점에 발급된 토큰에 담깁니다.