비공개 풀 구성 파일(비공개 풀 구성 파일)에는 사양에 따라 비공개 풀을 만드는 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 이상이고 2,000 이하인 값을 지정합니다. 비공개 풀 구성 파일에 이 필드를 포함하지 않거나 0
을 이 필드의 값으로 지정하면 Cloud Build가 기본값 100을 사용합니다.
machineType
이 필드는 선택 사항입니다. 이 필드를 사용하여 비공개 풀 인스턴스의 Compute Engine 머신 유형을 지정합니다. 다음 머신 유형 중 하나를 지정합니다.
e2-medium
e2-standard-2
e2-standard-4
e2-standard-8
e2-standard-16
e2-standard-32
e2-highmem-2
e2-highmem-4
e2-highmem-8
e2-highmem-16
e2-highcpu-2
e2-highcpu-4
e2-highcpu-8
e2-highcpu-16
e2-highcpu-32
값을 지정하지 않으면 Cloud Build는 기본값인 e2-standard-2
을 사용합니다.
다음 단계
- 비공개 풀에서 빌드 실행 방법 알아보기
- 비공개 풀 만들기 및 관리 방법 알아보기