비공개 풀 구성 파일 스키마

비공개 풀 구성 파일(비공개 풀 구성 파일)에는 사양에 따라 비공개 풀을 만드는 Cloud Build 지침이 포함됩니다. 비공개 풀 구성 파일에는 비공개 풀에 사용할 디스크 크기 및 머신 유형과 같은 정보가 포함되어 있습니다. gcloud 도구 또는 Cloud Build API를 사용하여 비공개 풀을 만들고 관리하는 경우 비공개 풀 구성 파일이 필요합니다.

비공개 풀 구성 파일의 구조

YAML 또는 JSON 구문을 사용하여 비공개 풀 구성 파일을 작성할 수 있습니다. curl을 사용하여 비공개 풀을 만들고 관리하려면 비공개 풀 구성 파일을 JSON 형식으로 작성합니다. gcloud 도구를 사용하여 비공개 풀을 만들고 관리하려면 YAML 또는 JSON 형식으로 비공개 풀 구성 파일을 작성하세요.

비공개 풀 구성 파일의 구조는 다음과 같습니다.

YAML

privatePoolV1Config:
  networkConfig:
    egressOption: NO_PUBLIC_EGRESS
    peeredNetwork: 'PEERED_NETWORK'
    peeredNetworkIpRange: 'PEERED_NETWORK_IP_RANGE'
  workerConfig:
    diskSizeGb: 'PRIVATE_POOL_DISK_SIZE'
    machineType: PRIVATE_POOL_MACHINE_TYPE

JSON

{
  "privatePoolV1Config": {
    "networkConfig": {
      "egressOption": "NO_PUBLIC_EGRESS",
      "peeredNetwork": "PEERED_NETWORK",
      "peeredNetworkIpRange": "PEERED_NETWORK_IP_RANGE"
    },
    "workerConfig": {
      "diskSizeGb": "PRIVATE_POOL_DISK_SIZE",
      "machineType": "PRIVATE_POOL_MACHINE_TYPE"
    }
  }
}

비공개 풀 구성 파일의 필드는 다음과 같이 설명되어 있습니다.

networkConfig

이 필드는 선택 사항입니다. 서비스 프로듀서 네트워크와 VPC 네트워크를 피어링하는 경우에만 networkConfig를 지정합니다.

egressOption

이 필드는 선택 사항입니다. VPC 서비스 제어 경계 내에 비공개 풀을 만드는 경우 이 필드의 값을 NO_PUBLIC_EGRESS로 설정합니다. 비공개 풀 구성 파일에 이 필드를 포함하지 않으면 공개 이그레스가 사용 설정됩니다. 비공개 풀의 VPC 서비스 제어 설정에 대한 자세한 내용은 VPC 서비스 제어 사용을 참조하세요.

peeredNetwork

비공개 풀 구성 파일에 networkConfig 필드가 포함된 경우 필수 필드입니다. 이 필드의 값을 서비스 제작자 네트워크와 피어링된 VPC 네트워크의 네트워크 리소스 URL로 설정합니다. 네트워크 리소스 URL은 projects/NETWORK_PROJECT_ID/global/networks/NETWORK_NAME 형식이어야 합니다. 여기서 NETWORK_PROJECT_ID는 VPC 네트워크를 보유한 Google Cloud 프로젝트의 프로젝트 ID이고 NETWORK_NAME은 VPC 네트워크의 이름입니다. 값을 지정하지 않으면 Cloud Build는 기본적으로 서비스 프로듀서 네트워크를 사용합니다.

peeredNetworkIpRange

이 필드는 선택 사항입니다. 이 필드의 값을 설정하여 피어링된 네트워크의 할당된 범위 내에 VM을 할당할 수 있는 내부 IP 범위를 지정합니다. 크기 제한 또는 잘못된 시작 IP 등으로 인해 비공개 연결 범위 내에서 지정된 IP 범위를 할당할 수 없는 경우 비공개 풀을 만들 수 없습니다.

peeredNetworkIpRange'STARTING_IP/SUBNET_PREFIX_SIZE' 형식의 클래스 없는 도메인 간 라우팅 (CIDR) 표기법을 사용하여 지정됩니다. 이 필드를 사용하는 경우 SUBNET_PREFIX_SIZE를 지정해야 합니다. SUBNET_PREFIX_SIZE는 IP 범위의 크기를 결정합니다. 슬래시 (/)로 시작해야 하며 값은 29 이하여야 합니다.STARTING_IP 부분은 선택사항이며 범위의 시작 주소를 지정합니다. STARTING_IP를 지정하지 않으면 시작 주소가 비공개 연결 범위 내에서 자동으로 할당됩니다. peeredNetworkIpRange에 값을 지정하지 않으면 기본값 /24가 사용되며 256개 IP 범위의 시작 IP가 자동으로 할당됩니다.

SUBNET_PREFIX_SIZE 값은 29를 초과하지 않아야 합니다. 숫자가 클수록 더 큰 서브넷 프리픽스가 지정되므로 가능한 IP 수가 줄어들고 IP 범위가 더 작아집니다. IP 주소가 32비트이므로 프리픽스 크기가 /24이면 범위에 256개의 가능한 IP (8비트)가 허용되고 프리픽스 크기가 /29이면 가능한 IP (3비트)가 8개로 줄어듭니다. 최대 빌더 VM 수는 범위의 가용 IP 수 (해당 범위의 총 가능한 IP 수에서 2를 뺀 값)로 제한됩니다.

peeredNetworkIpRange 필드의 예시는 다음을 참조하세요.

  • 192.168.0.0/24는 192.168.0.0으로 시작하고 서브넷 프리픽스 크기가 24인 IP 범위를 지정합니다 (256개 IP, 254개 가용 IP 포함).
  • /29는 시작 IP가 자동으로 결정되고 서브넷 프리픽스 크기가 29인 범위를 지정합니다 (8개 IP, 6개 가용 IP 포함).

workerConfig

필수 입력란입니다. 여기에는 비공개 풀의 구성 옵션이 포함되어 있습니다.

diskSizeGb

이 필드는 선택 사항입니다. 이 필드를 사용하여 비공개 풀 인스턴스의 디스크 크기를 GB 단위로 지정합니다. 100 이상이고 4,000 이하인 값을 지정합니다. 비공개 풀 구성 파일에 이 필드를 포함하지 않거나 0을 이 필드의 값으로 지정하면 Cloud Build가 기본값 100을 사용합니다.

machineType

이 필드는 선택 사항입니다. 이 필드를 사용하여 비공개 풀 인스턴스의 Compute Engine 머신 유형을 지정합니다. 값을 지정하지 않으면 Cloud Build는 기본값인 e2-medium을 사용합니다. 그렇지 않으면 다음 머신 유형 중 하나를 지정합니다.

머신 유형

e2 n2d c3
e2-medium n2d-standard-2 c3-standard-4
e2-standard-2 n2d-standard-4 c3-standard-8
e2-standard-4 n2d-standard-8 c3-standard-22
e2-standard-8 n2d-standard-16 c3-standard-44
e2-standard-16 n2d-standard-32 c3-standard-88
e2-standard-32 n2d-standard-48 c3-standard-176
e2-highmem-2 n2d-standard-64 c3-highcpu-4
e2-highmem-4 n2d-standard-80 c3-highcpu-8
e2-highmem-8 n2d-standard-96 c3-highcpu-22
e2-highmem-16 n2d-standard-128 c3-highcpu-44
e2-highcpu-2 n2d-standard-224 c3-highcpu-88
e2-highcpu-4 n2d-highmem-2 c3-highcpu-176
e2-highcpu-8 n2d-highmem-4 c3-highmem-4
e2-highcpu-16 n2d-highmem-8 c3-highmem-8
e2-highcpu-32 n2d-highmem-16 c3-highmem-22
n2d-highmem-32 c3-highmem-44
n2d-highmem-48 c3-highmem-88
n2d-highmem-64 c3-highmem-176
n2d-highmem-80
n2d-highmem-96
n2d-highcpu-2
n2d-highcpu-4
n2d-highcpu-8
n2d-highcpu-16
n2d-highcpu-32
n2d-highcpu-48
n2d-highcpu-64
n2d-highcpu-80
n2d-highcpu-96
n2d-highcpu-128
n2d-highcpu-224

다음 표에는 리전별 머신 유형의 가용성이 나와 있습니다.

리전별 머신 유형 가용성

c3-standard-* c3-highcpu-* c3-highmem-* e2-* n2d-*
asia-northeast1 asia-southeast1 asia-southeast1 africa-south1 africa-south1
asia-southeast1 europe-west1 europe-west1 asia-east1 asia-east1
australia-southeast1 europe-west3 europe-west2 asia-east2 asia-east2
europe-west1 europe-west4 europe-west3 asia-northeast1 asia-northeast1
europe-west2 me-central2 europe-west4 asia-northeast2 asia-northeast2
europe-west3 us-central1 us-central1 asia-northeast3 asia-northeast3
europe-west4 us-east1 us-east1 asia-south1 asia-south1
europe-west9 us-east4 us-east4 asia-south2 asia-south2
me-central2 us-east5 us-east5 asia-southeast1 asia-southeast1
me-west1 us-west2 us-west1 asia-southeast2 asia-southeast2
northamerica-northeast1 us-west3 us-west2 australia-southeast1 australia-southeast1
southamerica-east1 us-west4 australia-southeast2 australia-southeast2
us-central1 europe-central2 europe-central2
us-east1 europe-north1 europe-north1
us-east4 europe-north2 europe-southwest1
us-east5 europe-southwest1 europe-west1
us-west1 europe-west1 europe-west10
us-west2 europe-west2 europe-west12
us-west3 europe-west3 europe-west2
us-west4 europe-west4 europe-west3
europe-west6 europe-west4
europe-west8 europe-west6
europe-west9 europe-west8
europe-west10 europe-west9
europe-west12 me-central1
me-central1 me-central2
me-central2 me-west1
me-west1 northamerica-northeast1
northamerica-northeast1 northamerica-northeast2
northamerica-northeast2 southamerica-east1
northamerica-south1 southamerica-west1
southamerica-east1 us-central1
southamerica-west1 us-east1
us-central1 us-east4
us-east1 us-east5
us-east4 us-south1
us-east5 us-west1
us-south1 us-west2
us-west1 us-west3
us-west2 us-west4
us-west3
us-west4

enableNestedVirtualization

이 필드는 선택 사항입니다. 비공개 풀에서 C3 머신 유형의 VM을 사용하는 경우 중첩된 가상화를 사용 설정하여 비공개 풀의 VM 내에서 다른 VM 인스턴스를 실행할 수 있습니다. 자세한 내용은 중첩된 가상화 정보를 참고하세요.

다음 단계