Un fichier de configuration de pool privé contient des instructions permettant à Cloud Build de créer un pool privé en fonction de vos spécifications. Un fichier de configuration de pool privé contient des informations telles que la taille du disque et le type de machine que vous souhaitez utiliser pour votre pool privé. Le fichier de configuration de pool privé est requis lorsque vous créez et gérez des pools privés à l'aide de l'outil gcloud
ou de l'API Cloud Build.
Structure d'un fichier de configuration de pool privé
Vous pouvez écrire le fichier de configuration du pool privé à l'aide de la syntaxe YAML ou JSON. Pour créer et gérer des pools privés à l'aide de curl
, écrivez le fichier de configuration du pool privé au format JSON. Pour créer et gérer des pools privés à l'aide de l'outil gcloud
, écrivez le fichier de configuration du pool privé au format YAML ou JSON.
Un fichier de configuration de pool privé présente la structure suivante :
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"
}
}
}
Les champs du fichier de configuration du pool privé sont expliqués ci-dessous :
networkConfig
Ce champ est facultatif. Spécifiez networkConfig
uniquement si vous appairez votre réseau VPC avec le réseau du producteur de services.
egressOption
Ce champ est facultatif. Définissez la valeur de ce champ sur NO_PUBLIC_EGRESS
si vous créez votre pool privé dans un périmètre VPC Service Controls. Si vous n'incluez pas ce champ dans le fichier de configuration du pool privé, la sortie publique est activée.
Pour en savoir plus sur la configuration de VPC Service Controls pour les pools privés, consultez la page Utiliser VPC Service Controls.
peeredNetwork
Ce champ est obligatoire si votre fichier de configuration de pool privé contient le champ networkConfig
. Définissez la valeur de ce champ sur l'URL de la ressource réseau du réseau VPC appairé au réseau du producteur de services. L'URL de la ressource réseau doit être au format
projects/NETWORK_PROJECT_ID/global/networks/NETWORK_NAME
,
où NETWORK_PROJECT_ID est l'ID du projet
le projet Google Cloud qui contient votre réseau VPC
NETWORK_NAME est le nom de votre réseau VPC.
Si vous ne spécifiez pas de valeur, Cloud Build utilise le réseau du producteur de services par défaut.
peeredNetworkIpRange
Ce champ est facultatif. Définissez la valeur de ce champ pour spécifier la plage d'adresses IP internes pouvant être attribuée aux VM dans la plage allouée au réseau associé. Si la plage d'adresses IP spécifiée ne peut pas être allouée dans la plage de la connexion privée, par exemple en raison de limites de taille ou d'une adresse IP de départ non valide, le pool privé ne peut pas être créé.
peeredNetworkIpRange
est spécifié au format 'STARTING_IP/SUBNET_PREFIX_SIZE'
. Si ce champ est utilisé, SUBNET_PREFIX_SIZE
doit être spécifié. SUBNET_PREFIX_SIZE
détermine la taille de la plage d'adresses IP. Il doit commencer par une barre oblique (/
) et sa valeur doit être inférieure ou égale à 29. La partie STARTING_IP
est facultative et spécifie l'adresse de départ de la plage. Si l'STARTING_IP
n'est pas spécifié, une adresse de début est automatiquement attribuée dans la plage de connexion privée. Si aucune valeur n'est spécifiée pour peeredNetworkIpRange
, la valeur par défaut /24
est utilisée, ce qui attribue automatiquement une adresse IP de départ avec une plage de 256 adresses IP.
La valeur de SUBNET_PREFIX_SIZE
ne doit pas dépasser 29. Plus le nombre est élevé, plus le préfixe de sous-réseau est grand, ce qui laisse moins d'adresses IP possibles et réduit la plage d'adresses IP. Étant donné qu'une adresse IP est de 32 bits, une taille de préfixe de /24
autorise 256 adresses IP possibles dans la plage (huit bits), tandis qu'une taille de préfixe de /29
laisse huit adresses IP possibles (trois bits). Le nombre maximal de VM de compilateur est limité au nombre d'adresses IP utilisables dans la plage (nombre total d'adresses IP possibles dans la plage moins deux).
Consultez ce qui suit pour obtenir des exemples de champ peeredNetworkIpRange
:
192.168.0.0/24
spécifie une plage d'adresses IP commençant par 192.168.0.0 avec une taille de préfixe de sous-réseau de 24 (256 adresses IP, avec 254 adresses IP utilisables)./29
spécifie une plage avec une adresse IP de départ déterminée automatiquement et une taille de préfixe de sous-réseau de 29 (huit adresses IP, avec six adresses IP utilisables).
workerConfig
Champ obligatoire. Il contient les options de configuration de votre pool privé.
diskSizeGb
Ce champ est facultatif. Utilisez ce champ pour spécifier la taille de disque pour votre instance de pool privé en Go. Spécifiez une valeur supérieure ou égale à
100 et inférieures ou égales à 2 000. Si vous n'incluez pas ce champ dans le fichier de configuration de votre pool privé ou si vous spécifiez 0
comme valeur de ce champ, Cloud Build utilise la valeur par défaut de 100.
machineType
Ce champ est facultatif. Utilisez ce champ pour spécifier le type de machine Compute Engine de votre instance de pool privé. Spécifiez l'un des types de machines suivants :
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
Si vous ne spécifiez pas de valeur, Cloud Build utilise la valeur par défaut e2-standard-2
.
Étape suivante
- Découvrez comment exécuter des compilations dans des pools privés.
- Découvrez comment créer et gérer des pools privés.