이 문서에서는 네트워킹 옵션, 네트워킹 구성 시기, 네트워킹 작동 방법을 포함하여 Batch에 대한 네트워킹 개념을 설명합니다.
네트워킹 옵션
네트워킹 옵션은 Batch가 인터넷, 기타 Google Cloud 리소스 및 서비스와 같은 다른 소스와 연결되는 방식을 제어합니다.
Batch에는 다음과 같은 네트워킹 옵션이 있습니다.
- 작업에 대한 네트워크를 지정하거나 기본 네트워크를 사용합니다.
- 추가 네트워킹 제한사항을 사용합니다.
- 모든 VM 또는 특정 컨테이너의 작업 런타임 환경에 대한 외부 연결을 차단합니다.
- VPC 서비스 제어를 사용하여 배치 리소스 및 데이터를 보호합니다.
Batch에 사용할 네트워킹 옵션을 결정하는 방법에 대한 자세한 내용은 이 문서의 네트워킹 구성 시기를 참조하세요. 각 옵션의 네트워킹 개념에 대한 자세한 내용은 이 문서의 네트워킹 작동 방식을 참조하세요.
네트워킹을 구성하는 경우
이 섹션을 검토하여 Batch를 사용할 때 네트워킹을 구성할지 아니면 기본 네트워킹 구성을 사용할지 여부를 결정합니다.
다음과 같은 경우 Batch용 네트워킹을 구성해야 합니다.
- 프로젝트 또는 네트워크에서 VPC 서비스 제어를 사용하여 Batch의 네트워킹 액세스를 제한하는 경우 Batch에서 VPC 서비스 제어 사용 문서에 따라 네트워킹을 구성해야 합니다.
compute.vmExternalIpAccess
조직 정책 제약조건에서 프로젝트에 외부 IP 주소 없이 VM을 만들어야 하거나 네트워크가 비공개 Google 액세스를 사용하는 경우 모든 VM에 대한 외부 액세스를 차단하는 작업을 만들어야 합니다.기본 네트워크를 사용할 수 없거나 사용하지 않으려면 작업에 네트워크를 지정해야 합니다.
작업에 기본 네트워크를 사용할 수 있는지 확인하려면 다음을 확인합니다.
- 프로젝트에 기본 네트워크가 있습니다.
compute.skipDefaultNetworkCreation
조직 정책 제약조건이 사용 설정되지 않은 한 새 Google Cloud 프로젝트에는 기본 네트워크가 자동으로 포함됩니다. - 기본 네트워크는 현재 갖고 있는 특정 네트워킹 요구사항을 지원합니다. 특히 프로젝트의 기본 네트워크가 수정되면 사용자 또는 다른 사용자에게 문제가 발생할 수 있습니다. 기본 네트워크에 대한 자세한 내용은 이 문서의 기본 네트워킹 구성을 참조하세요.
- 프로젝트에 기본 네트워크가 있습니다.
필수는 아니지만 Batch 리소스 및 데이터의 보안을 개선하기 위해 네트워킹을 구성해야 할 수 있습니다. 예를 들어 컨테이너를 사용하고 모든 VM에 대한 외부 액세스를 차단하지 않는 작업의 보안을 강화하려면 선택적으로 하나 이상의 컨테이너에 대해서만 외부 액세스를 차단하는 작업을 만들 수 있습니다. 기본이 아닌 네트워크 또는 추가 네트워킹 제한을 사용하면 최소 권한 원칙을 구현하는 데 도움이 됩니다. Batch의 네트워킹을 구성하는 데 사용할 수 있는 옵션에 대한 자세한 내용은 이 문서의 네트워킹 작동 방식을 참조하세요.
그렇지 않고 네트워킹이 필요하지 않거나 구성하려는 경우 네트워킹 옵션을 지정하지 않고 기본 네트워킹 구성을 사용하여 작업을 만들 수 있습니다.
네트워킹 작동 방식
다음 섹션에서는 Batch의 네트워킹 개념을 설명합니다.
작업 네트워크
모든 작업은 Google Cloud Virtual Private Cloud(VPC) 네트워크와 해당 네트워크의 서브넷에 속해야 하는 Compute Engine 가상 머신(VM)에서 실행됩니다.
VPC 네트워크는 인터넷, 기타 Google Cloud 리소스 및 서비스와 같은 다른 소스에 VM을 연결합니다. 각 네트워크는 서브넷이라고도 하는 하나 이상의 서브네트워크로 구성되는데 이는 리전과 연결된 하나 이상의 IP 주소 범위입니다. 각 VM에는 내부 IP 주소와 서브넷에서 할당된 선택적 외부 IP 주소가 있는 네트워크 인터페이스가 있습니다. 네트워크에서 VM의 연결을 허용하거나 거부하도록 VPC 방화벽 규칙을 구성할 수 있습니다. 모든 네트워크에는 들어오는 모든 연결을 차단하고 나가는 모든 연결을 허용하는 묵시적인 방화벽 규칙이 있습니다. 일반적으로 VPC 네트워크는 프로젝트 내에서만 사용할 수 있지만 여러 프로젝트 간에 동일한 네트워크를 사용하려는 경우 공유 VPC를 사용할 수 있습니다.
요약하자면 모든 작업은 각각 IP 주소를 사용하여 네트워크의 방화벽 규칙으로 제어되는 연결을 만드는 VM에서 실행됩니다.
네트워킹 개념에 대한 자세한 내용은 Compute Engine 문서의 VM의 네트워킹 개요 및 VPC 문서의 Virtual Private Cloud(VPC) 개요를 참조하세요.
추가 네트워킹 제한사항
보안을 강화하기 위해 네트워킹 구성에는 네트워크 방화벽 규칙보다 더 많은 제한사항이 포함될 수 있습니다. 예를 들어 프로젝트 또는 조직은 조직 정책 제약조건 또는 다른 Google Cloud 서비스를 사용하여 네트워킹을 제한할 수 있습니다.
다음 섹션에서는 네트워킹을 추가로 제한하는 일반적인 옵션을 설명합니다.
작업 런타임 환경의 외부 연결 차단
다음 옵션 중 하나를 사용하여 작업에 대한 런타임 환경과의 외부 연결을 직접 차단할 수 있습니다.
작업의 모든 VM에 대한 외부 액세스를 차단합니다. 외부 IP 주소가 없는 VM에서 실행되는 작업을 만들려면 작업의 VM에 대한 외부 액세스를 차단합니다. 이 옵션은 네트워크 또는 프로젝트에 대부분 필수이거나 보안을 향상시키기 위해 선택적으로 사용됩니다.
외부 IP 주소가 없는 VM은 동일한 네트워크의 다른 노드에서 내부 IP 주소를 통해서만 액세스할 수 있으므로 다음을 수행하여 이러한 VM에 대한 액세스를 구성해야 합니다.
외부 IP 주소가 없는 VM에서 작업을 실행하려면 Cloud NAT 또는 비공개 Google 액세스를 사용하여 작업에 사용되는 API 및 서비스의 도메인에 대한 액세스를 허용합니다. 예를 들어 모든 Batch 작업은 Batch 및 Compute Engine API를 사용하며 종종 Cloud Logging API를 사용합니다.
사용자 또는 다른 사용자가 외부 IP 주소가 없는 VM에 연결해야 하는 경우 Compute Engine 문서의 내부 전용 VM의 연결 옵션 선택을 참조하세요.
작업의 컨테이너 한 개 이상에 대한 외부 액세스를 차단합니다. 작업이 컨테이너를 사용하고 모든 VM에 대해 외부 액세스를 아직 차단하지 않은 경우 각 컨테이너에 대한 외부 액세스를 차단할지 여부를 선택할 수 있습니다. 이 옵션은 선택사항입니다. 작업에 네트워크를 지정할 때 또는 기본 네트워킹 구성을 사용하는 작업을 만들 때 보안을 개선하는 데 사용될 수 있습니다.
VPC 서비스 제어를 사용한 Batch 리소스 및 데이터 보호
작업의 모든 VM에 대한 외부 액세스를 차단하는 것 외에도 VPC 서비스 제어를 사용하여 네트워킹을 선택적으로 제한할 수 있습니다.
작업을 실행하는 VM 또는 컨테이너의 경우에만 네트워킹을 제한할 수 있는 이 문서에 설명된 다른 네트워킹 옵션과 달리 VPC 서비스 제어를 사용하면 Google Cloud 서비스의 리소스와 데이터에 대한 네트워킹 액세스를 제한할 수 있습니다(예: Batch 작업 및 데이터).
VPC 서비스 제어를 사용하여 지정한 Google Cloud 서비스의 리소스와 데이터를 보호하는 경계를 만들 수 있습니다. 서비스 경계는 선택한 서비스와 리소스를 격리하여 경계 외부의 Google Cloud 서비스와의 연결 및 명시적으로 허용되지 않는 인터넷 연결을 차단합니다. 자세한 내용은 VPC 서비스 제어 문서와 Batch에서 VPC 서비스 제어 사용을 참조하세요.
기본 네트워킹 구성
작업을 만들 때 네트워킹 옵션을 지정하지 않으면 작업의 VM이 기본 네트워크 및 VM 위치의 서브넷을 사용합니다.
각 프로젝트에는 compute.skipDefaultNetworkCreation
조직 정책 제약조건을 사용하여 삭제하거나 사용 중지하지 않는 한 default
라는 기본 네트워크가 있습니다.
기본 네트워크는 자동 모드 네트워크이므로 각 리전에 하나의 서브넷이 있습니다. 모든 네트워크에 대한 묵시적인 방화벽 규칙 외에도 default
네트워크에는 일반적인 사용 사례에 액세스할 수 있는 자동 입력된 방화벽 규칙도 있습니다. 자세한 내용은 VPC 문서의 기본 네트워크에 자동 입력된 규칙을 참조하세요.
작업에 네트워킹 요구사항이 없고 네트워킹을 구성하지 않으려면 기본 네트워킹 구성을 사용하는 것이 좋습니다. 기본 네트워킹 구성을 사용하는 경우에 대한 자세한 내용은 이 문서의 네트워킹을 구성하는 경우를 참조하세요.
다음 단계
- Batch의 네트워킹을 구성합니다.
- 또는 기본 네트워킹 구성을 사용하는 작업을 만들려면 기본 작업 만들기 및 실행을 참조하세요.
- 커스텀 서비스 계정을 사용하여 작업에 대한 액세스를 제어할 수도 있습니다.