Azkaban报错-azkaban.executor.ExecutorManagerException: No active executors found

推荐大家去看原文博主的文章,条理清晰阅读方便,转载是为了方便以后查阅

1、https://www.pianshen.com/article/1164398943/

2、https://www.jianshu.com/p/5a3f31698042

1、Azkaban报错-azkaban.executor.ExecutorManagerException: No active executors found

Issue

2019/05/09 21:50:07.380 +0800 ERROR [ExecutorManager] [Azkaban] No active executors found
2019/05/09 21:50:07.380 +0800 ERROR [StdOutErrRedirect] [Azkaban] Exception in thread "main" 
2019/05/09 21:50:07.380 +0800 ERROR [StdOutErrRedirect] [Azkaban] azkaban.executor.ExecutorManagerException: No active executors found
2019/05/09 21:50:07.381 +0800 ERROR [StdOutErrRedirect] [Azkaban] 	at azkaban.executor.ActiveExecutors.setupExecutors(ActiveExecutors.java:52)
2019/05/09 21:50:07.381 +0800 ERROR [StdOutErrRedirect] [Azkaban] 	at azkaban.executor.ExecutorManager.setupExecutors(ExecutorManager.java:197)
2019/05/09 21:50:07.381 +0800 ERROR [StdOutErrRedirect] [Azkaban] 	at azkaban.executor.ExecutorManager.initialize(ExecutorManager.java:131)
2019/05/09 21:50:07.381 +0800 ERROR [StdOutErrRedirect] [Azkaban] 	at azkaban.executor.ExecutorManager.start(ExecutorManager.java:145)
2019/05/09 21:50:07.381 +0800 ERROR [StdOutErrRedirect] [Azkaban] 	at azkaban.webapp.AzkabanWebServer.launch(AzkabanWebServer.java:231)
2019/05/09 21:50:07.381 +0800 ERROR [StdOutErrRedirect] [Azkaban] 	at azkaban.webapp.AzkabanWebServer.main(AzkabanWebServer.java:224)

 

Answer

 

没有找到活动的executors,需在MySQL数据库里设置端口为12321的executors表的active为1

update azkaban.executors set active=1;

解决方式转载https://www.pianshen.com/article/1164398943/

2、Azkaban Executor 启动后不会自动激活

使用Azkaban调度任务时候总是出错

 

2019/05/21 12:11:03.158 +0800 ERROR [ExecutorManager] [Azkaban] Rolling back executor assignment for execution id:5
azkaban.executor.ExecutorManagerException: java.io.IOException: executor became inactive before setting up the flow 5
    at azkaban.executor.ExecutorApiGateway.callWithExecutionId(ExecutorApiGateway.java:80)
    at azkaban.executor.ExecutorApiGateway.callWithExecutable(ExecutorApiGateway.java:43)
    at azkaban.executor.ExecutorManager.dispatch(ExecutorManager.java:1051)
    at azkaban.executor.ExecutorManager.access$600(ExecutorManager.java:65)
    at azkaban.executor.ExecutorManager$QueueProcessorThread.selectExecutorAndDispatchFlow(ExecutorManager.java:1282)
    at azkaban.executor.ExecutorManager$QueueProcessorThread.processQueuedFlows(ExecutorManager.java:1254)
    at azkaban.executor.ExecutorManager$QueueProcessorThread.run(ExecutorManager.java:1192)
Caused by: java.io.IOException: executor became inactive before setting up the flow 5
    at azkaban.executor.ExecutorApiGateway.callForJsonObjectMap(ExecutorApiGateway.java:108)
    at azkaban.executor.ExecutorApiGateway.callWithExecutionId(ExecutorApiGateway.java:78)
    ... 6 more
2019/05/21 12:11:03.163 +0800 WARN [ExecutorManager] [Azkaban] Executor otest01:12321 (id: 5), active=true responded with exception for exec: 5
azkaban.executor.ExecutorManagerException: azkaban.executor.ExecutorManagerException: java.io.IOException: executor became inactive before setting up the flow 5
    at azkaban.executor.ExecutorManager.dispatch(ExecutorManager.java:1057)
    at azkaban.executor.ExecutorManager.access$600(ExecutorManager.java:65)
    at azkaban.executor.ExecutorManager$QueueProcessorThread.selectExecutorAndDispatchFlow(ExecutorManager.java:1282)
    at azkaban.executor.ExecutorManager$QueueProcessorThread.processQueuedFlows(ExecutorManager.java:1254)
    at azkaban.executor.ExecutorManager$QueueProcessorThread.run(ExecutorManager.java:1192)
Caused by: azkaban.executor.ExecutorManagerException: java.io.IOException: executor became inactive before setting up the flow 5
    at azkaban.executor.ExecutorApiGateway.callWithExecutionId(ExecutorApiGateway.java:80)
    at azkaban.executor.ExecutorApiGateway.callWithExecutable(ExecutorApiGateway.java:43)
    at azkaban.executor.ExecutorManager.dispatch(ExecutorManager.java:1051)
    ... 4 more
Caused by: java.io.IOException: executor became inactive before setting up the flow 5
    at azkaban.executor.ExecutorApiGateway.callForJsonObjectMap(ExecutorApiGateway.java:108)
    at azkaban.executor.ExecutorApiGateway.callWithExecutionId(ExecutorApiGateway.java:78)
    ... 6 more

各种方法都使用了但是也没有用,最后发现一篇大神写的博客后就解决了:

通过翻看 Azkaban Executor Server 源码,发现 Executor 提供了 rest 接口,来手动激活 Executor.
为什么不在 Executor 启动时自动激活呢….官方 issue110 解释如下:

 

We don't update prior to web-server start.

Let me introduce how we do a regular Executor deployment. Both old webserver and old executor(3.a) are up initially, and old executor is running jobs (we can not interrupt it). Executor Deployment starts:

install new Executor (3.b) on our box without activating.
Run job tests, which targets 3.b and make sure 3.b is working.
Activate 3.b, and deactivate 3.a. Even though 3.a is deactivated, jobs still keep runnig there.
Deployment completes.
We would better run tests against new executor before activating it. Is it a bit clear now?

解决办法:
curl http://${executorHost}:${executorPort}/executor?action=activate

查看mysql =》azkaban=》executors

查看host 跟port

eg: 

解决方式参考:https://www.jianshu.com/p/5a3f31698042

 

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值