我目前遇到一个问题,我的Celery工作人员偶尔会冻结,需要重新启动。我有一个Airflow实例,我想使用BashOperator
或SSHOperator
配置并安排重新启动,但我不确定如何继续,因为它在Docker容器。
从本地主机我只是" docker重启worker",但由于Bash在气流容器内运行,我需要找到一种方法通过气流CLI或SSH从容器重新启动到主机,听起来很可怕。有没有一种优雅的方式来解决这个问题?
编辑:我看到Flower有一个REST API,我可以从中重新启动池,但我必须在我的celery配置中启用它。它看起来像airflow is setting the config,有没有办法覆盖它?
答案 0 :(得分:0)
好的,这就是我最终做的事情:
int index=list.size() - 1;
while (index >= 0){
if(list.get(index).equals(z)){
return index;
}
index--;
}
return -1;
没有真正阻止我的任务挂起,但它是:)。