Cloud Composer 1 | Cloud Composer 2 | Cloud Composer 3
Halaman ini menjelaskan cara membuat lingkungan IP Pribadi yang menggunakan Private Service Connect, bukan peering VPC.
Untuk informasi umum tentang cara membuat lingkungan IP Pribadi, lihat Mengonfigurasi lingkungan IP pribadi.
Tentang Private Service Connect di Cloud Composer
Komponen lingkungan Anda didistribusikan antara tenant dan project pelanggan. Di lingkungan IP Pribadi, komponen yang berada di kedua project ini terhubung menggunakan peering VPC. Peering VPC memiliki beberapa batasan, termasuk batas jumlah maksimum peiring di VPC. Batas ini dapat menjadi lebih jelas jika Anda menggunakan jaringan berskala besar dengan lingkungan Cloud Composer.
Dengan dukungan Private Service Connect di Cloud Composer, lingkungan IP pribadi Anda berkomunikasi secara internal tanpa menggunakan peering VPC. Lingkungan tersebut menggunakan IP Pribadi dengan arsitektur PSC.
Sebelum memulai
Dukungan Private Service Connect hanya tersedia di Cloud Composer 2.
Anda hanya dapat mengaktifkan Private Service Connect saat membuat lingkungan baru. Anda tidak dapat mengalihkan lingkungan yang ada untuk menggunakan Private Service Connect.
Lingkungan Anda harus berupa lingkungan IP Pribadi. Karena peering VPC tidak digunakan, Anda tidak perlu menentukan rentang CIDR untuk instance Cloud SQL dan jaringan Cloud Composer internal.
Jika batasan kebijakan organisasi Disable Private Service Connect for Consumers menolak endpoint SERVICE_PRODUCER, Anda tidak dapat membuat lingkungan dengan Private Service Connect. Kebijakan ini tidak memengaruhi lingkungan Cloud Composer yang ada dengan Private Service Connect. Lingkungan tersebut dapat beroperasi saat kebijakan ini diaktifkan.
Mengaktifkan Private Service Connect saat Anda membuat lingkungan
Konsol
Untuk membuat lingkungan dengan Private Service Connect, pilih jenis konektivitas Private Service Connect saat Anda membuat lingkungan IP Pribadi. Kemudian, tentukan subjaringan untuk koneksi Private Service Connect.
Saat Anda membuat lingkungan IP Pribadi:
Di bagian Konfigurasi jaringan, luaskan item Tampilkan konfigurasi jaringan.
Di bagian Networking type, pilih opsi Private IP environment untuk membuat lingkungan IP Pribadi.
Di bagian Composer connectivity, pilih Private Service Connect.
Di menu drop-down Composer connection subnetwork, pilih subnet untuk endpoint Private Service Connect.
Anda dapat menggunakan subnetwork lingkungan.
Atau, Anda dapat menentukan subjaringan yang berbeda. Tindakan ini memberi Anda kontrol lebih besar atas rentang CIDR tempat alamat IP untuk endpoint PSC dipilih.Rentang ini dapat dibagikan oleh beberapa lingkungan Cloud Composer. Setiap lingkungan memerlukan satu alamat IP.
Tentukan parameter lain untuk lingkungan IP Pribadi Anda.
gcloud
Untuk membuat lingkungan dengan Private Service Connect, gunakan argumen --connection-subnetwork
saat Anda membuat lingkungan IP Pribadi. Kemudian, tentukan subjaringan untuk
koneksi Private Service Connect.
gcloud composer environments create ENVIRONMENT_NAME \
--location LOCATION \
--image-version composer-2.9.11-airflow-2.9.3 \
--enable-private-environment \
--web-server-allow-all \
--connection-subnetwork ENVIRONMENT_PSC_SUBNETWORK
Ganti:
ENVIRONMENT_NAME
dengan nama lingkungan.LOCATION
dengan region tempat lingkungan berada.ENVIRONMENT_PSC_SUBNETWORK
dengan URI subjaringan untuk endpoint Private Service Connect.Anda dapat menggunakan subnetwork lingkungan.
Atau, Anda dapat menentukan subjaringan yang berbeda. Tindakan ini memberi Anda lebih banyak kontrol atas rentang CIDR tempat alamat IP untuk endpoint PSC dipilih. Rentang ini dapat digunakan bersama oleh beberapa lingkungan Cloud Composer. Setiap lingkungan memerlukan satu alamat IP.
Contoh:
gcloud composer environments create example-environment \
--location us-central1 \
--image-version composer-2.9.11-airflow-2.9.3 \
--enable-private-environment \
--web-server-allow-all \
--connection-subnetwork "projects/example-project/regions/us-central1/subnetworks/default"
API
Buat
permintaan API environments.create
. Di resource Environment, tentukan parameter konfigurasi untuk koneksi Private Service Connect.
// POST https://composer.googleapis.com/v1/{parent=projects/*/locations/*}/environments
{
"name": "ENVIRONMENT_NAME",
"config": {
"softwareConfig": {
"imageVersion": "composer-2.9.11-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"
}
]
}
}
}
Ganti:
ENVIRONMENT_NAME
dengan nama lingkungan.ENVIRONMENT_NETWORK
dengan URI jaringan lingkungan Anda.ENVIRONMENT_SUBNETWORK
dengan URI subnetwork lingkungan Anda.ENVIRONMENT_PSC_SUBNETWORK
dengan URI subnetwork untuk endpoint PSC.Anda dapat menggunakan subnetwork lingkungan.
Atau, Anda dapat menentukan subjaringan yang berbeda. Tindakan ini memberi Anda lebih banyak kontrol atas rentang CIDR tempat alamat IP untuk endpoint PSC dipilih. Rentang ini dapat digunakan bersama oleh beberapa lingkungan Cloud Composer. Setiap lingkungan memerlukan satu alamat IP.
Contoh:
// POST https://composer.googleapis.com/v1/{parent=projects/*/locations/*}/environments
{
"name": "example-environment",
"config": {
"softwareConfig": {
"imageVersion": "composer-2.9.11-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
Saat Anda membuat lingkungan, kolom cloud_composer_connection_subnetwork
di blok private_environment_config
akan mengaktifkan 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.11-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"
}
}
}
}
Ganti:
ENVIRONMENT_NAME
dengan nama lingkungan.ENVIRONMENT_NETWORK
dengan URI jaringan lingkungan Anda.ENVIRONMENT_SUBNETWORK
dengan URI subnetwork lingkungan Anda.ENVIRONMENT_PSC_SUBNETWORK
dengan URI subnetwork untuk endpoint PSC.Anda dapat menggunakan subnetwork lingkungan.
Atau, Anda dapat menentukan subjaringan yang berbeda. Tindakan ini memberi Anda lebih banyak kontrol atas rentang CIDR tempat alamat IP untuk endpoint PSC dipilih. Rentang ini dapat digunakan bersama oleh beberapa lingkungan Cloud Composer. Setiap lingkungan memerlukan satu alamat IP.
Contoh:
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.11-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"
}
}
}
}
Langkah selanjutnya
- Mengonfigurasi lingkungan IP Pribadi
- Membuat lingkungan
- Arsitektur lingkungan
- Tentang lingkungan IP Pribadi