Cloud Composer 1 | Cloud Composer 2 | Cloud Composer 3
Cette page explique comment créer un environnement d'adresse IP privée qui utilise Private Service Connect au lieu des appairages de VPC.
Pour obtenir des informations générales sur la création d'environnements d'adresse IP privée, consultez la page Configurer un environnement d'adresse IP privée.
À propos de Private Service Connect dans Cloud Composer
Les composants de votre environnement sont répartis entre le locataire et le projet client. Dans les environnements d'adresse IP privée, les composants situés dans ces deux projets se connectent à l'aide d'appairages VPC. Les appairages VPC présentent certaines limites, y compris une limite de nombre maximal d'appairages dans un VPC. Ces limites peuvent devenir plus évidentes si vous utilisez des réseaux à grande échelle avec des environnements Cloud Composer.
Grâce à la compatibilité avec Private Service Connect de Cloud Composer, vos environnements d'adresses IP privées communiquent en interne sans appairage de VPC. Ces environnements utilisent l'adresse IP privée avec l'architecture PSC.
Avant de commencer
Private Service Connect n'est disponible que dans Cloud Composer 2.
Vous ne pouvez activer Private Service Connect que lorsque vous créez un environnement. Vous ne pouvez pas passer d'un environnement existant à Private Service Connect.
Votre environnement doit être un environnement d'adresse IP privée. Comme les appairages VPC ne sont pas utilisés, il n'est pas nécessaire de spécifier plages CIDR de l'instance Cloud SQL et de l'instance sur le réseau Cloud Composer.
Si l'option Disable Private Service Connect for Consumers contrainte de règle d'administration refuse SERVICE_PRODUCER, il est impossible de créer des environnements avec Private Service Connect Cette règle n'affecte pas les environnements Cloud Composer existants avec Private Service Connect. De tels environnements peuvent fonctionner lorsque cette règle est activée.
Activer Private Service Connect lorsque vous créez un environnement
Console
Pour créer un environnement avec Private Service Connect, procédez comme suit : sélectionnez le type de connectivité Private Service Connect lorsque vous créez Environnement IP privé. Spécifiez ensuite le sous-réseau pour la connexion Private Service Connect.
Lorsque vous créez un environnement d'adresse IP privée :
Dans la section Configuration du réseau, développez l'élément Afficher la configuration du réseau.
Dans la section Type de réseau, sélectionnez l'option Environnement d'adresse IP privée pour créer un environnement d'adresse IP privée.
Dans la section Connectivité de Composer sélectionnez Private Service Connect.
Dans la liste déroulante Composer connection subnetwork (Sous-réseau de connexion de Composer), sélectionnez le pour les points de terminaison Private Service Connect.
Vous pouvez utiliser le sous-réseau de votre environnement.
Vous pouvez également spécifier un sous-réseau différent. Cela vous permet de mieux contrôler la plage CIDR dans laquelle l'adresse IP du point de terminaison PSC est sélectionnée. Cette plage peut être partagée par plusieurs environnements Cloud Composer. Chaque environnement nécessite une adresse IP.
Spécifiez d'autres paramètres pour votre environnement d'adresse IP privée.
gcloud
Pour créer un environnement avec Private Service Connect, utilisez l'argument --connection-subnetwork
lorsque vous créez un environnement d'adresse IP privée. Spécifiez ensuite le sous-réseau pour la connexion Private Service Connect.
gcloud composer environments create ENVIRONMENT_NAME \
--location LOCATION \
--image-version composer-2.9.7-airflow-2.9.3 \
--enable-private-environment \
--web-server-allow-all \
--connection-subnetwork ENVIRONMENT_PSC_SUBNETWORK
Remplacez :
ENVIRONMENT_NAME
par le nom de l'environnement.LOCATION
par la région dans laquelle se trouve l'environnement.ENVIRONMENT_PSC_SUBNETWORK
par l'URI du sous-réseau pour points de terminaison Private Service Connect.Vous pouvez utiliser le sous-réseau de votre environnement.
Vous pouvez également spécifier un sous-réseau différent. Cela vous permet de mieux contrôler la plage CIDR dans laquelle l'adresse IP du point de terminaison PSC est sélectionnée. Cette plage peut être partagée par plusieurs Environnements Cloud Composer. Chaque environnement nécessite une adresse IP.
Exemple :
gcloud composer environments create example-environment \
--location us-central1 \
--image-version composer-2.9.7-airflow-2.9.3 \
--enable-private-environment \
--web-server-allow-all \
--connection-subnetwork "projects/example-project/regions/us-central1/subnetworks/default"
API
Rédigez une requête API environments.create
. Dans la ressource Environment, spécifiez les paramètres de configuration de la connexion Private Service Connect.
// POST https://composer.googleapis.com/v1/{parent=projects/*/locations/*}/environments
{
"name": "ENVIRONMENT_NAME",
"config": {
"softwareConfig": {
"imageVersion": "composer-2.9.7-airflow-2.9.3"
},
"nodeConfig": {
"network": "ENVIRONMENT_NETWORK",
"subnetwork": "ENVIRONMENT_SUBNETWORK"
},
"privateEnvironmentConfig": {
"enablePrivateEnvironment": true,
"privateClusterConfig": {
"enablePrivateEndpoint": false
},
"cloudComposerConnectionSubnetwork": "ENVIRONMENT_PSC_SUBNETWORK"
}
"webServerNetworkAccessControl": {
"allowedIpRanges": [
{
"value": "0.0.0.0/0",
"description": "Allows access from all IPv4 addresses"
},
{
"value": "::0/0",
"description": "Allows access from all IPv6 addresses"
}
]
}
}
}
Remplacez :
ENVIRONMENT_NAME
par le nom de l'environnement.ENVIRONMENT_NETWORK
par l'URI du réseau de votre environnement.ENVIRONMENT_SUBNETWORK
par l'URI du sous-réseau de votre environnement.ENVIRONMENT_PSC_SUBNETWORK
par l'URI du sous-réseau des points de terminaison PSC.Vous pouvez utiliser le sous-réseau de votre environnement.
Vous pouvez également spécifier un sous-réseau différent. Procéder à cette opération vous donne plus de contrôle sur la plage CIDR à partir de laquelle l'adresse IP le point de terminaison PSC est sélectionné. Cette plage peut être partagée par plusieurs Environnements Cloud Composer. Chaque environnement nécessite une adresse IP.
Exemple :
// POST https://composer.googleapis.com/v1/{parent=projects/*/locations/*}/environments
{
"name": "example-environment",
"config": {
"softwareConfig": {
"imageVersion": "composer-2.9.7-airflow-2.9.3"
},
"nodeConfig": {
"network": "projects/example-project/global/networks/default",
"subnetwork": "projects/example-project/regions/us-central1/subnetworks/default"
},
"privateEnvironmentConfig": {
"enablePrivateEnvironment": true,
"privateClusterConfig": {
"enablePrivateEndpoint": false
},
"cloudComposerConnectionSubnetwork": "projects/example-project/regions/us-central1/subnetworks/default"
}
"webServerNetworkAccessControl": {
"allowedIpRanges": [
{
"value": "0.0.0.0/0",
"description": "Allows access from all IPv4 addresses"
},
{
"value": "::0/0",
"description": "Allows access from all IPv6 addresses"
}
]
}
}
}
Terraform
Lorsque vous créez un environnement, la classe cloud_composer_connection_subnetwork
dans le bloc private_environment_config
active
Private Service Connect
resource "google_composer_environment" "example_environment" {
provider = google-beta
name = "ENVIRONMENT_NAME"
region = "LOCATION"
config {
software_config {
image_version = "composer-2.9.7-airflow-2.9.3"
}
node_config {
network = "ENVIRONMENT_NETWORK"
subnetwork = "ENVIRONMENT_SUBNETWORK"
}
private_environment_config {
// Other private IP environment parameters
cloud_composer_connection_subnetwork = "ENVIRONMENT_PSC_SUBNETWORK"
}
web_server_network_access_control {
allowed_ip_range {
value = "0.0.0.0/0"
description = "Allows access from all IPv4 addresses"
}
allowed_ip_range {
value = "::0/0"
description = "Allows access from all IPv6 addresses"
}
}
}
}
Remplacez :
ENVIRONMENT_NAME
par le nom de l'environnement.ENVIRONMENT_NETWORK
par l'URI du réseau de votre environnement.ENVIRONMENT_SUBNETWORK
par l'URI du sous-réseau de votre environnement.ENVIRONMENT_PSC_SUBNETWORK
par l'URI du sous-réseau des points de terminaison PSC.Vous pouvez utiliser le sous-réseau de votre environnement.
Vous pouvez également spécifier un sous-réseau différent. Procéder à cette opération vous donne plus de contrôle sur la plage CIDR à partir de laquelle l'adresse IP le point de terminaison PSC est sélectionné. Cette plage peut être partagée par plusieurs Environnements Cloud Composer. Chaque environnement nécessite une adresse IP adresse e-mail.
Exemple :
resource "google_composer_environment" "example" {
provider = google-beta
name = "example-environment"
region = "us-central1"
config {
environment_size = "ENVIRONMENT_SIZE_SMALL"
software_config {
image_version = "composer-2.9.7-airflow-2.9.3"
}
node_config {
network = "projects/example-project/global/networks/default"
subnetwork = "projects/example-project/regions/us-central1/subnetworks/default"
}
private_environment_config {
// Other private IP environment parameters
enable_private_endpoint = "true"
cloud_composer_connection_subnetwork = "projects/example-project/regions/us-central1/subnetworks/default"
}
web_server_network_access_control {
allowed_ip_range {
value = "0.0.0.0/0"
description = "Allows access from all IPv4 addresses"
}
allowed_ip_range {
value = "::0/0"
description = "Allows access from all IPv6 addresses"
}
}
}
}
Étape suivante
- Configurer des environnements d'adresse IP privée.
- Créer des environnements
- Architecture des environnements
- À propos des environnements d'adresse IP privée