이 문서에서는 IAM 프로젝트 관리자에게 리소스 액세스 권한을 요청하는 데 필요한 Identity and Access Management (IAM) 역할 및 권한을 간략하게 설명합니다. Google Distributed Cloud (GDC) 에어 갭에서 가상 머신 (VM)에 대한 태스크를 수행하려면 필요한 IAM 역할 및 권한이 있어야 합니다.
이 문서는 GDC 환경에서 VM을 만들고 관리하는 플랫폼 관리자 또는 애플리케이션 운영자 그룹의 개발자를 대상으로 합니다. 자세한 내용은 GDC 에어 갭 문서 대상을 참조하세요.
IAM 정보
Distributed Cloud는 특정 Distributed Cloud 리소스에 대한 세분화된 액세스를 위해 Identity and Access Management (IAM)를 제공하고 다른 리소스에 대한 무단 액세스를 방지합니다. IAM은 최소 권한의 원칙에 따라 작동하며 IAM 역할 및 권한을 사용하여 지정된 리소스에 대한 권한이 있는 사용자를 제어합니다.
시작하기 전에
gdcloud CLI 명령어를 사용하려면 gdcloud 명령줄 인터페이스 (CLI) 섹션에서 필요한 단계를 완료합니다. Google Distributed Cloud 에어 갭의 모든 명령어는 gdcloud 또는 kubectl CLI를 사용하며 운영체제 (OS) 환경이 필요합니다.
kubeconfig 파일 경로 가져오기
Management API 서버에 대해 명령어를 실행하려면 다음 리소스가 있어야 합니다.
kubeconfig 파일이 없는 경우 Management API 서버의 kubeconfig 파일을 로그인하고 생성합니다.
Management API 서버의 kubeconfig 파일 경로를 사용하여 이 안내의
MANAGEMENT_API_SERVER를 바꿉니다.
IAM 역할 요청
IAM 프로젝트 관리자에게 연락하여 프로젝트에 대한 다음 역할을 요청하세요.
가상 머신 프로젝트 관리자 (project-vm-admin): 프로젝트 네임스페이스에서 VM을 만들고, 수정하고, 나열하고, 삭제합니다.
가상 머신 이미지 프로젝트 관리자 (project-vm-image-admin): 프로젝트 네임스페이스에서 VM 이미지를 만들고, 나열하고, 삭제합니다.
모든 VM 역할은 VM이 있는 프로젝트의 네임스페이스에 바인딩되어야 합니다.
애플리케이션 운영자 (AO)의 모든 사전 정의된 역할 목록은 역할 설명을 참조하세요.
VM 리소스에 대한 액세스 권한을 부여하거나 받으려면 프로젝트 리소스에 대한 액세스 권한 부여를 참조하세요.
VM 리소스에 대한 사용자 액세스 권한 확인
GDC 콘솔 또는 gdcloud CLI에 로그인하는 단계에 따라 VM 리소스 및 워크로드에 대한 액세스 권한을 확인합니다.
콘솔
- 권한을 요청하거나 확인하는 사용자로 GDC 콘솔에 로그인합니다.
- GDC 콘솔 홈 화면에서 조직 및 프로젝트 이름을 확인하여 올바른 프로젝트에 있는지 확인합니다.
- 탐색 메뉴에서 가상 머신 > 인스턴스를 클릭합니다.
- 프로젝트에서 VM을 만들 수 있는 액세스 권한이 있는지 확인하려면 인스턴스 만들기를 클릭합니다.
- VM 생성을 진행할 수 있다면 VM을 만들 수 있는 권한이 있는 것입니다.
- 인스턴스 만들기 버튼을 사용할 수 없거나 권한이 부족하다는 오류 메시지가 표시되면 IAM 프로젝트 관리자에게 문의하여 VM이 있는 프로젝트의 네임스페이스에서 가상 머신 프로젝트 관리자 (
project-vm-admin) 역할을 요청하세요.
- 이미지를 보고 만들 수 있는지 확인하려면 가상 머신 > 가져오기 > 이미지 만들기를 클릭합니다.
- 이미지 가져오기를 진행할 수 있으면
VirtualMachineImageImport리소스를 만들 수 있는 권한이 있는 것입니다. - 가져오기 또는 이미지 만들기 옵션을 사용할 수 없거나 권한 오류가 발생하면 IAM 프로젝트 관리자에게 문의하여 VM이 있는 프로젝트의 네임스페이스에서 가상 머신 이미지 프로젝트 관리자 (
project-vm-image-admin) 역할을 요청하세요.
- 이미지 가져오기를 진행할 수 있으면
CLI
계정 사용자 인증 정보 또는 권한을 요청하거나 확인하는 사용자의 사용자 인증 정보로 로그인합니다.
kubectl명령어를 사용하여 본인 또는 사용자가 가상 머신을 만들 수 있는지 확인합니다.kubectl --kubeconfig MANAGEMENT_API_SERVER \ -n PROJECT \ auth can-i create virtualmachines.virtualmachine.gdc.goog다음 정의를 사용하여 변수를 바꿉니다.
변수 대체 MANAGEMENT_API_SERVERgdcloud auth login의 시스템 kubeconfig 파일입니다.PROJECTVM 이미지를 만드는 프로젝트 이름 - 출력이
yes이면PROJECT프로젝트에서 VM을 만들 수 있는 권한이 있는 것입니다. - 출력이
no이면 권한이 없는 것입니다. IAM 프로젝트 관리자에게 문의하여 VM이 있는 프로젝트의 네임스페이스에서 가상 머신 프로젝트 관리자(project-vm-admin) 역할을 요청하세요.
- 출력이
프로젝트 수준 VM 이미지에 액세스할 수 있는지 확인합니다.
kubectl명령어를 실행하여 프로젝트 수준에서VirtualMachineImage리소스를 만들고 사용할 수 있는지 확인합니다.kubectl --kubeconfig MANAGEMENT_API_SERVER auth can-i get virtualmachineimages.virtualmachine.gdc.goog -n PROJECT \ kubectl --kubeconfig MANAGEMENT_API_SERVER auth can-i create virtualmachineimageimports.virtualmachine.gdc.goog -n PROJECT다음 정의를 사용하여 변수를 바꿉니다.
변수 대체 MANAGEMENT_API_SERVERManagement API 서버 kubeconfig경로PROJECTVM 이미지를 만드는 프로젝트 이름 - 출력이
yes이면 PROJECT 프로젝트의 커스텀 VM 이미지에 액세스할 수 있는 권한이 있는 것입니다. - 출력이
no이면 권한이 없는 것입니다. IAM 프로젝트 관리자에게 문의하여 VM이 있는 프로젝트의 네임스페이스에서 가상 머신 이미지 프로젝트 관리자(project-vm-image-admin) 역할을 요청하세요.
- 출력이