Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Tutorial: Otomatiskan pengelolaan titik akhir lingkungan Anda sendiri di Amazon MWAA
Jika Anda menggunakannya AWS Organizationsuntuk mengelola beberapa AWS akun yang berbagi sumber daya, Amazon MWAA memungkinkan Anda membuat, dan mengelola, titik akhir VPC Amazon Anda sendiri. Ini berarti Anda dapat menggunakan kebijakan keamanan yang lebih ketat yang memungkinkan akses hanya sumber daya yang dibutuhkan oleh lingkungan Anda.
Saat Anda membuat lingkungan di VPC Amazon bersama, akun yang memiliki VPC Amazon (pemilik) utama membagikan dua subnet pribadi yang diperlukan oleh Amazon MWAA dengan akun lain (peserta) yang termasuk dalam organisasi yang sama. Akun peserta yang berbagi subnet tersebut kemudian dapat melihat, membuat, memodifikasi, dan menghapus lingkungan di VPC bersama.
Saat Anda membuat lingkungan di Amazon VPC bersama, atau dibatasi kebijakan, Amazon MWAA pertama-tama akan membuat sumber daya VPC layanan, lalu memasukkan PENDING
status hingga 72 jam.
Ketika status lingkungan berubah dari CREATING
kePENDING
, Amazon MWAA mengirimkan EventBridge pemberitahuan Amazon tentang perubahan status. Ini memungkinkan akun pemilik membuat titik akhir yang diperlukan atas nama peserta berdasarkan informasi layanan titik akhir dari konsol atau API Amazon MWAA, atau secara terprogram Berikut ini, kami membuat titik akhir VPC Amazon baru menggunakan fungsi Lambda dan aturan yang mendengarkan pemberitahuan perubahan status Amazon MWAA. EventBridge
Di sini, kami membuat titik akhir baru di VPC Amazon yang sama dengan lingkungan. Untuk menyiapkan VPC Amazon bersama, buat EventBridge aturan dan fungsi Lambda di akun pemilik, dan lingkungan Amazon MWAA di akun peserta.
Prasyarat
Untuk menyelesaikan langkah-langkah dalam tutorial ini, Anda memerlukan yang berikut:
-
...
Buat Amazon VPC
Gunakan AWS CloudFormation template dan AWS CLI perintah berikut untuk membuat VPC Amazon baru. Template menyiapkan sumber daya VPC Amazon dan memodifikasi kebijakan titik akhir untuk membatasi akses ke antrian tertentu.
-
Unduh AWS CloudFormation template, lalu unzip
.yml
file. -
Di jendela prompt perintah baru, navigasikan ke folder tempat Anda menyimpan template, lalu gunakan
create-stack
untuk membuat tumpukan.--template-body
Bendera menentukan jalur ke template.$
aws cloudformation create-stack --stack-name
stack-name
--template-body file://cfn-vpc-private-network.yml
Di bagian selanjutnya, Anda akan membuat fungsi Lambda.
Buat fungsi Lambda
Gunakan kode Python berikut dan kebijakan IAM JSON untuk membuat fungsi Lambda baru dan peran eksekusi. Fungsi ini membuat titik akhir Amazon VPC untuk server web Apache Airflow pribadi dan antrian Amazon SQS. Amazon MWAA menggunakan Amazon SQS untuk mengantri tugas dengan Celery di antara beberapa pekerja saat menskalakan lingkungan Anda.
-
Unduh kode fungsi Python.
-
Unduh kebijakan izin IAM, lalu unzip file.
-
Buka prompt perintah, lalu arahkan ke folder tempat Anda menyimpan kebijakan izin JSON. Gunakan
create-role
perintah IAM untuk membuat peran baru.$
aws iam create-role --role-name
function-role
\ --assume-role-policy-document file://lambda-mwaa-vpce-policy.jsonPerhatikan peran ARN dari respon. AWS CLI Pada langkah berikutnya, kami menentukan peran baru ini sebagai peran eksekusi fungsi menggunakan ARN-nya.
-
Arahkan ke folder tempat Anda menyimpan kode fungsi, lalu gunakan
create-function
perintah untuk membuat fungsi baru.$
aws lambda create-function --function-name
mwaa-vpce-lambda
\ --zip-file file://mwaa-lambda-shared-vpc.zip --runtime python3.8 --role arn:aws:iam::123456789012:role/function-role
--handler lambda_handlerPerhatikan fungsi ARN dari respon. AWS CLI Pada langkah berikutnya kita menentukan ARN untuk mengkonfigurasi fungsi sebagai target untuk aturan baru EventBridge .
Di bagian selanjutnya, Anda akan membuat EventBridge aturan yang memanggil fungsi ini ketika lingkungan memasuki PENDING
status.
Buat EventBridge aturan
Lakukan hal berikut untuk membuat aturan baru yang mendengarkan notifikasi Amazon MWAA dan menargetkan fungsi Lambda baru Anda.
-
Gunakan EventBridge
put-rule
perintah untuk membuat EventBridge aturan baru.$
aws events put-rule --name "
mwaa-lambda-rule
" \ --event-pattern "{\"source\":[\"aws.airflow\"],\"detail-type\":[\"MWAA Environment Status Change\"]}"Pola acara mendengarkan notifikasi yang dikirimkan Amazon MWAA setiap kali status lingkungan berubah.
{ "source": ["aws.airflow"], "detail-type": ["MWAA Environment Status Change"] }
-
Gunakan
put-targets
perintah untuk menambahkan fungsi Lambda sebagai target untuk aturan baru.$
aws events put-targets --rule "
mwaa-lambda-rule
" \ --targets "Id"="1
","Arn"="arn:aws::lambda:region
:123456789012
:function:mwaa-vpce-lambda
"
Anda siap membuat lingkungan Amazon MWAA baru dengan titik akhir Amazon VPC yang dikelola pelanggan.
Buat lingkungan Amazon MWAA
Gunakan konsol Amazon MWAA untuk membuat lingkungan baru dengan titik akhir Amazon VPC yang dikelola pelanggan.
-
Buka konsol Amazon MWAA
, dan pilih Buat lingkungan. -
Untuk Nama masukkan nama yang unik.
-
Untuk versi Airflow pilih versi terbaru.
-
Pilih bucket Amazon S3 dan folder DAGs, seperti
dags/
untuk digunakan dengan lingkungan, lalu pilih Berikutnya. -
Pada halaman Konfigurasi pengaturan lanjutan, lakukan hal berikut:
-
Untuk Virtual Private Cloud, pilih VPC Amazon yang Anda buat di langkah sebelumnya.
-
Untuk akses server Web, pilih Jaringan publik (Internet dapat diakses).
-
Untuk grup Keamanan, pilih grup keamanan yang Anda buatAWS CloudFormation. Karena grup keamanan untuk AWS PrivateLink titik akhir dari langkah sebelumnya adalah referensi sendiri, Anda harus memilih grup keamanan yang sama untuk lingkungan Anda.
-
Untuk manajemen Endpoint, pilih Titik akhir yang dikelola Pelanggan.
-
-
Pertahankan pengaturan default yang tersisa, lalu pilih Berikutnya.
-
Tinjau pilihan Anda, lalu pilih Buat lingkungan.
Tip
Untuk informasi selengkapnya tentang menyiapkan lingkungan baru, lihat Memulai Amazon MWAA.
Saat lingkungannyaPENDING
, Amazon MWAA mengirimkan notifikasi yang cocok dengan pola acara yang Anda tetapkan untuk aturan Anda. Aturan tersebut memanggil fungsi Lambda Anda. Fungsi mem-parsing peristiwa notifikasi dan mendapatkan informasi titik akhir yang diperlukan untuk server web dan antrian Amazon SQS. Kemudian menciptakan titik akhir di VPC Amazon Anda.
Ketika titik akhir tersedia, Amazon MWAA melanjutkan pembuatan lingkungan Anda. Saat siap, status lingkungan berubah menjadi AVAILABLE
dan Anda dapat mengakses server web Apache Airflow menggunakan konsol Amazon MWAA.