Google Cloud 제품 및 서비스에 프로그래매틱 방식으로 액세스하려면 Cloud API를 사용해야 합니다. 이러한 API는 클라이언트 라이브러리를 통해 호출할 수 있는 간단한 JSON REST 인터페이스를 노출합니다.
Cloud Code를 사용하면 IDE에서 해당 클라이언트 라이브러리 및 문서와 결합된 Google Cloud 서비스 목록에 액세스하고, Cloud API를 찾아보고 사용 설정하며, Cloud 클라이언트 라이브러리를 프로젝트에 추가할 수 있습니다.
Cloud API 탐색
IDE 내에서 사용 가능한 모든 Google Cloud API를 탐색하려면 다음 단계를 따르세요.
- 활동 표시줄에서 Cloud Code - Cloud API 아이콘
을 클릭합니다.
- 사용 가능한 모든 API를 보려면 Google Cloud API 탐색기 트리를 펼칩니다. 탐색기는 Cloud API를 카테고리별로 그룹화합니다.
- API를 클릭하면 서비스 이름, 상태, 해당 클라이언트 라이브러리의 설치 안내, 관련 문서 등의 추가 세부정보를 볼 수 있습니다.
Cloud API 사용 설정
API 세부정보 페이지에서 프로젝트의 Cloud API를 빠르게 사용 설정하려면 다음 단계를 따르세요.
- Cloud API 세부정보 뷰에서 Cloud API를 사용 설정할 프로젝트를 선택합니다.
- API 사용 설정 버튼을 클릭합니다.
API가 사용 설정되면 이 변경사항을 확인하는 메시지가 표시됩니다.
프로젝트에 클라이언트 라이브러리 추가
Cloud Code를 사용하여 Cloud API를 탐색하고 사용 설정할 수 있을 뿐 아니라 프로젝트에 언어별 클라이언트 라이브러리를 추가할 수도 있습니다. 클라이언트 라이브러리를 설치해야 합니다. API 세부정보 페이지에는 각 언어별 설치 안내가 포함되어 있습니다.
인증 설정
필요한 API를 사용 설정하고 필요한 클라이언트 라이브러리를 추가한 다음에는 성공적으로 인증할 수 있도록 애플리케이션을 구성해야 합니다. 구성은 개발 유형 및 실행 중인 플랫폼에 따라 달라집니다.
관련 인증 단계를 완료하면 애플리케이션에서 인증할 수 있고 애플리케이션 배포 준비가 완료됩니다.
로컬 개발
Cloud Shell VM 인스턴스는 Compute Engine 기본 서비스 계정(GKE가 기본적으로 사용하는 서비스 계정)을 기본 서비스 계정으로 사용합니다. 즉, Cloud Shell에서 Cloud Code로 개발할 때 클라이언트 라이브러리를 사용할 때 추가 구성을 설정할 필요가 없습니다. 애플리케이션이 인증되었으며 로컬에서 실행할 준비가 되었습니다.
원격 개발
Google Kubernetes Engine
프로젝트 범위에 따라 GKE에서 Google Cloud 서비스를 인증하는 방법을 선택할 수 있습니다.
- (개발 전용)
- 다음 설정을 사용하여 GKE 클러스터를 만듭니다.
- Compute Engine 기본 서비스 계정(GKE가 기본적으로 사용하는 서비스 계정)을 사용하고 액세스 범위를 모든 Cloud API에 전체 액세스 허용으로 설정합니다(두 설정 모두 노드 풀 > 보안 섹션 내에서 액세스 가능).
Compute Engine 서비스 계정이 노드에 배포된 모든 워크로드에서 공유되기 때문에 이 메서드는 권한을 과도하게 프로비저닝하므로 개발에만 사용해야 합니다. - 클러스터에서 워크로드 아이덴티티가 사용 설정되어 있지 않은지 확인합니다 (클러스터 > 보안 섹션 내).
- Compute Engine 기본 서비스 계정(GKE가 기본적으로 사용하는 서비스 계정)을 사용하고 액세스 범위를 모든 Cloud API에 전체 액세스 허용으로 설정합니다(두 설정 모두 노드 풀 > 보안 섹션 내에서 액세스 가능).
- 서비스 계정에 필요한 역할을 할당합니다.
- Compute Engine 기본 서비스 계정을 사용하는 경우 올바른 IAM 역할이 이미 적용되었을 수 있습니다.
- ID에 부여할 수 있는 IAM 역할 유형과 사전 정의된 역할의 목록은 역할 이해 가이드를 참조하세요. 역할을 부여하는 단계는 리소스에 대한 액세스 권한 부여, 변경, 취소를 참조하세요.
- 다음 설정을 사용하여 GKE 클러스터를 만듭니다.
- (프로덕션에 권장됩니다.)
- GKE에서 Google Cloud 서비스를 인증하도록 워크로드 아이덴티티로 GKE 클러스터 및 애플리케이션을 구성합니다. 그러면 Kubernetes 서비스 계정이 Google 서비스 계정과 연결됩니다.
- Kubernetes 배포 YAML 파일에서
.spec.serviceAccountName
필드를 설정하여 Kubernetes 서비스 계정을 참조하도록 Kubernetes 배포를 구성합니다.
Cloud Code 템플릿으로 만든 앱에서 작업하는 경우 이 파일은 kubernetes-manifests 폴더 아래에 있습니다. - 액세스하려는 Google Cloud 서비스에 추가 역할이 필요한 경우 앱 개발에 사용 중인 Google 서비스 계정에 역할을 부여합니다.
- ID에 부여할 수 있는 IAM 역할 유형과 사전 정의된 역할의 목록은 역할 이해 가이드를 참조하세요. 역할을 부여하는 단계는 리소스에 대한 액세스 권한 부여, 변경, 취소를 참조하세요.
Cloud Run
- Cloud Run 애플리케이션을 배포하기 위한 새로운 고유한 서비스 계정을 만들려면 서비스 계정 페이지로 이동한 다음 보안 비밀이 저장된 프로젝트를 선택합니다.
- 서비스 계정 만들기를 클릭합니다.
- 서비스 계정 만들기 대화상자에 서비스 계정을 설명하는 이름을 입력합니다.
- 서비스 계정 ID를 고유하고 쉽게 알아볼 수 있는 값으로 변경한 후 만들기를 클릭합니다.
- 액세스하려는 Google Cloud 서비스에 추가 역할이 필요한 경우 해당 역할을 부여하고 계속을 클릭한 다음 완료를 클릭합니다.
- 서비스 계정을 배포 구성에 추가합니다.
- Cloud Code 상태 표시줄에서 Cloud Run: Deploy 명령어를 선택합니다.
- Cloud Run 배포 UI의 버전 설정에서 서비스 계정 필드에 서비스 계정을 지정합니다.
Cloud Run
프로젝트 범위에 따라 GKE에서 Google Cloud 서비스를 인증하는 방법을 선택할 수 있습니다.
- (개발 전용)
- 다음 설정을 사용하여 GKE 클러스터를 만듭니다.
- Compute Engine 기본 서비스 계정(GKE가 기본적으로 사용하는 서비스 계정)을 사용하고 액세스 범위를 모든 Cloud API에 전체 액세스 허용으로 설정합니다(두 설정 모두 노드 풀 > 보안 섹션 내에서 액세스 가능).
Compute Engine 서비스 계정이 노드에 배포된 모든 워크로드에서 공유되기 때문에 이 메서드는 권한을 과도하게 프로비저닝하므로 개발에만 사용해야 합니다.
- 클러스터에서 워크로드 아이덴티티가 사용 설정되어 있지 않은지 확인합니다 (클러스터 > 보안 섹션 내).
- Compute Engine 기본 서비스 계정(GKE가 기본적으로 사용하는 서비스 계정)을 사용하고 액세스 범위를 모든 Cloud API에 전체 액세스 허용으로 설정합니다(두 설정 모두 노드 풀 > 보안 섹션 내에서 액세스 가능).
- 서비스 계정에 필요한 역할을 할당합니다.
- Compute Engine 기본 서비스 계정을 사용하는 경우 올바른 IAM 역할이 이미 적용되었을 수 있습니다.
- ID에 부여할 수 있는 IAM 역할 유형과 사전 정의된 역할의 목록은 역할 이해 가이드를 참조하세요. 역할을 부여하는 단계는 리소스에 대한 액세스 권한 부여, 변경, 취소를 참조하세요.
- 다음 설정을 사용하여 GKE 클러스터를 만듭니다.
- (프로덕션에 권장됩니다.)
- GKE에서 Google Cloud 서비스를 인증하도록 워크로드 아이덴티티로 GKE 클러스터 및 애플리케이션을 구성합니다. 그러면 Kubernetes 서비스 계정이 Google 서비스 계정과 연결됩니다.
- 서비스 계정을 배포 구성에 추가합니다.
- Cloud Code 상태 표시줄에서 Cloud Run: Deploy 명령어를 선택합니다.
- Cloud Run 배포 UI의 버전 설정에서 서비스 계정 필드에 서비스 계정을 지정합니다.
- 액세스하려는 Google Cloud 서비스에 추가 역할이 필요한 경우 앱 개발에 사용 중인 Google 서비스 계정에 역할을 부여합니다.
- ID에 부여할 수 있는 IAM 역할 유형과 사전 정의된 역할의 목록은 역할 이해 가이드를 참조하세요. 역할을 부여하는 단계는 리소스에 대한 액세스 권한 부여, 변경, 취소를 참조하세요.