Hadoop 管理实用程序
创建了一个基本的 Hadoop 管理实用程序,用于检查 dfs 健康和 oozie 状态。
检查 oozie 状态
在我的上述实用程序中,我使用以下命令:
bin/oozie admin -oozie http://localhost:11000/oozie -status
对上述命令的担忧
当 oozie 无法正常工作时,此调用将不会在一两个小时内返回。该实用程序将长时间处于挂起状态。这可能会影响 UNIX 系统。
替代解决方案
我们可以检查 oozie 日志
tail -100 oozie.log
将日志的最新时间戳与系统日期(时间戳)进行比较。如果oozie_timestamp < system_timestamp 的 5 分钟(任何阈值限制),然后打印消息为“Oozie 已停止运行“。
在 Oozie 日志中检查/Grep 单词“Error”。
有没有其他替代解决方案来获取 oozie 状态?Oozie 状态命令“ 和 ”Oozie 日志文件解析“
答案1
您可以直接通过 curl 使用 Web 服务 URL,然后手动设置请求的超时时间:
curl -m 10 http://localhost:11000/oozie/v1/admin/status
切换-m
是您在失败之前等待响应的总时间。
也可能有一个选项可以修改 oozie 使用的 http 客户端的默认超时时间(可能通过设置系统属性来实现-Dkey=value
),但你需要深入研究源代码,看看是否可行