Cloud Composer 1 | Cloud Composer 2 | Cloud Composer 3
Halaman ini menjelaskan cara lingkungan Anda dapat mengakses jaringan VPC di Cloud Composer 3, memberikan petunjuk untuk menghubungkan lingkungan ke jaringan VPC, dan menjelaskan cara menonaktifkan koneksi yang telah dikonfigurasi sebelumnya.
Jika Anda ingin mengaktifkan atau menonaktifkan akses internet untuk komponen Airflow lingkungan Anda, lihat Mengubah jenis jaringan lingkungan (IP Pribadi atau Publik).
Jika Anda hanya ingin menonaktifkan atau mengaktifkan akses internet saat menginstal paket PyPI, lihat Mengonfigurasi akses internet saat menginstal paket PyPI.
Jika Anda ingin mengonfigurasi jaringan VPC Bersama, lihat Mengonfigurasi VPC Bersama untuk mengetahui informasi tentang cara mengonfigurasi project dan izin.
Tentang akses jaringan VPC
Di Cloud Composer 3, Anda dapat mengaktifkan akses ke jaringan VPC untuk lingkungan.
Jika Anda mengaktifkan akses ke jaringan VPC untuk lingkungan:
Komponen Airflow lingkungan Anda dapat mengakses endpoint jaringan pribadi di jaringan VPC Anda. Misalnya, kode DAG Anda dapat mengakses resource yang berada di jaringan VPC Anda melalui koneksi Airflow yang dikonfigurasi.
Jika lingkungan Anda menggunakan jaringan IP Pribadi, semua traffic internal kecuali traffic ke Google Services API akan dirutekan ke jaringan VPC Anda.
Bergantung pada cara Anda mengonfigurasi jaringan VPC, lingkungan IP Pribadi dapat memperoleh akses ke internet melalui jaringan VPC Anda.
Apa pun status akses jaringan VPC, akses ke Google Services API selalu dapat dilakukan.
Zona DNS Pribadi yang ditentukan di jaringan VPC Anda secara otomatis tersedia untuk komponen Airflow lingkungan Anda.
Lingkungan ini mencadangkan dua alamat IP di subnetwork VPC Anda.
Cloud Composer menggunakan lampiran jaringan untuk menghubungkan lingkungan Anda ke jaringan VPC:
Jika Anda menentukan jaringan VPC dan subnetwork, Cloud Composer akan membuat lampiran jaringan baru dalam project Anda. Lampiran ini dihapus setelah Anda menghapus lingkungan, menonaktifkan koneksi ke jaringan VPC, atau menimpa parameter koneksi VPC.
Jika Anda menentukan lampiran jaringan yang sudah ada, lampiran tersebut harus ditempatkan dalam project yang sama dengan lingkungan. Lampiran ini tidak dihapus setelah Anda menghapus lingkungan, menonaktifkan koneksi, atau menimpa parameter koneksi VPC.
Di jaringan VPC Bersama:
Pastikan Anda telah mengonfigurasi jaringan VPC Bersama untuk Cloud Composer. Baca bagian Mengonfigurasi VPC Bersama untuk mengetahui informasi tentang cara mengonfigurasi project dan izin untuk Cloud Composer.
Setelah jaringan VPC Bersama dikonfigurasi, Anda dapat menghubungkan lingkungan Anda ke jaringan VPC dari project host. Jika Anda menggunakan lampiran jaringan yang sudah ada, lampiran tersebut harus dibuat dalam project layanan (tempat lingkungan berada), dan dilampirkan ke jaringan VPC Bersama.
Tentang rentang IP internal lingkungan
Lingkungan Cloud Composer 3 memerlukan beberapa alamat IP untuk komponennya yang dijalankan di project tenant, seperti cluster lingkungan Anda dan proxy Cloud SQL. Alamat IP ini diambil dari rentang IP internal lingkungan.
Rentang IP internal default adalah
100.64.128.0/20
.Anda dapat menentukan rentang IP internal yang berbeda saat membuat lingkungan. Rentang ini harus menggunakan mask
/20
.Anda tidak dapat mengubah rentang IP internal lingkungan yang sudah ada.
Rentang IP internal berinteraksi dengan jaringan VPC Anda dengan cara berikut:
Rentang IP internal tidak boleh bertentangan dengan subnetwork VPC yang terhubung dengan lingkungan Cloud Composer. Koneksi dengan subnetwork VPC yang tumpang-tindih dengan rentang IP internal tidak dapat diaktifkan.
Jika rentang IP internal suatu lingkungan tumpang-tindih dengan rentang jaringan VPC Anda, endpoint dari jaringan VPC Anda yang memiliki alamat IP yang tumpang-tindih tidak akan dapat diakses dari lingkungan tersebut.
Misalnya, jika rentang internal adalah
100.64.128.0/20
, permintaan apa pun ke endpoint100.64.128.1
di jaringan VPC Anda akan gagal karena permintaan tidak keluar dari project tenant.Rentang IP internal tidak dicadangkan. Anda dapat menggunakan rentang IP internal yang sama untuk beberapa lingkungan tanpa penyiapan tambahan, karena jaringan VPC internal yang digunakan oleh lingkungan yang berbeda akan terpisah.
Anda dapat menggunakan alamat IP rentang internal untuk tujuan lain, selama DAG dan tugas di lingkungan Anda tidak membuat permintaan ke alamat tersebut.
Terhubung ke jaringan VPC
Konsol
Di Konsol Google Cloud, buka halaman Environments.
Pada daftar lingkungan, klik nama lingkungan Anda. Halaman Detail lingkungan akan terbuka.
Buka tab Konfigurasi lingkungan.
Di bagian Konfigurasi jaringan, temukan item Lampiran jaringan, lalu klik Edit.
Dalam dialog Network attachment:
Untuk membuat lampiran jaringan baru, dalam daftar Lampiran jaringan, pilih Buat lampiran jaringan baru. Dalam daftar Jaringan dan Subnetwork, pilih jaringan VPC dan subnetwork.
Untuk menggunakan lampiran jaringan yang ada, dalam daftar Lampiran jaringan, pilih lampiran.
Klik Simpan.
gcloud
Argumen Google Cloud CLI berikut menentukan parameter koneksi jaringan VPC:
--network
: ID jaringan VPC.--subnetwork
: ID subnetwork VPC.--network-attachment
: Menggunakan lampiran jaringan yang ada.
Lampiran jaringan baru
Untuk menghubungkan lingkungan ke jaringan VPC melalui lampiran jaringan baru, jalankan perintah Google Cloud CLI berikut:
gcloud beta composer environments update ENVIRONMENT_NAME \
--location LOCATION \
--network NETWORK_ID \
--subnetwork SUBNETWORK_ID
Ganti kode berikut:
ENVIRONMENT_NAME
: nama lingkunganLOCATION
: wilayah tempat lingkungan beradaNETWORK_ID
: ID jaringan VPCSUBNETWORK_ID
: ID subnetwork VPC
Contoh:
gcloud beta composer environments update example-environment \
--location us-central1 \
--network projects/example-project/global/networks/example-network \
--subnetwork projects/example-project/regions/us-central1/subnetworks/example-subnetwork
Lampiran jaringan yang ada
Untuk menghubungkan lingkungan ke jaringan VPC melalui lampiran jaringan baru, jalankan perintah Google Cloud CLI berikut:
gcloud beta composer environments update ENVIRONMENT_NAME \
--location LOCATION \
--network-attachment NETWORK_ATTACHMENT_ID
Ganti kode berikut:
ENVIRONMENT_NAME
: nama lingkunganLOCATION
: wilayah tempat lingkungan beradaNETWORK_ATTACHMENT_ID
: lampiran jaringan dalam formatprojects/{project}/regions/{region}/networkAttachments/{networkAttachment}
.
Contoh:
gcloud beta composer environments update example-environment \
--location us-central1 \
--network-attachment projects/example-project/regions/us-central1/networkAttachments/example-network-attachment
API
Buat permintaan
environments.patch
API.Dalam permintaan ini:
Untuk membuat lampiran jaringan baru:
Dalam parameter
updateMask
, tentukan maskconfig.node_config.network,config.node_config.subnetwork
.Dalam isi permintaan, di kolom
network
dansubnetwork
, tentukan ID subnetwork dan ID subnetwork Anda.
Untuk menggunakan lampiran jaringan yang ada:
Dalam parameter
updateMask
, tentukan maskconfig.node_config.composer_network_attachment
.Dalam isi permintaan, berikan nilai untuk lampiran jaringan yang ada dalam format
projects/{project}/regions/{region}/networkAttachments/{networkAttachment}
.
Contoh (lampiran jaringan baru):
// PATCH https://composer.googleapis.com/v1beta1/projects/example-project/
// locations/us-central1/environments/example-environment?updateMask=
// config.node_config.network,config.node_config.subnetwork
"config": {
"nodeConfig": {
"network": "projects/example-project/global/networks/example-network",
"subnetwork": "projects/example-project/regions/us-central1/subnetworks/example-subnetwork"
}
}
Contoh (lampiran jaringan yang ada):
// PATCH https://composer.googleapis.com/v1beta1/projects/example-project/
// locations/us-central1/environments/example-environment?updateMask=
// config.node_config.composer_network_attachment
"config": {
"nodeConfig": {
"composerNetworkAttachment": "projects/example-project/regions/us-central1/networkAttachments/example-network-attachment"
}
}
Terraform
Kolom berikut dalam blok node_config
menentukan parameter koneksi jaringan VPC:
network
: ID jaringan VPC.subnetwork
: ID subnetwork VPC.composer_network_attachment
: Menggunakan lampiran jaringan yang ada.
Lampiran jaringan baru
resource "google_composer_environment" "example" {
provider = google-beta
name = "ENVIRONMENT_NAME"
region = "LOCATION"
config {
node_config {
network = NETWORK_ID
subnetwork = SUBNETWORK_ID
}
}
}
Ganti kode berikut:
ENVIRONMENT_NAME
: nama lingkungan Anda.LOCATION
: wilayah tempat lingkungan berada.NETWORK_ID
: ID jaringan VPCSUBNETWORK_ID
: ID subnetwork VPC
Contoh (lampiran jaringan baru):
resource "google_composer_environment" "example" {
provider = google-beta
name = "example-environment"
region = "us-central1"
config {
node_config {
network = "projects/example-project/global/networks/example-network"
subnetwork = "projects/example-project/regions/us-central1/subnetworks/example-subnetwork"
}
... other configuration parameters
}
}
Lampiran jaringan yang ada
resource "google_composer_environment" "example" {
provider = google-beta
name = "ENVIRONMENT_NAME"
region = "LOCATION"
config {
node_config {
composer_network_attachment = NETWORK_ATTACHMENT_ID
}
}
}
Ganti kode berikut:
ENVIRONMENT_NAME
: nama lingkungan Anda.LOCATION
: wilayah tempat lingkungan berada.NETWORK_ATTACHMENT_ID
: ID lampiran jaringan.
Contoh (lampiran jaringan yang ada):
resource "google_composer_environment" "example" {
provider = google-beta
name = "example-environment"
region = "us-central1"
config {
node_config {
composer_network_attachment = projects/example-project/regions/us-central1/networkAttachments/example-network-attachment
}
... other configuration parameters
}
}
Menonaktifkan koneksi ke jaringan VPC
Konsol
Di Konsol Google Cloud, buka halaman Environments.
Pada daftar lingkungan, klik nama lingkungan Anda. Halaman Detail lingkungan akan terbuka.
Buka tab Konfigurasi lingkungan.
Di bagian Konfigurasi jaringan, temukan item Lampiran jaringan, lalu klik Edit.
Dalam dialog Network attachment, pilih None, lalu klik Save.
gcloud
Argumen --disable-vpc-connectivity
menonaktifkan koneksi jaringan VPC lingkungan Anda:
gcloud beta composer environments update ENVIRONMENT_NAME \
--location LOCATION \
--disable-vpc-connectivity
Ganti kode berikut:
ENVIRONMENT_NAME
: nama lingkunganLOCATION
: wilayah tempat lingkungan berada
Contoh:
gcloud beta composer environments update example-environment \
--location us-central1 \
--disable-vpc-connectivity
API
Buat permintaan
environments.patch
API.Dalam permintaan ini:
Dalam parameter
updateMask
, tentukan maskconfig.node_config.network,config.node_config.subnetwork
.Dalam isi permintaan, di kolom
network
dansubnetwork
, tentukan nilai kosong.
Contoh:
// PATCH https://composer.googleapis.com/v1beta1/projects/example-project/
// locations/us-central1/environments/example-environment?updateMask=
// config.node_config.network,config.node_config.subnetwork
"config": {
"nodeConfig": {
"network": "",
"subnetwork": ""
}
}
Terraform
Jaringan VPC tidak dapat dilepas menggunakan Terraform. Sebagai gantinya, Anda dapat melampirkan jaringan VPC yang berbeda sebagai penggantinya, atau melepas jaringan menggunakan alat lain seperti Google Cloud CLI.
Langkah selanjutnya
- Mengubah jenis jaringan lingkungan (IP Pribadi atau Publik)
- Mengonfigurasi akses internet saat menginstal paket PyPI