Seleziona le tue preferenze relative ai cookie

Utilizziamo cookie essenziali e strumenti simili necessari per fornire il nostro sito e i nostri servizi. Utilizziamo i cookie prestazionali per raccogliere statistiche anonime in modo da poter capire come i clienti utilizzano il nostro sito e apportare miglioramenti. I cookie essenziali non possono essere disattivati, ma puoi fare clic su \"Personalizza\" o \"Rifiuta\" per rifiutare i cookie prestazionali.

Se sei d'accordo, AWS e le terze parti approvate utilizzeranno i cookie anche per fornire utili funzionalità del sito, ricordare le tue preferenze e visualizzare contenuti pertinenti, inclusa la pubblicità pertinente. Per continuare senza accettare questi cookie, fai clic su \"Continua\" o \"Rifiuta\". Per effettuare scelte più dettagliate o saperne di più, fai clic su \"Personalizza\".

Tutorial: automatizza la gestione degli endpoint del tuo ambiente su Amazon MWAA

Modalità Focus
Tutorial: automatizza la gestione degli endpoint del tuo ambiente su Amazon MWAA - Amazon Managed Workflows for Apache Airflow

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Se gestisci più AWS account che condividono risorse, Amazon MWAA ti consente di creare e gestire i tuoi endpoint Amazon VPC. AWS Organizations Ciò significa che puoi utilizzare politiche di sicurezza più rigorose che consentono l'accesso solo alle risorse richieste dal tuo ambiente.

Quando crei un ambiente in un Amazon VPC condiviso, l'account proprietario dell'Amazon VPC principale (proprietario) condivide le due sottoreti private richieste da Amazon MWAA con altri account (partecipanti) che appartengono alla stessa organizzazione. Gli account dei partecipanti che condividono tali sottoreti possono quindi visualizzare, creare, modificare ed eliminare ambienti nel VPC condiviso.

Quando crei un ambiente in un Amazon VPC condiviso o altrimenti soggetto a restrizioni, Amazon MWAA crea prima le risorse VPC del servizio, quindi entra PENDINGin uno stato per un massimo di 72 ore.

Quando lo stato dell'ambiente cambia da CREATING aPENDING, Amazon MWAA invia una EventBridge notifica Amazon del cambiamento di stato. Ciò consente all'account proprietario di creare gli endpoint richiesti per conto dei partecipanti in base alle informazioni sul servizio endpoint dalla console o dall'API Amazon MWAA o in modo programmatico. Di seguito, creiamo nuovi endpoint Amazon VPC utilizzando una funzione Lambda e una EventBridge regola che ascolta le notifiche di modifica dello stato di Amazon MWAA.

Qui creiamo i nuovi endpoint nello stesso Amazon VPC dell'ambiente. Per configurare un Amazon VPC condiviso, crea la EventBridge regola e la funzione Lambda nell'account del proprietario e l'ambiente Amazon MWAA nell'account del partecipante.

Prerequisiti

Per completare i passaggi di questo tutorial, avrai bisogno di quanto segue:

  • ...

Crea Amazon VPC

Utilizza il AWS CloudFormation modello e il AWS CLI comando seguenti per creare un nuovo Amazon VPC. Il modello configura le risorse Amazon VPC e modifica la policy degli endpoint per limitare l'accesso a una coda specifica.

  1. Scarica il AWS CloudFormation modello, quindi decomprimi il file. .yml

  2. In una nuova finestra del prompt dei comandi, accedi alla cartella in cui hai salvato il modello, quindi usala create-stackper creare lo stack. Il --template-body flag specifica il percorso del modello.

    $ aws cloudformation create-stack --stack-name stack-name --template-body file://cfn-vpc-private-network.yml

Nella prossima sezione, creerai la funzione Lambda.

Creazione della funzione Lambda

Usa il seguente codice Python e la policy IAM JSON per creare una nuova funzione Lambda e un nuovo ruolo di esecuzione. Questa funzione crea endpoint Amazon VPC per un server Web Apache Airflow privato e una coda Amazon SQS. Amazon MWAA utilizza Amazon SQS per mettere in coda le attività con Celery tra più lavoratori durante la scalabilità dell'ambiente.

  1. Scarica il codice della funzione Python.

  2. Scarica la politica di autorizzazione IAM, quindi decomprimi il file.

  3. Apri un prompt dei comandi, quindi vai alla cartella in cui hai salvato la politica di autorizzazione JSON. Usa il create-rolecomando IAM per creare il nuovo ruolo.

    $ aws iam create-role --role-name function-role \ --assume-role-policy-document file://lambda-mwaa-vpce-policy.json

    Nota il ruolo ARN della AWS CLI risposta. Nel passaggio successivo, specifichiamo questo nuovo ruolo come ruolo di esecuzione della funzione utilizzando il relativo ARN.

  4. Vai alla cartella in cui hai salvato il codice della funzione, quindi usa il create-functioncomando per creare una nuova funzione.

    $ 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_handler

    Nota la funzione ARN dalla AWS CLI risposta. Nel passaggio successivo specifichiamo l'ARN per configurare la funzione come destinazione per una nuova EventBridge regola.

Nella sezione successiva, creerai la EventBridge regola che richiama questa funzione quando l'ambiente entra in uno stato. PENDING

Crea la regola EventBridge

Effettua le seguenti operazioni per creare una nuova regola che ascolti le notifiche di Amazon MWAA e utilizzi la tua nuova funzione Lambda.

  1. Usa il EventBridge put-rule comando per creare una nuova regola. EventBridge

    $ aws events put-rule --name "mwaa-lambda-rule" \ --event-pattern "{\"source\":[\"aws.airflow\"],\"detail-type\":[\"MWAA Environment Status Change\"]}"

    Il pattern di eventi rileva le notifiche che Amazon MWAA invia ogni volta che lo stato di un ambiente cambia.

    { "source": ["aws.airflow"], "detail-type": ["MWAA Environment Status Change"] }
  2. Utilizzate il put-targets comando per aggiungere la funzione Lambda come destinazione per la nuova regola.

    $ aws events put-targets --rule "mwaa-lambda-rule" \ --targets "Id"="1","Arn"="arn:aws::lambda:region:123456789012:function:mwaa-vpce-lambda"

Sei pronto per creare un nuovo ambiente Amazon MWAA con endpoint Amazon VPC gestiti dal cliente.

Crea l'ambiente Amazon MWAA

Usa la console Amazon MWAA per creare un nuovo ambiente con endpoint Amazon VPC gestiti dal cliente.

  1. Apri la console Amazon MWAA e scegli Crea un ambiente.

  2. Per Nome inserisci un nome univoco.

  3. Per la versione Airflow scegli la versione più recente.

  4. Scegli un bucket Amazon S3 e una DAGs cartella, ad esempio dags/ da utilizzare con l'ambiente, quindi scegli Avanti.

  5. Nella pagina Configura impostazioni avanzate, procedi come segue:

    1. Per il Virtual Private Cloud, scegli l'Amazon VPC che hai creato nel passaggio precedente.

    2. Per l'accesso al server Web, scegli Rete pubblica (accessibile da Internet).

    3. Per i gruppi di sicurezza, scegli il gruppo di sicurezza con cui hai creato AWS CloudFormation. Poiché i gruppi di sicurezza per gli AWS PrivateLink endpoint del passaggio precedente sono autoreferenziali, è necessario scegliere lo stesso gruppo di sicurezza per l'ambiente.

    4. Per la gestione degli endpoint, scegli Endpoint gestiti dal cliente.

  6. Mantieni le impostazioni predefinite rimanenti, quindi scegli Avanti.

  7. Controlla le tue selezioni, quindi scegli Crea ambiente.

Suggerimento

Per ulteriori informazioni sulla configurazione di un nuovo ambiente, consulta Getting started with Amazon MWAA.

Quando l'ambiente lo èPENDING, Amazon MWAA invia una notifica che corrisponde allo schema di eventi impostato per la regola. La regola richiama la funzione Lambda. La funzione analizza l'evento di notifica e ottiene le informazioni necessarie sull'endpoint per il server Web e la coda Amazon SQS. Quindi crea gli endpoint nel tuo Amazon VPC.

Quando gli endpoint sono disponibili, Amazon MWAA riprende a creare il tuo ambiente. Quando è pronto, lo stato dell'ambiente cambia AVAILABLE e puoi accedere al server Web Apache Airflow utilizzando la console Amazon MWAA.

PrivacyCondizioni del sitoPreferenze cookie
© 2025, Amazon Web Services, Inc. o società affiliate. Tutti i diritti riservati.