Cloud Composer 3 | Cloud Composer 2 | Cloud Composer 1
Halaman ini menjelaskan cara menskalakan lingkungan Cloud Composer.
- Untuk mengetahui informasi tentang cara kerja penskalaan lingkungan, lihat Penskalaan lingkungan.
Melakukan penskalaan secara vertikal dan horizontal
Di Cloud Composer 1, Anda tidak menentukan resource CPU dan memori tertentu untuk komponen Cloud Composer dan Airflow seperti worker dan scheduler. Sebagai gantinya, Anda menentukan jumlah dan jenis mesin untuk node di cluster lingkungan Anda.
Opsi untuk penskalaan horizontal:
- Menyesuaikan jumlah node
- Menyesuaikan jumlah penjadwal
Opsi untuk penskalaan vertikal:
- Menyesuaikan jenis mesin instance Cloud SQL
- Menyesuaikan jenis mesin server web
Menyesuaikan parameter penjadwal
Lingkungan Anda dapat menjalankan lebih dari satu scheduler Airflow secara bersamaan. Gunakan beberapa penjadwal untuk mendistribusikan beban di antara beberapa instance penjadwal untuk performa dan keandalan yang lebih baik.
Jika lingkungan Anda menggunakan Airflow 2, Anda dapat menentukan sejumlah penjadwal hingga jumlah node di lingkungan Anda.
Saat menskalakan penjadwal, gunakan pertimbangan berikut:
Meningkatkan jumlah penjadwal tidak selalu meningkatkan performa Airflow.
Misalnya, hal ini dapat terjadi saat penjadwal tambahan tidak digunakan, dan menggunakan resource lingkungan Anda tanpa berkontribusi pada performa keseluruhan. Performa scheduler sebenarnya bergantung pada jumlah pekerja Airflow, jumlah DAG dan tugas yang berjalan di lingkungan Anda, serta konfigurasi Airflow dan lingkungan.
Sebaiknya mulai dengan dua penjadwal, lalu pantau performa lingkungan Anda.
Untuk mengetahui informasi selengkapnya tentang cara mengonfigurasi beberapa penjadwal, lihat dokumentasi Airflow.
Konsol
Di konsol Google Cloud , buka halaman Environments.
Dalam daftar lingkungan, klik nama lingkungan Anda. Halaman Environment details akan terbuka.
Buka tab Konfigurasi lingkungan.
Di item Resources > Workloads configuration, klik Edit.
Di item Resources > Number of schedulers, klik Edit.
Di panel Scheduler configuration, di kolom Number of schedulers, tentukan jumlah penjadwal untuk lingkungan Anda.
Klik Simpan.
gcloud
Parameter penjadwal Airflow berikut tersedia:
--scheduler-count: jumlah penjadwal di lingkungan Anda.
Jalankan perintah Google Cloud CLI berikut:
gcloud composer environments update ENVIRONMENT_NAME \
--location LOCATION \
--scheduler-count SCHEDULER_COUNT
Ganti kode berikut:
ENVIRONMENT_NAME: nama lingkungan.LOCATION: region tempat lingkungan berada.
Contoh:
gcloud composer environments update example-environment \
--location us-central1 \
--scheduler-count 2
API
Buat permintaan API
environments.patch.Dalam permintaan ini:
Dalam parameter
updateMask, tentukan maskerconfig.workloadsConfig.schedulerCount.Dalam isi permintaan, tentukan jumlah penjadwal untuk lingkungan Anda.
"config": {
"workloadsConfig": {
"scheduler": {
"count": SCHEDULER_COUNT
}
}
}
Ganti kode berikut:
ENVIRONMENT_NAME: nama lingkungan.LOCATION: region tempat lingkungan berada.SCHEDULER_COUNT: jumlah penjadwal.
Contoh:
// PATCH https://composer.googleapis.com/v1/projects/example-project/
// locations/us-central1/environments/example-environment?updateMask=
// config.workloadsConfig.scheduler
"config": {
"workloadsConfig": {
"scheduler": {
"count": 2
}
}
}
Terraform
Kolom berikut dalam blok workloads_config.scheduler mengontrol
parameter penjadwal Airflow. Setiap penjadwal menggunakan jumlah
resource yang ditentukan.
scheduler.count: jumlah penjadwal di lingkungan Anda.
resource "google_composer_environment" "example" {
provider = google-beta
name = "ENVIRONMENT_NAME"
region = "LOCATION"
config {
workloads_config {
scheduler {
count = SCHEDULER_COUNT
}
}
}
}
Ganti kode berikut:
ENVIRONMENT_NAME: nama lingkungan.LOCATION: region tempat lingkungan berada.SCHEDULER_COUNT: jumlah penjadwal.
Contoh:
resource "google_composer_environment" "example" {
provider = google-beta
name = "example-environment"
region = "us-central1"
config {
workloads_config {
scheduler {
count = 2
}
}
}
}
Menyesuaikan jumlah node
Anda dapat mengubah jumlah node di lingkungan Anda.
Jumlah ini sesuai dengan jumlah worker Airflow di lingkungan Anda. Selain menjalankan worker Airflow, node lingkungan Anda juga menjalankan scheduler Airflow dan komponen lingkungan lainnya.
Konsol
Di konsol Google Cloud , buka halaman Environments.
Dalam daftar lingkungan, klik nama lingkungan Anda. Halaman Environment details akan terbuka.
Buka tab Konfigurasi lingkungan.
Di item Worker nodes > Node count, klik Edit.
Di panel Konfigurasi node pekerja, di kolom Jumlah node, tentukan jumlah node di lingkungan Anda.
Klik Simpan.
gcloud
Argumen --node-count mengontrol jumlah node di lingkungan Anda:
gcloud composer environments update ENVIRONMENT_NAME \
--location LOCATION \
--zone NODE_ZONE \
--node-count NODE_COUNT
Ganti kode berikut:
ENVIRONMENT_NAME: nama lingkungan.LOCATION: region tempat lingkungan berada.NODE_COUNT: jumlah node. Jumlah minimum node adalah3.NODE_ZONE: zona Compute Engine untuk VM lingkungan Anda.
Contoh:
gcloud composer environments update example-environment \
--location us-central1 \
--zone us-central1-a \
--node-count 6
API
Buat permintaan API
environments.patch.Dalam permintaan ini:
Dalam parameter
updateMask, tentukan maskconfig.nodeCount.Dalam isi permintaan, tentukan jumlah node untuk lingkungan Anda.
"config": {
"nodeCount": NODE_COUNT
}
Ganti kode berikut:
NODE_COUNT: jumlah node. Jumlah minimum node adalah3.
Contoh:
// PATCH https://composer.googleapis.com/v1/projects/example-project/
// locations/us-central1/environments/example-environment?updateMask=
// config.nodeCount
"config": {
"nodeCount": 6
}
Terraform
Kolom node_count di blok node_config menentukan jumlah
node di lingkungan Anda.
resource "google_composer_environment" "example" {
config {
node_config {
node_count = NODE_COUNT
}
}
Ganti kode berikut:
NODE_COUNT: jumlah node.
Contoh:
resource "google_composer_environment" "example" {
name = "example-environment"
region = "us-central1"
config {
node_config {
node_count = 4
}
}
Menyesuaikan jenis mesin instance Cloud SQL
Anda dapat mengubah jenis mesin instance Cloud SQL yang menyimpan database Airflow lingkungan Anda.
Konsol
Di konsol Google Cloud , buka halaman Environments.
Dalam daftar lingkungan, klik nama lingkungan Anda. Halaman Environment details akan terbuka.
Buka tab Konfigurasi lingkungan.
Di item Resources > Cloud SQL machine type, klik Edit.
Di panel Konfigurasi Cloud SQL, di menu drop-down Jenis mesin Cloud SQL, pilih jenis mesin untuk instance Cloud SQL di lingkungan Anda.
Klik Simpan.
gcloud
Argumen --cloud-sql-machine-type mengontrol jenis mesin
instance Cloud SQL di lingkungan Anda.
Jalankan perintah Google Cloud CLI berikut:
gcloud composer environments update ENVIRONMENT_NAME \
--location LOCATION \
--cloud-sql-machine-type SQL_MACHINE_TYPE
Ganti kode berikut:
ENVIRONMENT_NAME: nama lingkungan.LOCATION: region tempat lingkungan berada.SQL_MACHINE_TYPE: jenis mesin untuk instance Cloud SQL.
Contoh:
gcloud composer environments update example-environment \
--location us-central1 \
--cloud-sql-machine-type db-n1-standard-2
API
Buat permintaan API
environments.patch.Dalam permintaan ini:
Dalam parameter
updateMask, tentukan maskerconfig.databaseConfig.machineType.Di isi permintaan, tentukan jenis mesin untuk instance Cloud SQL.
{
"config": {
"databaseConfig": {
"machineType": "SQL_MACHINE_TYPE"
}
}
}
Ganti kode berikut:
SQL_MACHINE_TYPE: jenis mesin untuk instance Cloud SQL.
Contoh:
// PATCH https://composer.googleapis.com/v1/projects/example-project/
// locations/us-central1/environments/example-environment?updateMask=
// config.databaseConfig.machineType
{
"config": {
"databaseConfig": {
"machineType": "db-n1-standard-2"
}
}
}
Terraform
Kolom machine_type dalam blok database_config menentukan
jenis mesin untuk instance Cloud SQL.
resource "google_composer_environment" "example" {
config {
database_config {
machine_type = "SQL_MACHINE_TYPE"
}
}
}
Ganti kode berikut:
SQL_MACHINE_TYPE: jenis mesin untuk instance Cloud SQL.
Contoh:
resource "google_composer_environment" "example" {
name = "example-environment"
region = "us-central1"
config {
database_config {
machine_type = "db-n1-standard-2"
}
}
Menyesuaikan jenis mesin server web
Anda dapat mengubah jenis mesin untuk server web Airflow di lingkungan Anda.
Konsol
Di konsol Google Cloud , buka halaman Environments.
Dalam daftar lingkungan, klik nama lingkungan Anda. Halaman Environment details akan terbuka.
Buka tab Konfigurasi lingkungan.
Di item Resources > Web server machine type, klik Edit.
Di panel Web server configuration, pada menu drop-down Web server machine type, pilih jenis mesin untuk server web Airflow.
Klik Simpan.
gcloud
Argumen --web-server-machine-type mengontrol jenis mesin
instance server web Airflow di lingkungan Anda.
Jalankan perintah Google Cloud CLI berikut:
gcloud composer environments update ENVIRONMENT_NAME \
--location LOCATION \
--web-server-machine-type WS_MACHINE_TYPE
Ganti kode berikut:
ENVIRONMENT_NAME: nama lingkungan.LOCATION: region tempat lingkungan berada.WS_MACHINE_TYPE: jenis mesin untuk instance server web Airflow.
Contoh:
gcloud composer environments update example-environment \
--location us-central1 \
--web-server-machine-type composer-n1-webserver-2
API
Buat permintaan API
environments.patch.Dalam permintaan ini:
Dalam parameter
updateMask, tentukan maskerconfig.webServerConfig.machineType.Dalam isi permintaan, tentukan jenis mesin untuk server web.
{
"config": {
"webServerConfig": {
"machineType": "WS_MACHINE_TYPE"
}
}
}
Ganti kode berikut:
WS_MACHINE_TYPE: jenis mesin untuk instance server web Airflow.
Contoh:
// PATCH https://composer.googleapis.com/v1/projects/example-project/
// locations/us-central1/environments/example-environment?updateMask=
// config.webServerConfig.machineType
{
"config": {
"webServerConfig": {
"machineType": "composer-n1-webserver-2"
}
}
}
Terraform
Kolom machine_type di blok web_server_config menentukan
jenis mesin untuk instance server web Airflow.
resource "google_composer_environment" "example" {
config {
web_server_config {
machine_type = "WS_MACHINE_TYPE"
}
}
}
Ganti kode berikut:
WS_MACHINE_TYPE: jenis mesin untuk instance server web Airflow.
Contoh:
resource "google_composer_environment" "example" {
name = "example-environment"
region = "us-central1"
config {
web_server_config {
machine_type = "composer-n1-webserver-2"
}
}
Langkah berikutnya
- Penskalaan dan performa lingkungan
- Harga Cloud Composer
- Memperbarui lingkungan
- Arsitektur lingkungan