Risoluzione dei problemi delle attività di KubernetesExecutor

Cloud Composer 1 | Cloud Composer 2 | Cloud Composer 3

Questa pagina descrive come risolvere i problemi relativi alle attività eseguite da KubernetesExecutor e fornisce soluzioni per i problemi più comuni.

Approccio generale alla risoluzione dei problemi di KubernetesExecutor

Per risolvere i problemi relativi a un'attività eseguita con KubernetesExecutor, esegui le seguenti azioni nell'ordine elencato:

  1. Controlla i log dell'attività nella UI di DAG o nell'UI di Airflow.

  2. Controlla i log dello scheduler nella console Google Cloud:

    1. Nella console Google Cloud, vai alla pagina Ambienti.

      Vai ad Ambienti

    2. Nell'elenco degli ambienti, fai clic sul nome dell'ambiente. Si apre la pagina Dettagli ambiente.

    3. Vai alla scheda Log e controlla la sezione Log Airflow > Scheduler.

    4. Per un determinato intervallo di tempo, ispeziona il pod worker KubernetesExecutor che eseguiva l'attività. Se il pod non esiste più, salta questo passaggio. Il pod ha il prefisso airflow-k8s-worker e un nome di DAG o attività nel nome. Cerca eventuali problemi segnalati, ad esempio un'attività non riuscita o l'attività non pianificabile.

Scenari di risoluzione dei problemi comuni per KubernetesExecutor

Questa sezione elenca gli scenari di risoluzione dei problemi comuni che potresti riscontrare con KubernetesExecutor.

L'attività passa allo stato Running e non riesce durante l'esecuzione.

Sintomi:

  • Sono presenti i log per l'attività nella UI di Airflow e nella scheda Log nella sezione Worker.

Soluzione: i log delle attività indicano il problema.

L'istanza dell'attività passa allo stato queued, quindi viene contrassegnata come UP_FOR_RETRY o FAILED dopo un po' di tempo.

Sintomi:

  • Non ci sono log per l'attività nella UI di Airflow e nella scheda Log nella sezione Worker.
  • Nella scheda Log della sezione Scheduler sono presenti log con un messaggio che informa che l'attività è contrassegnata come UP_FOR_RETRY o FAILED.
  • Il pod airflow-k8s-worker-*.* con il nome di DAG/attività all'interno del nome del pod ha lo stato Failed/Pending o è assente.

Soluzione:

  1. Controlla i log dello scheduler per individuare eventuali dettagli del problema.

Cause possibili:

  • Se i log dello scheduler contengono il messaggio Adopted tasks were still pending after... seguito dall'istanza dell'attività stampata, verifica che CeleryKubernetesExecutor sia abilitato nel tuo ambiente.

L'istanza dell'attività passa allo stato Queued e viene immediatamente contrassegnata come UP_FOR_RETRY o FAILED

Sintomi:

  • Non esistono log per l'attività nella UI di Airflow e nella scheda Log della sezione Worker.
  • I log dello scheduler nella scheda Log della sezione Scheduler contengono il messaggio Pod creation failed with reason ... Failing task e il messaggio che indica che l'attività è contrassegnata come UP_FOR_RETRY o FAILED.

Soluzione:

  • Controlla nei log dello scheduler la risposta esatta e il motivo dell'errore.

Possibile motivo:

Se il messaggio di errore è quantities must match the regular expression ..., è molto probabile che il problema sia causato da valori personalizzati impostati per le risorse k8s (richieste/limiti) dei pod dei worker delle attività.

Passaggi successivi