Cloud Composer 1 Cloud Composer 2
Auf dieser Seite wird erläutert, wie Sie eine private IP-Umgebung erstellen, die Private Service Connect anstelle von VPC-Peerings verwendet.
Allgemeine Informationen zum Erstellen privater IP-Umgebungen finden Sie unter Private IP-Umgebung konfigurieren.
Informationen zu Private Service Connect in Cloud Composer
Komponenten Ihrer Umgebung werden auf den Mandanten und das Kundenprojekt verteilt. In privaten IP-Umgebungen stellen die Komponenten in diesen beiden Projekten eine Verbindung über VPC-Peerings her. Für VPC-Peerings gelten einige Einschränkungen, einschließlich der maximalen Anzahl von Peerings in einer VPC. Diese Limits werden möglicherweise offensichtlicher, wenn Sie große Netzwerke mit Cloud Composer-Umgebungen verwenden.
Durch die Unterstützung von Private Service Connect in Cloud Composer kommunizieren Ihre privaten IP-Umgebungen intern ohne VPC-Peerings. Solche Umgebungen verwenden die private IP-Adresse mit PSC-Architektur.
Hinweis
Private Service Connect-Unterstützung ist nur in Cloud Composer 2 verfügbar.
Sie können Private Service Connect nur aktivieren, wenn Sie eine neue Umgebung erstellen. Es ist nicht möglich, eine vorhandene Umgebung auf die Verwendung von Private Service Connect umzustellen.
Die Umgebung muss eine private IP-Umgebung sein. Da keine VPC-Peerings verwendet werden, müssen Sie die CIDR-Bereiche für die Cloud SQL-Instanz und das Cloud Composer-Netzwerk nicht angeben.
Sie können Umgebungen mit Private Service Connect mithilfe von
gcloud
, Terraform und der REST API erstellen.Wenn die Dienstrichtlinien-Beschränkung „Private Service Connect für Nutzer deaktivieren“ und SERVICE_PRODUCER-Endpunkte ablehnen, können keine Umgebungen mit Private Service Connect erstellt werden. Als Problemumgehung können Sie diese Einschränkung deaktivieren, eine Umgebung erstellen und die Einschränkung dann wieder aktivieren.
Private Service Connect beim Erstellen einer Umgebung aktivieren
gcloud
Verwenden Sie zum Erstellen einer Umgebung mit Private Service Connect das Argument --connection-subnetwork
, wenn Sie eine private IP-Umgebung erstellen. Geben Sie dann das Subnetzwerk für die Private Service Connect-Verbindung an.
gcloud beta composer environments create ENVIRONMENT_NAME \
--location LOCATION \
--image-version composer-2.0.12-airflow-2.2.3 \
--enable-private-environment \
--connection-subnetwork ENVIRONMENT_PSC_SUBNETWORK
Ersetzen Sie:
ENVIRONMENT_NAME
durch den Namen der Umgebung.LOCATION
durch die Region, in der sich die Umgebung befindet.ENVIRONMENT_PSC_SUBNETWORK
durch den URI des Subnetzwerks für PSC-Endpunkte.Sie können das Subnetzwerk Ihrer Umgebung verwenden.
Alternativ können Sie ein anderes Subnetzwerk angeben. Dadurch haben Sie mehr Kontrolle über den CIDR-Bereich, aus dem die IP-Adresse für den PSC-Endpunkt ausgewählt wird. Dieser Bereich kann von mehreren Cloud Composer-Umgebungen gemeinsam verwendet werden. Jede Umgebung erfordert genau eine IP-Adresse.
Beispiel:
gcloud beta composer environments create example-environment \
--location us-central1 \
--image-version composer-2.0.12-airflow-2.2.3 \
--enable-private-environment \
--connection-subnetwork "projects/example-project/regions/us-central1/subnetworks/default"
API
Erstellen Sie eine API-Anfrage environments.create
. Geben Sie in der Umgebungsressource die Konfigurationsparameter für die Private Service Connect-Verbindung an.
// POST https://composer.googleapis.com/v1beta1/{parent=projects/*/locations/*}/environments
{
"name": "ENVIRONMENT_NAME",
"config": {
"softwareConfig": {
"imageVersion": "composer-2.0.12-airflow-2.2.3"
},
"nodeConfig": {
"network": "ENVIRONMENT_NETWORK",
"subnetwork": "ENVIRONMENT_SUBNETWORK"
},
"privateEnvironmentConfig": {
"enablePrivateEnvironment": true,
"privateClusterConfig": {
"enablePrivateEndpoint": false
},
"cloudComposerConnectionSubnetwork": "ENVIRONMENT_PSC_SUBNETWORK"
}
}
}
Ersetzen Sie:
ENVIRONMENT_NAME
durch den Namen der Umgebung.ENVIRONMENT_NETWORK
durch den URI des Netzwerks Ihrer Umgebung.ENVIRONMENT_SUBNETWORK
durch den URI des Subnetzwerks Ihrer Umgebung.ENVIRONMENT_PSC_SUBNETWORK
durch den URI des Subnetzwerks für PSC-Endpunkte.Sie können das Subnetzwerk Ihrer Umgebung verwenden.
Alternativ können Sie ein anderes Subnetzwerk angeben. Dadurch können Sie den CIDR-Bereich, über den die IP-Adresse für den PSC-Endpunkt ausgewählt wird, besser steuern. Dieser Bereich kann von mehreren Cloud Composer-Umgebungen gemeinsam verwendet werden. Für jede Umgebung ist eine IP-Adresse erforderlich.
Beispiel:
// POST https://composer.googleapis.com/v1beta1/{parent=projects/*/locations/*}/environments
{
"name": "example-environment",
"config": {
"softwareConfig": {
"imageVersion": "composer-2.0.12-airflow-2.2.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"
}
}
}
Terraform
Wenn Sie eine Umgebung erstellen, wird das Feld cloud_composer_connection_subnetwork
im Block private_environment_config
für Private Service Connect aktiviert.
resource "google_composer_environment" "example_environment" {
provider = google-beta
name = "ENVIRONMENT_NAME"
region = "LOCATION"
config {
software_config {
image_version = "composer-2.0.12-airflow-2.2.3"
}
node_config {
network = "ENVIRONMENT_NETWORK"
subnetwork = "ENVIRONMENT_SUBNETWORK"
}
private_environment_config {
// Other private IP environment parameters
cloud_composer_connection_subnetwork = "ENVIRONMENT_PSC_SUBNETWORK"
}
}
}
Ersetzen Sie:
ENVIRONMENT_NAME
durch den Namen der Umgebung.ENVIRONMENT_NETWORK
durch den URI des Netzwerks Ihrer Umgebung.ENVIRONMENT_SUBNETWORK
durch den URI des Subnetzwerks Ihrer Umgebung.ENVIRONMENT_PSC_SUBNETWORK
durch den URI des Subnetzwerks für PSC-Endpunkte.Sie können das Subnetzwerk Ihrer Umgebung verwenden.
Alternativ können Sie ein anderes Subnetzwerk angeben. Dadurch können Sie den CIDR-Bereich, über den die IP-Adresse für den PSC-Endpunkt ausgewählt wird, besser steuern. Dieser Bereich kann von mehreren Cloud Composer-Umgebungen gemeinsam verwendet werden. Für jede Umgebung ist eine IP-Adresse erforderlich.
Beispiel:
resource "google_composer_environment" "example" {
provider = google-beta
name = "example-environment"
region = "us-central1"
config {
software_config {
image_version = "composer-2.0.12-airflow-2.2.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
cloud_composer_connection_subnetwork = "projects/example-project/regions/us-central1/subnetworks/default"
}
}
}