Menskalakan lingkungan

Cloud Composer 3 | Cloud Composer 2 | Cloud Composer 1

Halaman ini menjelaskan cara menskalakan lingkungan Cloud Composer.

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

  1. Di konsol Google Cloud , buka halaman Environments.

    Buka Environments

  2. Dalam daftar lingkungan, klik nama lingkungan Anda. Halaman Environment details akan terbuka.

  3. Buka tab Konfigurasi lingkungan.

  4. Di item Resources > Workloads configuration, klik Edit.

  5. Di item Resources > Number of schedulers, klik Edit.

  6. Di panel Scheduler configuration, di kolom Number of schedulers, tentukan jumlah penjadwal untuk lingkungan Anda.

  7. 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

  1. Buat permintaan API environments.patch.

  2. Dalam permintaan ini:

    1. Dalam parameter updateMask, tentukan masker config.workloadsConfig.schedulerCount.

    2. 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

  1. Di konsol Google Cloud , buka halaman Environments.

    Buka Environments

  2. Dalam daftar lingkungan, klik nama lingkungan Anda. Halaman Environment details akan terbuka.

  3. Buka tab Konfigurasi lingkungan.

  4. Di item Worker nodes > Node count, klik Edit.

  5. Di panel Konfigurasi node pekerja, di kolom Jumlah node, tentukan jumlah node di lingkungan Anda.

  6. 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 adalah 3.
  • 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

  1. Buat permintaan API environments.patch.

  2. Dalam permintaan ini:

    1. Dalam parameter updateMask, tentukan mask config.nodeCount.

    2. Dalam isi permintaan, tentukan jumlah node untuk lingkungan Anda.

  "config": {
    "nodeCount": NODE_COUNT
  }

Ganti kode berikut:

  • NODE_COUNT: jumlah node. Jumlah minimum node adalah 3.

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

  1. Di konsol Google Cloud , buka halaman Environments.

    Buka Environments

  2. Dalam daftar lingkungan, klik nama lingkungan Anda. Halaman Environment details akan terbuka.

  3. Buka tab Konfigurasi lingkungan.

  4. Di item Resources > Cloud SQL machine type, klik Edit.

  5. Di panel Konfigurasi Cloud SQL, di menu drop-down Jenis mesin Cloud SQL, pilih jenis mesin untuk instance Cloud SQL di lingkungan Anda.

  6. 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

  1. Buat permintaan API environments.patch.

  2. Dalam permintaan ini:

    1. Dalam parameter updateMask, tentukan masker config.databaseConfig.machineType.

    2. Di isi permintaan, tentukan jenis mesin untuk instance Cloud SQL.

{
  "config": {
    "databaseConfig": {
      "machineType": "SQL_MACHINE_TYPE"
    }
  }
}

Ganti kode berikut:

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:

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

  1. Di konsol Google Cloud , buka halaman Environments.

    Buka Environments

  2. Dalam daftar lingkungan, klik nama lingkungan Anda. Halaman Environment details akan terbuka.

  3. Buka tab Konfigurasi lingkungan.

  4. Di item Resources > Web server machine type, klik Edit.

  5. Di panel Web server configuration, pada menu drop-down Web server machine type, pilih jenis mesin untuk server web Airflow.

  6. 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:

Contoh:

gcloud composer environments update example-environment \
  --location us-central1 \
  --web-server-machine-type composer-n1-webserver-2

API

  1. Buat permintaan API environments.patch.

  2. Dalam permintaan ini:

    1. Dalam parameter updateMask, tentukan masker config.webServerConfig.machineType.

    2. Dalam isi permintaan, tentukan jenis mesin untuk server web.

{
  "config": {
    "webServerConfig": {
      "machineType": "WS_MACHINE_TYPE"
    }
  }
}

Ganti kode berikut:

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:

Contoh:

resource "google_composer_environment" "example" {
  name = "example-environment"
  region = "us-central1"

  config {
    web_server_config {
      machine_type = "composer-n1-webserver-2"
    }
}

Langkah berikutnya