1 执行定时任务haloBak时报错
报错内容如下:
29-04-2020 20:34:57 CST haloBak INFO - ssh: connect to host asus port 22: Connection timed out
29-04-2020 20:34:57 CST haloBak INFO - rsync: connection unexpectedly closed (0 bytes received so far) [sender]
29-04-2020 20:34:57 CST haloBak INFO - rsync error: unexplained error (code 255) at io.c(226) [sender=3.1.2]
可能原因1:定时任务中有scp和rsync命令,而azkaban无权限运行ssh和rsync命令。必须要root用户才能执行ssh的免密登录,其他用户需要输入密码。
解决步骤1:给该定时任务设置代理用户root,以root用户的权限执行任务。具体步骤如下:
- 给
标签加上proxy属性,值设置为root。
vim /usr/develop/azkaban-solo-server/conf/azkaban-users.xml
# 添加属性proxy="root"
<user groups="azkaban" password="azkaban" roles="admin" username="azkaban" proxy="root" />
-
然后重启azkaban
service azkaban restart -
访问web管理界面,打开任务backupHalo
-
设置任务的权限
按照截图中的步骤,先删除(remove)原来的proxy user “azkaban”,然后添加(add) root.(如果没有步骤1,则这里会报错)
-
不知道是否需要再次重启azkaban。
下周三看看是否解决了。。。
未解决,发现还是同样的问题。
可能原因2:ssh: connect to host asus port 22: Connection timed out
,azkaban上执行任务时,无法识别asus主机名。
解决步骤2:shell脚本中将主机名asus改为IP 192.168.6.6。
以后的几天观察,发现azkaban定时任务都执行成功了。解决了。