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à.
Configurazione della scalabilità automatica dei lavoratori Amazon MWAA
Il meccanismo di scalabilità automatica aumenta automaticamente il numero di lavoratori Apache Airflow in risposta alle attività in esecuzione e in coda nel tuo ambiente Amazon Managed Workflows for Apache Airflow e elimina lavoratori aggiuntivi quando non ci sono più attività in coda o in esecuzione. Questa pagina descrive come configurare la scalabilità automatica specificando il numero massimo di worker Apache Airflow eseguiti nel tuo ambiente utilizzando la console Amazon MWAA.
Nota
Amazon MWAA utilizza i parametri di Apache Airflow per determinare quando sono necessari altri lavoratori Celery Executormax-workers
Man mano che i lavoratori aggiuntivi completano il lavoro e il carico di lavoro diminuisce, Amazon MWAA li rimuove, tornando così al valore impostato da. min-workers
Se i lavoratori intraprendono nuove attività durante il downscaling, Amazon MWAA conserva la risorsa Fargate e non rimuove il lavoratore. Per ulteriori informazioni, consulta Come funziona la scalabilità automatica di Amazon MWAA.
Sections
Come funziona la scalabilità dei lavoratori
Usi RunningTasks
e QueuedTasks
parametri di Amazon MWAA, dove (attività in esecuzione + attività in coda)/(attività per lavoratore) = (lavoratori richiesti). Se il numero richiesto di lavoratori è superiore al numero attuale di lavoratori, Amazon MWAA aggiungerà i container per lavoratori Fargate a quel valore, fino al valore massimo specificato da. max-workers
Man mano che il carico di lavoro diminuisce e la somma dei QueuedTasks
parametri RunningTasks
e si riduce, Amazon MWAA richiede a Fargate di ridurre il numero di lavoratori per l'ambiente. Tutti i lavoratori che stanno ancora completando il lavoro rimangono protetti durante il downscaling fino al completamento del lavoro. A seconda del carico di lavoro, le attività possono essere messe in coda mentre i lavoratori effettuano la scalata.
Utilizzo della console Amazon MWAA
Puoi scegliere il numero massimo di lavoratori che possono essere eseguiti contemporaneamente nel tuo ambiente sulla console Amazon MWAA. Per impostazione predefinita, puoi specificare un valore massimo fino a 25.
Per configurare il numero di lavoratori
-
Apri la pagina Ambienti
sulla console Amazon MWAA. -
Scegli un ambiente.
-
Scegli Modifica.
-
Seleziona Successivo.
-
Nel riquadro Classe Ambiente, inserisci un valore in Numero massimo di lavoratori.
-
Selezionare Salva.
Nota
Possono essere necessari alcuni minuti prima che le modifiche abbiano effetto sull'ambiente.
Esempio di utilizzo ad alte prestazioni
La sezione seguente descrive il tipo di configurazioni che è possibile utilizzare per abilitare alte prestazioni e parallelismo in un ambiente.
Apache Airflow locale
In genere, in una piattaforma Apache Airflow on-premise, è necessario configurare il parallelismo delle attività, la scalabilità automatica e le impostazioni di concorrenza nel file: airflow.cfg
-
core.parallelism
— Il numero massimo di istanze di attività che possono essere eseguite contemporaneamente per scheduler. -
core.dag_concurrency
— La concorrenza massima per i DAG (non per i lavoratori). -
celery.worker_autoscale
— Il numero massimo e minimo di attività che possono essere eseguite contemporaneamente su qualsiasi lavoratore.
Ad esempio, se core.parallelism
fosse impostato su 100
e core.dag_concurrency
fosse impostato su7
, sarebbe comunque possibile eseguire un totale di 14
attività contemporaneamente solo se si disponesse di 2 DAG. Tuttavia, ogni DAG è impostato per eseguire solo sette attività contemporaneamente (incore.dag_concurrency
), anche se il parallelismo complessivo è impostato su (in). 100
core.parallelism
In un ambiente Amazon MWAA
In un ambiente Amazon MWAA, puoi configurare queste impostazioni direttamente sulla console Amazon MWAA utilizzando Utilizzo delle opzioni di configurazione di Apache Airflow su Amazon MWAAConfigurazione della classe di MWAA ambiente Amazon, e il meccanismo di scalabilità automatica Maximum worker count. Sebbene non core.dag_concurrency
sia disponibile nell'elenco a discesa come opzione di configurazione Apache Airflow sulla console Amazon MWAA, puoi aggiungerla come opzione di configurazione Apache Airflow personalizzata.
Supponiamo che quando hai creato il tuo ambiente, hai scelto le seguenti impostazioni:
-
La classe di ambiente mw1.small che controlla il numero massimo di attività simultanee che ogni lavoratore può eseguire per impostazione predefinita e la vCPU dei contenitori.
-
L'impostazione predefinita di
10
Workers in Maximum worker count. -
Un'opzione di configurazione di Apache Airflow per celery.worker_autoscale più
5,5
attività per lavoratore.
Ciò significa che puoi eseguire 50 attività simultanee nel tuo ambiente. Tutte le attività oltre 50 verranno messe in coda e attenderanno il completamento delle attività in esecuzione.
Esegui più attività simultanee. È possibile modificare l'ambiente per eseguire più attività contemporaneamente utilizzando le seguenti configurazioni:
-
Aggiungi
celery.worker_autoscale
come opzione di configurazione Apache Airflow. -
Aumenta il numero massimo di lavoratori. In questo esempio, l'aumento del numero massimo di lavoratori da
10
a20
raddoppierebbe il numero di attività simultanee che l'ambiente può eseguire.
Specificare il numero minimo di lavoratori. È inoltre possibile specificare il numero minimo e massimo di Apache Airflow Workers eseguiti nel proprio ambiente utilizzando AWS Command Line Interface ()AWS CLI. Per esempio:
aws mwaa update-environment --max-workers 10 --min-workers 10 --name
YOUR_ENVIRONMENT_NAME
Per ulteriori informazioni, consultate il comando update-environment in. AWS CLI
Risoluzione dei problemi relativi alle attività bloccate nello stato di esecuzione
In rari casi, Apache Airflow potrebbe pensare che ci siano attività ancora in esecuzione. Per risolvere questo problema, è necessario cancellare l'attività bloccata nell'interfaccia utente di Apache Airflow. Per ulteriori informazioni, consulta l'argomento sulla risoluzione dei problemi. Vedo che le mie attività sono bloccate o non vengono completate
Fasi successive
-
Scopri di più sulle best practice che consigliamo per ottimizzare le prestazioni del tuo ambienteOttimizzazione delle prestazioni per Apache Airflow su Amazon MWAA.