vSphere 관리자는 감독자를 활성화 및 구성하고 vSphere 네임스페이스를 관리할 수 있는 권한이 필요합니다. 네임스페이스에 대한 사용 권한을 정의하여 네임스페이스에 액세스할 수 있는 DevOps 엔지니어와 개발자를 결정합니다. 외부 OIDC(OpenID Connect) 제공자로 감독자를 구성하여 다단계 인증을 사용하도록 설정할 수도 있습니다. DevOps 엔지니어 또는 개발자는 감독자에서 vSphere 관리자가 구성한 항목에 따라 vCenter Single Sign-On 자격 증명 또는 OIDC 제공자의 자격 증명을 사용하여 감독자에서 인증합니다. 사용 권한이 있는 vSphere 네임스페이스에만 액세스할 수 있습니다.
지원되는 ID 제공자
vSphere IaaS control plane는 다음과 같은 ID 제공자를 지원합니다.
- vCenter Single Sign-On. vSphere IaaS control plane 환경(감독자 및 Tanzu Kubernetes Grid 클러스터 포함)에서 인증하는 데 사용하는 기본 ID 제공자입니다. vCenter Single Sign-On은 vSphere 인프라에 대한 인증을 제공하고 AD/LDAP 시스템과 통합할 수 있습니다. vCenter Single Sign-On에 대한 자세한 내용은 vCenter Single Sign-On을 사용한 vSphere 인증을 참조하십시오.
- 외부 ID 제공자. vSphere 관리자는 OpenID Connect 프로토콜을 지원하는 외부 ID 제공자로 감독자를 구성할 수 있습니다. 외부 ID 제공자로 구성되면 감독자는 OAuth 2.0 클라이언트로 작동하며 Pinniped 인증 서비스를 사용하고 Tanzu CLI를 사용하여 Tanzu Kubernetes Grid 클러스터에 연결합니다. Tanzu CLI는 Tanzu Kubernetes Grid 클러스터의 수명 주기 관리 및 프로비저닝을 지원합니다. 각 감독자 인스턴스는 하나의 외부 ID 제공자를 지원할 수 있습니다.
감독자로 인증
vSphere IaaS control plane와 상호 작용하는 다양한 역할은 다음 방법을 사용하여 감독자로 인증할 수 있습니다.
- vSphere 관리자. vSphere 관리자는 vCenter Single Sign-On을 사용하여 vSphere Client를 통해 vSphere에서 인증합니다. kubectl용 vSphere 플러그인을 사용하여 kubectl을 통해 감독자 및 Tanzu Kubernetes Grid 클러스터에서 인증할 수도 있습니다. 자세한 내용은 vCenter Single Sign-On 사용자로 감독자에 연결을 참조하십시오.
- DevOps 엔지니어 또는 개발자. DevOps 엔지니어 또는 개발자는 vCenter Single Sign-On을 사용하여 kubectl용 vSphere 플러그인 및 kubectl을 통해 감독자에서 인증합니다. 감독자로 구성된 외부 ID 제공자의 자격 증명을 사용하여 감독자에 연결할 수도 있습니다. 자세한 내용은 외부 ID 제공자를 사용하여 감독자의 TKG 클러스터에 연결을 참조하십시오.
감독자를 사용한 로그인 세션
vCenter Single Sign-On 사용자로 감독자에 로그인하면 인증 프록시가 요청을 vCenter Single Sign-On으로 리디렉션합니다. kubectl용 vSphere 플러그인은 vCenter Server와의 세션을 설정하고 vCenter Single Sign-On에서 인증 토큰을 가져옵니다. 또한 액세스 권한이 있는 vSphere 네임스페이스 목록을 가져오고 이러한 vSphere 네임스페이스로 구성을 채웁니다. 사용자 계정의 사용 권한이 변경되면, 다음 로그인 시 vSphere 네임스페이스 목록이 업데이트됩니다.
Tanzu Kubernetes Grid 클러스터를 사용하여 인증
DevOps 엔지니어 또는 개발자는 프로비저닝된 Tanzu Kubernetes Grid 클러스터에 연결하여 운영 및 관리합니다. Tanzu Kubernetes Grid 클러스터가 프로비저닝된 vSphere 네임스페이스에 대한 편집 또는 소유자 권한이 사용자 계정에 부여되면 계정이 cluster-admin 역할에 할당됩니다. 또는 kubernetes-admin
사용자를 사용하여 Tanzu Kubernetes Grid에 연결할 수도 있습니다. 사용자 또는 그룹을 기본 또는 사용자 지정 포드 보안 정책에 바인딩하여 개발자에게 Tanzu Kubernetes Grid 클러스터에 대한 액세스 권한을 부여할 수도 있습니다. 자세한 내용은 vCenter SSO 인증을 사용하여 감독자의 TKG 클러스터에 연결 및 외부 ID 제공자를 사용하여 감독자의 TKG 클러스터에 연결을 참조하십시오.
vSphere 네임스페이스 역할 권한
vSphere 관리자는 vSphere 네임스페이스의 DevOps 엔지니어 또는 개발자에게 보기, 편집 또는 소유자 권한을 부여합니다. 해당 사용자 또는 그룹은 vCenter Single Sign-On에서 또는 감독자로 구성된 외부 ID 제공자에서 사용할 수 있어야 합니다. 하나의 사용자 또는 그룹은 여러 vSphere 네임스페이스에 액세스할 수 있습니다. 각 vSphere 네임스페이스 역할은 다음 작업을 허용합니다.
역할 | 설명 |
---|---|
볼 수 있음 | 사용자 또는 그룹에 대한 읽기 전용 액세스. 사용자 또는 그룹은 감독자 제어부에 로그인하고 vSphere 네임스페이스(예: vSphere 포드 및 Tanzu Kubernetes Grid 클러스터 및 VM)에서 실행 중인 워크로드를 나열할 수 있습니다. |
편집할 수 있음 | 사용자 또는 그룹은 vSphere 포드, Tanzu Kubernetes Grid 클러스터 및 VM을 생성, 읽기, 업데이트 및 삭제할 수 있습니다. 관리자 그룹에 속한 사용자는 감독자의 모든 네임스페이스에 대한 편집 권한이 있습니다. |
소유자 | 소유자 권한이 있는 사용자 또는 그룹은 다음을 수행할 수 있습니다.
참고: 소유자 역할은
vCenter Single Sign-On에서 사용 가능한 사용자에 대해 지원됩니다. 외부 ID 제공자의 사용자 또는 그룹에는 소유자 역할을 사용할 수 없습니다.
|
vSphere 네임스페이스 생성 및 구성에 대한 자세한 내용은 vSphere 네임스페이스 생성 및 구성을 참조하십시오.
vSphere 관리자가 역할 사용 권한, 리소스 할당량 및 스토리지가 포함된 vSphere 네임스페이스를 구성한 후에는 감독자 제어부의 URL을 DevOps 엔지니어 및 개발자에게 제공하며, 이들은 이 URL을 사용하여 제어부에 로그인할 수 있습니다. 로그인하면 DevOps 엔지니어 및 개발자는 vCenter Server 시스템에 속한 동일한 ID 제공자로 구성된 감독자 전체에 사용 권한이 있는 vSphere 네임스페이스에 액세스할 수 있습니다. vCenter Server 시스템이 고급 연결 모드인 경우 DevOps 엔지니어 및 개발자는 링크드 모드 그룹에서 사용 가능한 모든 감독자에서 사용 권한이 있는 모든 vSphere 네임스페이스에 액세스할 수 있습니다. 감독자 제어부의 IP 주소는 NSX(VDS 네트워킹의 경우 로드 밸런서)에서 생성되는 가상 IP로, 감독자 제어부에 대한 액세스 지점으로 사용됩니다.
vSphere 관리자 사용 권한
개체 | 사용 권한 |
---|---|
vCenter Single Sign-On user | 관리자 그룹 |
vSphere 네임스페이스 user | 관리자 그룹의 멤버에게는 모든 vSphere 네임스페이스에 대한 편집 권한이 부여됩니다. |
인터페이스 | 작업 |
---|---|
vSphere Client | vSphere Client에 관리자로 로그인하면 다음을 수행할 수 있습니다.
|
kubectl | vCenter Single Sign-On 관리자 계정으로 감독자 제어부에 로그인한 경우 다음을 수행할 수 있습니다.
하지만 관리자 그룹의 일부인 계정으로 감독자 제어부에 로그인한 경우 클러스터 수준 리소스를 편집하거나 kubectl을 사용하여 vSphere 네임스페이스를 생성하거나 역할 바인딩을 생성할 수 없습니다. vSphere Client를 기본 인터페이스로 사용하여 리소스 할당량을 설정하고, vSphere 네임스페이스를 생성 및 구성하고, 사용자 사용 권한을 설정해야 합니다. |
DevOps 엔지니어 및 개발자 사용 권한
개체 | 사용 권한 |
---|---|
vSphere 네임스페이스 | 편집 또는 소유자 |
vCenter Single Sign-On user | 없음 또는 읽기 전용 |
DevOps 엔지니어 또는 개발자는 kubectl을 기본 인터페이스로 사용하여 vSphere IaaS control plane와 상호 작용합니다. 자신에게 할당된 vSphere 네임스페이스의 워크로드를 보고 실행하고 관리하려면 kubectl용 vSphere 플러그인을 통해 감독자 제어부에 로그인할 수 있어야 합니다. 따라서 사용자 계정에는 하나 이상의 vSphere 네임스페이스에 대한 편집 또는 소유자 권한이 필요합니다.
일반적으로 vSphere Client를 통해 감독자에 대한 관리 작업을 수행할 필요가 없습니다. 단, 경우에 따라 계정에 할당된 vSphere 네임스페이스의 리소스 및 워크로드를 보기 위해 vSphere Client에 로그인해야 할 수도 있습니다. 이 경우 vSphere에 대한 읽기 전용 권한이 필요할 수 있습니다.
vSphere 네임스페이스 권한
vSphere Client의 권한 이름 | 설명 | 필수 | API의 권한 이름 |
---|---|---|---|
디스크 서비스 해제 작업 허용 | 데이터스토어의 서비스 해제 작업이 가능합니다. | 데이터스토어 |
Namespaces.ManageDisks |
백업 워크로드 구성 요소 파일 | etcd 클러스터의 컨텐츠를 백업할 수 있습니다(VMware Cloud on AWS에만 사용됨). | 클러스터 |
Namespaces.Backup |
액세스 가능한 네임스페이스 나열 | 액세스 가능한 vSphere 네임스페이스를 나열할 수 있습니다. | 클러스터 |
Namespaces.ListAccess |
클러스터 전체 구성 수정 | 감독자 구성을 수정하고 vSphere 네임스페이스를 생성 및 삭제할 수 있습니다. |
클러스터 |
Namespaces.ManageCapabilities |
클러스터 전체 네임스페이스 셀프 서비스 구성 수정 | vSphere 네임스페이스 셀프 서비스 구성을 수정할 수 있습니다. | 클러스터 (활성화 및 비활성화용)템플릿 (구성 수정용)vCenter Server (템플릿 생성용) |
Namespaces.SelfServiceManage |
네임스페이스 구성 수정 | 리소스 할당, 사용자 사용 권한 및 컨텐츠 라이브러리 연결과 같은 vSphere 네임스페이스 구성 옵션을 수정할 수 있습니다. |
클러스터 |
Namespaces.Manage |
클러스터 기능 전환 | 클러스터 감독자 기능의 상태를 조작할 수 있습니다(VMware Cloud on AWS 경우에만 내부적으로 사용됨). | 클러스터 |
해당 없음 |
최신 버전으로 클러스터 업그레이드 | 감독자 업그레이드를 시작할 수 있습니다. | 클러스터 |
Namespaces.Upgrade |
감독자 서비스 권한
감독자 서비스 권한은 vSphere IaaS control plane 환경에서 감독자 서비스를 생성하고 관리할 수 있는 사용자를 제어합니다.
vSphere Client의 권한 이름 | 설명 | 필수 | API의 권한 이름 |
---|---|---|---|
감독자 서비스 관리 | 감독자 서비스를 생성, 업데이트 또는 삭제할 수 있습니다. 감독자에 감독자 서비스를 설치하고, 감독자 서비스 버전을 생성하거나 삭제할 수도 있습니다. | 클러스터 |
SupervisorServices.Manage |
VM 클래스 권한
VM 클래스 권한은 vSphere 네임스페이스에서 가상 시스템 클래스를 추가하고 제거할 수 있는 사용자를 제어합니다.
vSphere Client의 권한 이름 | 설명 | 필수 | API의 권한 이름 |
---|---|---|---|
가상 시스템 클래스 관리 | 감독자에서 vSphere 네임스페이스의 가상 시스템 클래스를 관리할 수 있습니다. |
클러스터 |
VirtualMachineClasses.Manage |
스토리지 보기 권한
스토리지 보기 권한이 있으면 vCenter Server에서 스토리지 정책을 볼 수 있으므로 vSphere 네임스페이스에 할당할 수 있습니다.
vSphere Client의 권한 이름 | 설명 | 필수 | API의 권한 이름 |
---|---|---|---|
서비스 구성 | 권한 있는 사용자가 모든 Storage Monitoring Service API를 사용하도록 합니다. 읽기 전용 Storage Monitoring Service API에 대한 권한에 를 사용합니다. |
루트 vCenter Server |
StorageViews.ConfigureService |
보기 | 권한 있는 사용자가 읽기 전용 Storage Monitoring Service API를 사용하도록 합니다. |
루트 vCenter Server |
StorageViews.View |