Membuat lingkungan runner

Halaman ini menjelaskan proses pembuatan lingkungan runner yang akan menjalankan pipeline orkestrasi Anda.

Tentang lingkungan runner

Setiap lingkungan deployment harus memiliki lingkungan runner. Managed Airflow adalah mesin orkestrasi yang menjalankan pipeline Anda setelah di-deploy. Lingkungan runner adalah lingkungan Managed Airflow yang telah Anda tetapkan ke lingkungan deployment.

Sebelum memulai

  • Saat ini, satu-satunya runner yang tersedia untuk Orchestration Pipelines di Google Cloud adalah Managed Service untuk Apache Airflow. Semua Managed Airflow kuota dan batas sistem berlaku. Lihat Harga Managed Airflow untuk mengetahui informasi selengkapnya tentang biaya lingkungan runner.

  • Orchestration Pipelines dapat berjalan di lingkungan runner Managed Airflow (Gen 3) dan (Gen 2). Di Managed Airflow (Gen 3), Anda dapat menggunakan Airflow 3 dan Airflow 2.

  • Paket Orchestration Pipelines telah diinstal sebelumnya di Managed Airflow mulai dari versi berikut:

    • composer-3-airflow-3.1.7-build.5
    • composer-3-airflow-2.11.1-build.1, composer-3-airflow-2.10.5-build.34, dan composer-3-airflow-2.9.3-build.54
    • composer-2.16.11-airflow-2.11.1, composer-2.16.11-airflow-2.10.5

    Jika menggunakan versi Managed Airflow yang lebih lama, Anda dapat Menginstal paket orchestration-pipelines dari PyPI secara manual.

  • Perkiraan waktu untuk membuat lingkungan Managed Airflow adalah 25 menit.

  • Anda dapat membuat lingkungan Managed Airflow di Google Cloud konsol, gcloud CLI, dan Terraform. Panduan ini hanya menunjukkan perintah gcloud CLI. Untuk mengetahui petunjuk dan contoh pendekatan lainnya, lihat Membuat lingkungan di dokumentasi Managed Airflow.

  • Konfigurasi default yang disediakan dalam panduan ini membuat lingkungan Managed Airflow IP Publik. Managed Airflow menyediakan banyak opsi lainnya untuk konfigurasi jaringan dan keamanan. Untuk mengetahui informasi selengkapnya tentang berbagai cara menyiapkan lingkungan runner, lihat Membuat lingkungan di dokumentasi Managed Airflow.

Meninjau peran IAM yang diperlukan

Untuk mendapatkan izin yang Anda perlukan untuk membuat lingkungan runner di project, minta administrator Anda untuk memberi Anda peran berikut:

  • Peran Administrator Objek Lingkungan dan Penyimpanan (composer.environmentAndStorageObjectAdmin) dan Pengguna Akun Layanan (iam.serviceAccountUser) untuk membuat dan mengelola lingkungan di Managed Service untuk Apache Airflow dan mengelola objek di bucket yang terkait dengan lingkungan ini. Untuk mengetahui informasi selengkapnya tentang peran pengguna ini, lihat Memberikan peran kepada pengguna di dokumentasi Managed Service untuk Apache Airflow.

Mengaktifkan Cloud Composer API dan API untuk tindakan

  1. Aktifkan Cloud Composer API. Untuk mengetahui daftar lengkap layanan yang digunakan oleh Managed Airflow, lihat Layanan yang diperlukan oleh Managed Airflow.
  2. Aktifkan API untuk Google Cloud layanan yang ingin Anda gunakan (seperti Dataproc API).

Membuat akun layanan baru untuk lingkungan runner dan memberikan peran IAM

Akun layanan lingkungan runner digunakan untuk membuat lingkungan Managed Service untuk Apache Airflow baru dan menjalankan semua pipeline orkestrasi yang Anda deploy ke lingkungan tersebut.

Minta administrator Anda untuk melakukan hal berikut:

  1. Buat akun layanan baru seperti yang dijelaskan dalam dokumentasi Identity and Access Management.

  2. Berikan peran Composer Worker (composer.worker). Peran ini memberikan kumpulan izin yang diperlukan dalam sebagian besar kasus.

    Untuk mengakses resource lain di project Anda Google Cloud , berikan izin tambahan untuk mengakses resource tersebut ke akun layanan ini. Tambahkan izin tambahan ke akun layanan ini hanya jika diperlukan untuk pengoperasian pipeline orkestrasi Anda.

  3. Jika ingin menggunakan lingkungan Managed Airflow (Gen 2), ikuti petunjuk di Memberikan izin yang diperlukan ke akun layanan Managed Airflow untuk memberikan izin tambahan.

  4. Berikan izin yang akan diperlukan oleh pipeline Anda. Semua tugas orkestrasi dalam pipeline akan dijalankan oleh akun layanan lingkungan runner ini, sehingga Anda harus memberikan semua izin yang diperlukan secara manual di akun layanan ini.

    Misalnya, jika pipeline Anda menggunakan tindakan yang berjalan di cluster sementara Managed Service untuk Apache Spark, akun layanan lingkungan runner harus memiliki izin untuk membuat dan menghapus cluster Managed Service untuk Apache Spark, serta memicu dan mengelola tugas Managed Service untuk Apache Spark. Selain itu, Dataproc API harus diaktifkan.

Membuat lingkungan Managed Service untuk Apache Airflow

Buat lingkungan Managed Service untuk Apache Airflow, dengan pertimbangan berikut.

  • Nama lingkungan: nama apa pun. Anda akan menggunakan nama ini nanti untuk [men-deploy][op-deploy] pipeline Anda. Contoh: example-runner.
  • Versi image: versi Managed Service untuk Apache Airflow dan Airflow yang akan digunakan. Di gcloud CLI, Anda dapat menggunakan alias yang mengarah ke versi default, misalnya, composer-3-airflow-3, atau composer-2-airflow-2.
  • Lokasi: lokasi mana pun. Contoh: us-central1.
  • Akun layanan: akun layanan yang telah Anda buat untuk lingkungan ini.

Contoh perintah gcloud CLI:

gcloud composer environments create example-runner \
  --location us-central1 \
  --image-version composer-3-airflow-3 \
  --service-account "example-account@example-project.iam.gserviceaccount.com"

Contoh konfigurasi beban kerja yang direkomendasikan untuk Pratinjau (Anda selalu dapat meningkatkan atau menurunkan skalanya nanti):

gcloud composer environments create example-runner \
  --location us-central1 \
  --image-version composer-3-airflow-3 \
  --service-account "example-account@example-project.iam.gserviceaccount.com" \
  --scheduler-cpu 2 \
  --scheduler-memory 8GB \
  --dag-processor-cpu 4 \
  --dag-processor-memory 8GB \
  --worker-cpu 4 \
  --worker-memory 8GB

Perlu waktu sekitar 25 menit untuk membuat lingkungan Managed Airflow.

(Opsional) Menginstal paket Orchestration Pipelines dari PyPI

Orchestration Pipelines bergantung pada orchestration-pipelines paket PyPI. Secara default, lingkungan runner Anda sudah menginstal paket ini.

Jika Anda menggunakan versi Managed Airflow yang lebih lama yang tidak menginstal paket ini atau ingin menginstal versi paket yang berbeda, Anda dapat menginstal paket ini dari PyPI.

Contoh:

gcloud composer environments update example-runner \
    --location us-central1 \
    --update-pypi-package "orchestration-pipelines>=0.11.1"

Untuk mengetahui informasi selengkapnya tentang cara menginstal paket PyPI di lingkungan runner dan contoh melakukannya di Google Cloud konsol dan Terraform, lihat Menginstal dependensi Python di dokumentasi Managed Service untuk Apache Airflow.

Langkah berikutnya

  • Tambahkan lingkungan runner ke [konfigurasi deployment][op-deploy].