Cloud Composer 1 | Cloud Composer 2
Halaman ini menjelaskan cara untuk terhubung ke instance Cloud SQL yang menjalankan database Airflow di lingkungan Cloud Composer Anda dan menjalankan kueri SQL.
Misalnya, Anda mungkin ingin menjalankan kueri langsung pada database Airflow, membuat cadangan database, mengumpulkan statistik berdasarkan konten database, atau mengambil informasi kustom lainnya dari database.
Untuk lingkungan Cloud Composer, salah satu cara untuk melakukannya adalah dengan terhubung ke database Airflow dari VM di cluster GKE lingkungan Anda.
Mendapatkan nama dan region cluster lingkungan Anda
Di konsol Google Cloud, buka halaman Environments.
Pilih lingkungan Anda.
Buka tab Konfigurasi lingkungan.
Item cluster GKE mencantumkan nama dan region cluster GKE lingkungan Anda.
Misalnya, jika nilai parameter ini adalah
projects/example-project/locations/us-central1/clusters/us-central1-composer-exam-e-23125af4-gke
, nama cluster adalahus-central1-composer-exam-e-23125af4-gke
dan region clusternya adalahus-central1
.
Mendapatkan parameter koneksi database
Aliran udara 2
- Akses antarmuka web Airflow untuk lingkungan Anda.
Di antarmuka web Airflow, buka Admin > Konfigurasi.
Temukan parameter
sql_alchemy_conn
.Dapatkan nama pengguna, sandi, dan nama database dari nilai parameter ini.
Misalnya, jika nilai parameter ini adalah
postgresql+psycopg2://root:example-password@127.0.0.1:3306/composer-1-17-0-airflow-2-0-1-400fa094
, nama penggunanya adalahroot
, sandinya adalahexample-password
, dan nama database-nya adalahcomposer-1-17-0-airflow-2-0-1-400fa094
.
Aliran udara 1
Cloud Composer 2 hanya mendukung Airflow 2.
Mendapatkan alamat endpoint database
IP Publik
Di konsol Google Cloud, buka Kubernetes Engine > halaman Gateways, Services & Ingress:
Pilih layanan
airflow-sqlproxy-service
untuk cluster Anda. Anda dapat menggunakan nama cluster atau rentang IP yang tercantum untuk endpoint guna mencari item yang benar.Di halaman Detail layanan, temukan alamat IP pod yang menayangkan. Parameter ini tercantum di bagian pod penayangan, di kolom Endpoint.
IP Pribadi - PSC
Di konsol Google Cloud, buka halaman Network services > Private Service Connect:
Klik endpoint dengan nama lingkungan Anda. Misalnya, class ini dapat diberi nama
us-central1-example-environ-d9cb394f-psc
.Lingkungan Anda terhubung ke database melalui alamat IP yang ditentukan dalam baris IP address.
IP Pribadi - Peering VPC
Di konsol Google Cloud, buka Kubernetes Engine > halaman Gateways, Services & Ingress:
Pilih layanan
airflow-sqlproxy-service
untuk cluster Anda. Anda dapat menggunakan nama cluster atau rentang IP yang tercantum untuk endpoint guna mencari item yang benar.Di halaman Detail layanan, temukan alamat IP pod yang menayangkan. Parameter ini tercantum di bagian pod penayangan, di kolom Endpoint.
Membuat instance VM
Buat instance VM baru dengan parameter berikut:
Region. Pilih region yang sama dengan cluster Anda.
Zona. Pilih zona mana pun di region yang sama dengan cluster Anda.
Boot disk. Pilih distribusi Linux, misalnya,
Ubuntu 21.04 LTS
.Tentukan alamat IP di rentang IP cluster:
- Luaskan item Pengelolaan, keamanan, disk, jaringan, tenancy tunggal.
- Buka tab Jaringan.
- Di Network interfaces, luaskan item antarmuka default.
- Luaskan Tampilkan rentang IP alias.
- Di bagian Subnet range, pilih rentang IP
gke-services
untuk cluster Anda. Contohnya,gke-europe-west3-composer-exam7b206598-gke-services-115b26e7
. Anda memperoleh nama cluster pada langkah sebelumnya. - Di Rentang IP Alias, tentukan alamat IP untuk instance VM yang berada dalam rentang alamat IP dari rentang subnet yang ditentukan.
Menghubungkan ke instance VM dan menginstal paket klien SQL
Aliran udara 2
Hubungkan ke instance VM yang Anda buat pada langkah sebelumnya.
Instal paket
postgresql-client
.sudo apt-get update sudo apt-get install postgresql-client
Aliran udara 1
Cloud Composer 2 hanya mendukung Airflow 2.
Menghubungkan ke database Airflow
Saat terhubung ke instance VM, jalankan perintah berikut untuk terhubung ke database Airflow:
Aliran udara 2
psql --user=USERNAME --password \
--host=DB_ENDPOINT \
--port=3306 \
DB_NAME
Aliran udara 1
Cloud Composer 2 hanya mendukung Airflow 2.
Ganti dengan nilai yang diperoleh pada langkah sebelumnya:
USERNAME
dengan nama pengguna.DB_ENDPOINT
dengan alamat IP endpoint database yang Anda peroleh di awal dalam panduan ini.DB_NAME
dengan nama database.
Menjalankan kueri SQL
Perintah akan muncul. Anda dapat menjalankan kueri SQL dalam prompt ini. Contoh:
SELECT * FROM dag LIMIT 10;
Membuang konten database dan mentransfernya ke bucket
Untuk membuang konten database ke dalam file, jalankan perintah berikut:
Aliran udara 2
pg_dump --user=USERNAME --password \
--host=DB_ENDPOINT \
--port=3306 \
DB_NAME > DUMP_FILE
Aliran udara 1
Cloud Composer 2 hanya mendukung Airflow 2.
Ganti:
USERNAME
dengan nama pengguna.DB_ENDPOINT
dengan alamat IP endpoint database.DB_NAME
dengan nama database.DUMP_FILE
dengan nama file dump. Contoh,dump.sql
.
Untuk mentransfer file dump ke bucket Cloud Storage:
gsutil cp DUMP_FILE BUCKET_ADDRESS
Ganti:
DUMP_FILE
dengan nama file dump.BUCKET_ADDRESS
dengan alamat bucket. Contoh,gs://europe-west3-db-dump
.
Sebagai alternatif, Anda dapat mentransfer file dump secara lokal
dengan gcloud compute scp
.