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à.
I Directed Acyclic Graphs (DAGs) sono definiti all'interno di un file Python che definisce la struttura del DAG come codice. Puoi utilizzare la o AWS CLI la console Amazon S3 per effettuare il caricamento nel tuo DAGs ambiente. Questo argomento descrive i passaggi per aggiungere o aggiornare Apache Airflow nel tuo ambiente DAGs Amazon Managed Workflows for Apache Airflow utilizzando la cartella nel dags
tuo bucket Amazon S3.
Sections
Prerequisiti
Avrai bisogno di quanto segue prima di completare i passaggi in questa pagina.
-
Autorizzazioni: al tuo AWS account deve essere stato concesso dall'amministratore l'accesso alla politica di controllo degli MWAAFull ConsoleAccess accessi di Amazon per il tuo ambiente. Inoltre, il tuo ambiente Amazon MWAA deve essere autorizzato dal tuo ruolo di esecuzione ad accedere alle AWS risorse utilizzate dal tuo ambiente.
-
Accesso: se è necessario accedere agli archivi pubblici per installare le dipendenze direttamente sul server Web, l'ambiente deve essere configurato con l'accesso al server Web di rete pubblica. Per ulteriori informazioni, consulta Modalità di accesso Apache Airflow.
-
Configurazione Amazon S3 : il bucket Amazon S3 utilizzato per archiviare i plug-in
plugins.zip
personalizzati e DAGs lerequirements.txt
dipendenze Python deve essere configurato con Public Access Blocked e Versioning Enabled.
Come funziona
Un Directed Acyclic Graph (DAG) è definito all'interno di un singolo file Python che definisce la struttura del DAG come codice. Consiste di quanto segue:
-
Una definizione DAG
. -
Operatori
che descrivono come eseguire il DAG e le attività da eseguire. -
Relazioni tra operatori
che descrivono l'ordine in cui eseguire le attività.
Per eseguire una piattaforma Apache Airflow in un ambiente Amazon MWAA, devi copiare la definizione del DAG dags
nella cartella del bucket di archiviazione. Ad esempio, la cartella DAG nel tuo bucket di archiviazione potrebbe avere il seguente aspetto:
Esempio cartella DAG
dags/ └ dag_def.py
Amazon MWAA sincronizza automaticamente gli oggetti nuovi e modificati dal bucket Amazon S3 alla cartella dei /usr/local/airflow/dags
container di pianificazione e worker di Amazon MWAA ogni 30 secondi, preservando la gerarchia dei file di origine di Amazon S3, indipendentemente dal tipo di file. Il tempo impiegato per la visualizzazione dei nuovi dati nell'interfaccia utente di Apache Airflow è controllato DAGs da. scheduler.dag_dir_list_interval
Le modifiche a quelle esistenti DAGs verranno rilevate nel successivo ciclo di elaborazione DAG.
Nota
Non è necessario includere il file di airflow.cfg
configurazione nella cartella DAG. Puoi sovrascrivere le configurazioni predefinite di Apache Airflow dalla console Amazon MWAA. Per ulteriori informazioni, consulta Utilizzo delle opzioni di configurazione di Apache Airflow su Amazon MWAA.
Cosa è cambiato nella v2
-
Novità: operatori, ganci ed esecutori. Le istruzioni di importazione nel tuo DAGs e nei plug-in personalizzati che specifichi in un MWAA
plugins.zip
su Amazon sono cambiate tra Apache Airflow v1 e Apache Airflow v2. Ad esempio,from airflow.contrib.hooks.aws_hook import AwsHook
in Apache Airflow v1 è cambiato in Apache Airflow v2.from airflow.providers.amazon.aws.hooks.base_aws import AwsBaseHook
Per saperne di più, consulta Python API Reference nella guida di riferimento diApache Airflow.
Test DAGs con l'utilità CLI di Amazon MWAA
-
L'utilità CLI (Command Line Interface) replica localmente un ambiente Amazon Managed Workflows for Apache Airflow.
-
La CLI crea localmente un'immagine del contenitore Docker simile a un'immagine di produzione Amazon MWAA. Ciò consente di eseguire un ambiente Apache Airflow locale per sviluppare e testare DAGs plug-in personalizzati e dipendenze prima della distribuzione su Amazon MWAA.
-
Per eseguire la CLI, vedi on. aws-mwaa-local-runner
GitHub
Caricamento del codice DAG su Amazon S3
Puoi utilizzare la console Amazon S3 o il AWS Command Line Interface (AWS CLI) per caricare il codice DAG nel tuo bucket Amazon S3. I passaggi seguenti presuppongono che tu stia caricando code (.py
) in una cartella denominata dags
nel tuo bucket Amazon S3.
Usando il AWS CLI
Il AWS Command Line Interface (AWS CLI) è uno strumento open source che consente di interagire con i AWS servizi utilizzando i comandi nella shell della riga di comando. Per completare la procedura descritta in questa pagina, è necessario quanto segue:
Per caricare utilizzando il AWS CLI
-
Usa il seguente comando per elencare tutti i tuoi bucket Amazon S3.
aws s3 ls
-
Usa il seguente comando per elencare i file e le cartelle nel bucket Amazon S3 per il tuo ambiente.
aws s3 ls s3://
YOUR_S3_BUCKET_NAME
-
Il comando seguente carica un
dag_def.py
file in una cartella.dags
aws s3 cp dag_def.py s3://
YOUR_S3_BUCKET_NAME
/dags/Se una cartella denominata
dags
non esiste già nel tuo bucket Amazon S3, questo comando crea ladags
cartella e carica il file denominato nella nuovadag_def.py
cartella.
Utilizzo della console Amazon S3
La console Amazon S3 è un'interfaccia utente basata sul Web che consente di creare e gestire le risorse nel bucket Amazon S3. I passaggi seguenti presuppongono che tu abbia una cartella denominata. DAGs dags
Per caricare utilizzando la console Amazon S3
-
Apri la pagina Ambienti
sulla console Amazon MWAA. -
Scegli un ambiente.
-
Seleziona il link del bucket S3 nel codice DAG nel riquadro S3 per aprire il bucket di archiviazione sulla console Amazon S3.
-
Scegliere la cartella
dags
. -
Scegli Carica.
-
Scegli Aggiungi file.
-
Seleziona la copia locale del tuo
dag_def.py
, scegli Carica.
Specificare il percorso della DAGs cartella sulla console Amazon MWAA (la prima volta)
I passaggi seguenti presuppongono che tu stia specificando il percorso di una cartella denominata sul tuo bucket Amazon S3. dags
-
Apri la pagina Ambienti
sulla console Amazon MWAA. -
Scegli l'ambiente in cui desideri eseguire. DAGs
-
Scegli Modifica.
-
Nel codice DAG nel riquadro Amazon S3, scegli Browse S3 accanto al campo della cartella DAG.
-
Seleziona la tua cartella.
dags
-
Scegliere Choose (Scegli).
-
Scegli Avanti, Aggiorna ambiente.
Visualizzazione delle modifiche sull'interfaccia utente di Apache Airflow
Accesso ad Apache Airflow
Hai bisogno Politica di accesso all'interfaccia utente di Apache Airflow: Amazon MWAAWeb ServerAccess delle autorizzazioni per il tuo AWS account in AWS Identity and Access Management (IAM) per visualizzare l'interfaccia utente di Apache Airflow.
Per accedere all'interfaccia utente di Apache Airflow
-
Apri la pagina Ambienti
sulla console Amazon MWAA. -
Scegli un ambiente.
-
Scegli Open Airflow UI.
Fasi successive
-
Testa DAGs i tuoi plugin personalizzati e le dipendenze Python localmente usando on. aws-mwaa-local-runner
GitHub