Bonjour Gabriel Martin,
Pour résoudre cela et configurer la concurrence comme vous l'avez demandé, vous devez réduire le nombre de tâches s'exécutant simultanément sur chaque nœud. Vous pouvez le faire en ouvrant votre airflow.cfg fichier, en localisant la [celery] section et en abaissant le worker_concurrency paramètre (ou en diminuant la AIRFLOW__CELERY__WORKER_CONCURRENCY variable d'environnement). Dans une configuration standard d'exécuteur Celery, il n'existe pas de configuration directe pour allouer un quota de mémoire strict par tâche individuelle ; à la place, la mémoire disponible pour chaque tâche est dictée par la RAM physique totale du nœud divisée par votre limite de concurrence de travailleurs. En réduisant significativement la worker_concurrency valeur et en redémarrant vos travailleurs Celery, vous consacrez naturellement plus de mémoire totale du nœud à chaque tâche individuelle, ce qui empêchera le tueur OOM de générer l'erreur SIGKILL lors de vos charges de travail batch lourdes.
J'espère que cette réponse vous a apporté des informations utiles. Si c'est le cas, veuillez cliquer sur « accepter la réponse ». Si vous avez des questions, n'hésitez pas à laisser un commentaire.
VPHAN