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à.
Aggiungere o aggiornare DAGs
I grafici aciclici diretti (DAGs) sono definiti all'interno di un file Python che definisce la DAG struttura 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: l'amministratore deve aver concesso all' AWS account l'accesso alla politica di controllo degli mazonMWAAFull ConsoleAccess accessi A per l'ambiente in uso. Inoltre, il tuo MWAA ambiente Amazon 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 DAG sua struttura come codice. Consiste di quanto segue:
-
Una definizione del DAG
. -
Operatori
che descrivono come eseguire 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 MWAA ambiente Amazon, devi copiare la DAG definizione dags
nella cartella nel tuo bucket di archiviazione. Ad esempio, la DAG cartella nel tuo bucket di archiviazione potrebbe avere il seguente aspetto:
Esempio DAGcartella
dags/ └ dag_def.py
Amazon sincronizza MWAA automaticamente gli oggetti nuovi e modificati dal tuo bucket Amazon S3 alla cartella MWAA Amazon Scheduler and /usr/local/airflow/dags
Worker Containers ogni 30 secondi, preservando la gerarchia dei file di origine di Amazon S3, indipendentemente dal tipo di file. La durata della visualizzazione delle nuove informazioni nell'interfaccia utente di DAGs Apache Airflow è determinata da. scheduler.dag_dir_list_interval
Le modifiche a quelle esistenti DAGs verranno rilevate nel ciclo di DAGelaborazione successivo.
Nota
Non è necessario includere il file airflow.cfg
di configurazione DAG nella cartella. 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 nei tuoi DAGs plugin e quelli personalizzati che specifichi in a
plugins.zip
su Amazon MWAA sono cambiati 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'MWAACLIutilità Amazon
-
L'utilità Command Line Interface (CLI) replica localmente un ambiente Amazon Managed Workflows for Apache Airflow.
-
CLICrea localmente un'immagine del contenitore Docker simile a un'immagine di MWAA produzione Amazon. 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 il, vedi onCLI. aws-mwaa-local-runner
GitHub
Caricamento DAG del codice su Amazon S3
Puoi utilizzare la console Amazon S3 o il AWS Command Line Interface (AWS CLI) per caricare il DAG codice 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.
Utilizzando 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 MWAA console Amazon. -
Scegli un ambiente.
-
Seleziona il link al bucket S3 nel DAGcodice nel riquadro S3 per aprire il bucket di storage 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 MWAA console Amazon (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 MWAA console Amazon. -
Scegli l'ambiente in cui desideri eseguireDAGs.
-
Scegli Modifica.
-
Nel riquadro del DAGcodice nel riquadro Amazon S3, scegli Browse S3 accanto al campo della DAG cartella.
-
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: A mazonMWAAWeb 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 MWAA console Amazon. -
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