비공개 풀 구성 파일(비공개 풀 구성 파일)에는 사양에 따라 비공개 풀을 만드는 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 인스턴스를 실행할 수 있습니다. 자세한 내용은 중첩된 가상화 정보를 참고하세요.
다음 단계
- 비공개 풀에서 빌드 실행 방법 알아보기
- 비공개 풀 만들기 및 관리 방법 알아보기