이 문서에서는 Batch에서 VPC 서비스 제어를 사용하는 방법을 설명합니다. VPC 서비스 제어를 사용하면 특정 리소스를 서비스 경계로 격리하여 Google Cloud 서비스의 리소스와 데이터를 보호할 수 있습니다. 서비스 경계는 경계 외부의 Google Cloud 서비스와의 연결과 명시적으로 허용되지 않은 인터넷의 모든 연결을 차단합니다.
- Batch를 사용하도록 VPC 서비스 제어 서비스 경계를 구성하려면 이 문서의 Batch용 서비스 경계 구성을 참고하세요.
- 프로젝트 또는 네트워크에서 VPC 서비스 제어를 사용하여 Batch의 네트워킹 액세스를 제한하는 경우 필요한 서비스 경계에서 실행되도록 Batch 작업을 구성해야 합니다. 방법을 알아보려면 이 문서의 서비스 경계에서 실행되는 작업 만들기를 참고하세요.
네트워킹 개념과 네트워킹 구성 시기에 대한 자세한 내용은 Batch 네트워킹 개요를 참조하세요.
시작하기 전에
- Batch를 사용한 적이 없으면 Batch 시작하기를 검토하고 프로젝트 및 사용자 기본 요건을 완료하여 Batch를 사용 설정하세요.
-
Batch에서 VPC 서비스 제어를 사용하는 데 필요한 권한을 얻으려면 관리자에게 다음 IAM 역할을 부여해 달라고 요청하세요.
- 서비스 경계 구성: 프로젝트에 대한 Access Context Manager 편집자(
roles/accesscontextmanager.policyEditor
) -
작업 만들기:
-
프로젝트에 대한 Batch 작업 편집자(
roles/batch.jobsEditor
) -
기본적으로 기본 Compute Engine 서비스 계정인 작업의 서비스 계정에 대한 서비스 계정 사용자(
roles/iam.serviceAccountUser
)
-
프로젝트에 대한 Batch 작업 편집자(
- 프로젝트 또는 네트워크의 서비스 경계 식별: 프로젝트에 대한 Access Context Manager 리더(
roles/accesscontextmanager.policyReader
) - 작업에 대한 네트워크 및 서브넷 식별: 프로젝트의 Compute 네트워크 뷰어(
roles/compute.networkViewer
)
역할 부여에 대한 자세한 내용은 프로젝트, 폴더, 조직에 대한 액세스 관리를 참조하세요.
- 서비스 경계 구성: 프로젝트에 대한 Access Context Manager 편집자(
-
서비스 경계에서 실행되는 작업을 만드는 경우 작업에 사용할 네트워크를 식별해야 합니다. 서비스 경계에서 실행되는 작업에 지정하는 네트워크는 다음 요구사항을 충족해야 합니다.
- 네트워크는 작업과 동일한 프로젝트에 있는 Virtual Private Cloud(VPC) 네트워크이거나 작업의 프로젝트에서 호스팅되거나 공유되는 공유 VPC 네트워크입니다.
- 네트워크에는 작업을 실행할 위치에 서브네트워크(서브넷)가 포함되어 있습니다.
- 네트워크가 필요한 서비스 경계 내에 있으며 비공개 Google 액세스를 사용하여 작업에서 사용하는 API 및 서비스의 도메인에 대한 액세스를 허용합니다. 자세한 내용은 이 문서의 Batch의 서비스 경계 구성을 참고하세요.
Batch의 서비스 경계 구성
Batch의 서비스 경계를 구성하려면 다음 단계를 따르세요.
서비스 경계의 구성을 계획합니다. 서비스 경계의 구성 단계에 관한 개요는 VPC 서비스 제어 문서의 서비스 경계 세부정보 및 구성을 참고하세요.
Batch를 사용하려면 서비스 경계가 다음 요구사항을 충족해야 합니다.
제한된 서비스: 서비스 경계 내에서 Batch를 보호하려면 해당 경계에서 Batch 작업에 필요한 Google Cloud 서비스를 포함해야 합니다. 예를 들면 다음과 같은 서비스입니다.
- Batch API(
batch.googleapis.com
) - Cloud Logging API(
logging.googleapis.com
): 작업이 Cloud Logging에 로그를 쓰도록 하려면 필요합니다. (권장) - Container Registry API(
containerregistry.googleapis.com
): Container Registry의 이미지가 포함된 컨테이너를 사용하는 작업을 제출하는 경우에 필요합니다. - Artifact Registry API(
artifactregistry.googleapis.com
): Artifact Registry의 이미지가 포함된 컨테이너를 사용하는 작업을 제출하는 경우에 필요합니다. - Filestore API(
file.googleapis.com
): 작업에서 Filestore 파일 공유를 사용하는 경우 필요합니다. - Cloud Storage API(
storage.googleapis.com
): Cloud Storage 버킷을 사용하는 일부 작업에 필요합니다. Batch 서비스 에이전트가 사전 설치되지 않은 이미지를 Batch 작업에 사용하는 경우 필요합니다.
서비스 경계에서 이러한 각 서비스를 사용 설정하는 방법을 알아보려면 VPC 액세스 가능 서비스를 참고하세요.
또한 Batch를 제외한 각 서비스에 대해 서비스 경계가 VPC 서비스 제어 지원 제품 및 제한사항 문서에 나와 있는 해당 서비스의 요구사항을 충족하는지 확인해야 합니다.
- Batch API(
VPC 네트워크: 각 Batch 작업에는 VPC 네트워크가 필요하므로 서비스 경계에 Batch 작업을 실행할 수 있는 VPC 네트워크가 포함되어야 합니다. 서비스 경계 내에서 Batch 작업을 실행할 수 있는 VPC 네트워크를 구성하는 방법을 알아보려면 다음 문서를 참고하세요.
- 서비스 경계에서 VPC 네트워크를 사용하는 방법에 관한 개요는 서비스 경계의 VPC 네트워크 관리를 참고하세요.
- VPC 서비스 제어와 함께 비공개 Google 액세스를 사용하여 Batch 작업에 필요한 Google Cloud 서비스에 대한 액세스를 구성하는 방법은 Google API 및 서비스에 대한 비공개 연결 설정을 참조하세요.
- Batch 작업의 네트워킹 요구사항에 대한 자세한 내용은 작업 네트워킹 개요를 참조하세요.
이러한 요구사항을 충족하도록 새 서비스 경계를 만들거나 기존 서비스 경계를 업데이트합니다.
서비스 경계에서 실행되는 작업 만들기
서비스 경계에서 실행되는 작업을 만들 때는 작업이 실행되는 모든 VM에 대한 외부 액세스를 차단하고 작업이 필요한 API에 액세스할 수 있게 해주는 네트워크와 서브넷을 지정해야 합니다.
서비스 경계에서 실행되는 작업을 만들려면 모든 VM의 외부 액세스를 차단하는 작업 만들기 문서의 단계를 따르고 서비스 경계에서 실행되는 작업의 네트워크 요구사항을 충족하는 네트워크를 지정합니다.
다음 단계
- 작업을 만들거나 실행하는 데 문제가 있는 경우 문제 해결 참조하기
- 네트워킹에 대해 자세히 알아보기
- 작업 만들기에 대해 자세히 알아보기
- 작업 및 태스크 보기에 대해 자세히 알아보기