Risoluzione dei problemi delle attività di KubernetesExecutor

Cloud Composer 1 | Cloud Composer 2

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

Approccio generale alla risoluzione dei problemi di KubernetesExecutor

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

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

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

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

      Vai a Ambienti

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

    3. Vai alla scheda Log e controlla la sezione Log di Airflow > sezione 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 DAG o un nome di attività nel nome. Cerca eventuali problemi segnalati, come un'attività non riuscita o che non è pianificabile.

Scenari comuni di risoluzione dei problemi per KubernetesExecutor

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

L'attività passa allo stato Running, quindi ha esito negativo durante l'esecuzione.

Sintomi:

  • Esistono log per l'attività nella UI di Airflow e nella scheda Log della 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 esistono log per le attività nella UI di Airflow e nella scheda Log della sezione Worker.
  • Nella scheda Log della sezione Scheduler sono presenti dei log contenenti un messaggio che indica che l'attività è contrassegnata come UP_FOR_RETRY o FAILED.
  • Il pod airflow-k8s-worker-*.* con il nome dell'attività/DAG all'interno del nome del pod ha lo stato Failed/Pending oppure è assente.

Soluzione:

  1. Controlla i log dello scheduler per verificare 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 nella 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 i log dello scheduler per trovare la risposta esatta e il motivo dell'errore.

Motivo possibile:

Se il messaggio di errore è quantities must match the regular expression ..., molto probabilmente il problema è causato da un valore personalizzato impostato per le risorse k8s (richieste/limiti) dei pod worker delle attività.

Passaggi successivi