Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Menggunakan opsi konfigurasi Apache Airflow di Amazon MWAA
Opsi konfigurasi Apache Airflow dapat dilampirkan ke Amazon Managed Workflow untuk lingkungan Apache Airflow sebagai variabel lingkungan. Anda dapat memilih dari daftar dropdown yang disarankan atau menentukan opsi konfigurasi khusus untuk versi Apache Airflow Anda di konsol Amazon MWAA. Topik ini menjelaskan opsi konfigurasi Apache Airflow yang tersedia dan cara menggunakan opsi ini untuk mengganti pengaturan konfigurasi Apache Airflow di lingkungan Anda.
Daftar Isi
Prasyarat
Anda akan memerlukan yang berikut sebelum Anda dapat menyelesaikan langkah-langkah di halaman ini.
-
Iz in — Anda Akun AWS harus telah diberikan akses oleh administrator ke kebijakan kontrol AmazonMWAAFullConsoleAccess akses untuk lingkungan Anda. Selain itu, lingkungan Amazon MWAA Anda harus diizinkan oleh peran eksekusi Anda untuk mengakses AWS sumber daya yang digunakan oleh lingkungan Anda.
-
Ak ses — Jika Anda memerlukan akses ke repositori publik untuk menginstal dependensi langsung pada server web, lingkungan Anda harus dikonfigurasi dengan akses server web jaringan publik. Untuk informasi lebih lanjut, lihatMode akses Apache Airflow.
-
Konfigurasi Amazon S3 — Bucket Amazon S3 yang digunakan untuk menyimpan DAG, plugin khusus di
plugins.zip, dan dependensi Python Andarequirements.txtharus dikonfigurasi dengan Akses Pu blik Diblokir dan Versi Diaktifkan.
Cara kerjanya
Saat Anda membuat lingkungan, Amazon MWAA melampirkan pengaturan konfigurasi yang Anda tentukan di konsol Amazon MWAA di opsi konfigurasi Airflow sebagai variabel lingkungan ke AWS Fargate wadah untuk lingkungan Anda. Jika Anda menggunakan setelan dengan nama yang sama diairflow.cfg, opsi yang Anda tentukan di konsol Amazon MWAA menggantikan nilai di. airflow.cfg
Meskipun kami tidak mengekspos UI Apache Airflow dari lingkungan Amazon MWAA secara default, Anda dapat mengubah opsi konfigurasi Apache Airflow langsung di konsol Amazon MWAA, termasuk pengaturan webserver.expose_config untuk mengekspos konfigurasi. airflow.cfg
Menggunakan opsi konfigurasi untuk memuat plugin
Secara default di Apache Airflow v2 dan yang lebih baru, plugin dikonfigurasi untuk dimuat “malas” menggunakan core.lazy_load_plugins : True pengaturan. Jika Anda menggunakan plugin khusus, Anda harus menambahkan core.lazy_load_plugins : False sebagai opsi konfigurasi Apache Airflow untuk memuat plugin di awal setiap proses Airflow untuk mengganti pengaturan default.
Ikhtisar opsi konfigurasi
Saat Anda menambahkan konfigurasi pada konsol Amazon MWAA, Amazon MWAA menulis konfigurasi sebagai variabel lingkungan.
-
Opsi yang terdaftar. Anda dapat memilih dari salah satu pengaturan konfigurasi yang tersedia untuk versi Apache Airflow Anda di daftar dropdown. Misalnya,
dag_concurrency:16. Pengaturan konfigurasi diterjemahkan ke wadah Fargate lingkungan Anda sebagaiAIRFLOW__CORE__DAG_CONCURRENCY : 16 -
Pilihan kustom. Anda juga dapat menentukan opsi konfigurasi Airflow yang tidak terdaftar untuk versi Apache Airflow Anda di daftar dropdown. Misalnya,
foo.user:YOUR_USER_NAME. Pengaturan konfigurasi diterjemahkan ke wadah Fargate lingkungan Anda sebagaiAIRFLOW__FOO__USER : YOUR_USER_NAME
Opsi konfigurasi Apache Airflow
Gambar berikut menggambarkan di mana Anda dapat menyesuaikan opsi konfigurasi Apache Airflow di konsol Amazon MWAA.
Referensi Aliran Udara Apache
Untuk daftar opsi konfigurasi yang didukung oleh Apache Airflow, lihat Referensi Konfigurasi
Menggunakan konsol Amazon MWAA
Prosedur berikut memandu Anda melalui langkah-langkah menambahkan opsi konfigurasi Aliran Udara ke lingkungan Anda.
-
Buka halaman
Lingkungan di konsol Amazon MWAA. -
Pilih lingkungan.
-
Pilih Edit.
-
Pilih Berikutnya.
-
Pilih Tambahkan konfigurasi kustom di panel opsi konfigurasi aliran udara.
-
Pilih konfigurasi dari daftar dropdown dan masukkan nilai, atau masukkan konfigurasi khusus dan masukkan nilai.
-
Pilih Tambahkan konfigurasi khusus untuk setiap konfigurasi yang ingin Anda tambahkan.
-
Pilih Simpan.
Referensi konfigurasi
Bagian berikut berisi daftar konfigurasi Apache Airflow yang tersedia di daftar dropdown di konsol Amazon MWAA.
Konfigurasi email
Daftar berikut menampilkan opsi konfigurasi notifikasi email Airflow yang tersedia di Amazon MWAA untuk Apache Airflow v2 dan v3.
Sebaiknya gunakan port 587 untuk lalu lintas SMTP. Secara default, mem AWS blokir lalu lintas SMTP keluar pada port 25 dari semua instans Amazon EC2. Jika Anda ingin mengirim lalu lintas keluar pada port 25, Anda dapat meminta pembatasan ini dihapus
| Opsi konfigurasi aliran udara | Deskripsi | Nilai contoh |
|---|---|---|
|
email.email_backend |
Utilitas Apache Airflow digunakan untuk pemberitahuan email di email_backend |
airflow.utils.email.send_email_smtp |
|
smtp.smtp_host |
Nama server keluar yang digunakan untuk alamat email di sm |
localhost |
|
smtp.smtp_starttls |
Transport Layer Security (TLS) digunakan untuk mengenkripsi email melalui internet di sm |
False |
|
smtp.smtp_ssl |
Secure Sockets Layer (SSL) digunakan untuk menghubungkan server dan klien email di smtp |
True |
|
smtp.smtp_port |
Port Transmission Control Protocol (TCP) yang ditunjuk untuk server di sm |
587 |
|
smtp.smtp_mail_from |
Alamat email keluar di sm |
myemail@domain.com |
Konfigurasi tugas
Daftar berikut menampilkan konfigurasi yang tersedia dalam daftar dropdown untuk tugas Airflow di Amazon MWAA untuk Apache Airflow v2 dan v3.
| Opsi konfigurasi aliran udara | Deskripsi | Nilai contoh |
|---|---|---|
|
core.default_task_retries |
Jumlah kali untuk mencoba lagi tugas Apache Airflow di default |
3 |
|
core.paralelisme |
Jumlah maksimum instance tugas yang dapat berjalan secara bersamaan di seluruh lingkungan secara paralel (paralelisme |
40 |
Konfigurasi penjadwal
Daftar berikut menampilkan konfigurasi penjadwal Apache Airflow yang tersedia di daftar dropdown di Amazon MWAA untuk Apache Airflow v2 dan v3.
| Opsi konfigurasi aliran udara | Deskripsi | Nilai contoh |
|---|---|---|
|
penjadwalan.catchup_by_default |
Memberitahu penjadwal untuk membuat proses DAG untuk “mengejar” interval waktu tertentu di cat |
False |
|
Scheduler.scheduler_zombie_task_Threshold catatanTidak tersedia di Apache Airflow v3. |
Memberi tahu penjadwal apakah akan menandai instance tugas sebagai gagal dan menjadwal ulang tugas di scheduler_zombie_task_. https://airflow.apache.org/docs/apache-airflow/2.0.2/configurations-ref.html#scheduler-zombie-task-threshold |
300 |
Konfigurasi pekerja
Daftar berikut menampilkan konfigurasi pekerja Airflow yang tersedia di daftar dropdown di Amazon MWAA untuk Apache Airflow v2 dan v3.
| Opsi konfigurasi aliran udara | Deskripsi | Nilai contoh |
|---|---|---|
|
celery.worker_autoscale |
Jumlah maksimum dan minimum tugas yang dapat dijalankan secara bersamaan pada pekerja mana pun menggunakan Pelaksana Celery di |
16,12 |
|
mwaa.worker_replacement_Threshold_seconds |
Menetapkan jumlah detik setelah Amazon MWAA menghentikan dan menggantikan pekerja yang tidak sehat. Saat disetel ke nilai yang lebih besar dari 0, Amazon MWAA menggantikan pekerja yang belum kembali ke keadaan sehat dalam ambang batas yang dikonfigurasi. Jika diset |
300 |
Konfigurasi server web
Daftar berikut menampilkan konfigurasi server web Apache Airflow yang tersedia di daftar dropdown di Amazon MWAA untuk Apache Airflow v2 dan v3.
| Opsi konfigurasi aliran udara | Deskripsi | Nilai contoh |
|---|---|---|
|
webserver.default_ui_zona waktu catatanTidak tersedia di Apache Airflow v3. |
Pengaturan datetime UI Apache Airflow default di default catatanMenyet |
America/New_York |
Konfigurasi pemicu
Daftar berikut menampilkan konfigurasi pemicu Apache Air
| Opsi konfigurasi aliran udara | Deskripsi | Nilai contoh |
|---|---|---|
|
mwaa.triggerer_enabled |
Digunakan untuk mengaktifkan dan menonaktifkan pemicu di Amazon MWAA. Secara default, nilai ini diatur ke |
True |
|
triggerer.default_capacity (dalam v2) triggerer.capacity (dalam v3) |
Mendefinisikan pemicu angka yang dapat dijalankan setiap pemicu secara paralel. Di Amazon MWAA, kapasitas ini ditetapkan per setiap pemicu dan per setiap penjadwal karena kedua komponen berjalan berdampingan satu sama lain. Default per penjadwal diatur ke |
125 |
Konfigurasi yang tidak didukung
Opsi konfigurasi Apache Airflow berikut tidak tersedia di Amazon MWAA. Anda tidak dapat mengatur atau mengganti opsi ini menggunakan konsol Amazon MWAA atau API.
| Opsi konfigurasi aliran udara | Versi Apache Airflow | Nilai default | Alasan |
|---|---|---|---|
|
core.multi_team |
3.2 |
False |
Amazon MWAA saat ini tidak mendukung mode multi-tim. |
|
triggerer.queues_enabled |
3.2 |
False |
Amazon MWAA tidak mendukung penetapan antri an pemicu. |
Contoh dan kode sampel
Contoh DAG
Anda dapat menggunakan DAG berikut untuk mencetak opsi konfigurasi email_backend Apache Airflow Anda. Untuk menjalankan sebagai respons terhadap peristiwa Amazon MWAA, salin kode ke folder DAG lingkungan Anda di bucket penyimpanan Amazon S3 Anda.
from airflow.decorators import dag from datetime import datetime def print_var(**kwargs): email_backend = kwargs['conf'].get(section='email', key='email_backend') print("email_backend") return email_backend @dag( dag_id="print_env_variable_example", schedule_interval=None, start_date=datetime(yyyy,m,d), catchup=False, ) def print_variable_dag(): email_backend_test = PythonOperator( task_id="email_backend_test", python_callable=print_var, provide_context=True ) print_variable_test = print_variable_dag()
Contoh pengaturan notifikasi email
Opsi konfigurasi Apache Airflow berikut dapat digunakan untuk akun Gmail.com email menggunakan kata sandi aplikasi. Untuk informasi selengkapnya, lihat Masuk menggunakan kata sandi aplikasi
Apa selanjutnya?
-
Pelajari cara mengunggah folder DAG Anda ke bucket Amazon S3 Anda diMenambahkan atau memperbarui DAGs.