我正在尝试为我的群集编写一个小的自动状态例程。基本上,我正在编写一个小shell脚本,它将查询所有节点,检查各种指标(类似于Ganglia会给我的......但我不能使用那个......长篇故事)。除了HBase之外,这样做了。对于所有其他服务器(NN,JT,ZK等),我可以查看配置文件并了解主机名。但是,HBase主机未在任何地方列出。它位于' / hbase / master' Z序节点。
我的问题..如何从bash获取该主机名?我一直在尝试类似' zkCli.sh -server myzoo<< get / hbase / master'等等,但到目前为止,我的空白。
最重要的是,我想要一个可以访问我所有主服务器的shell脚本。 HBase是我唯一遇到麻烦的人。
提前谢谢。
答案 0 :(得分:2)
根据用法字符串,我们应该能够做到
zkCli.sh -server myzoo get /hbase/master
即使这不起作用,我们也可以不用input.txt:
zkCli.sh -server myzoo <<EOF
get /hbase/master
quit
EOF
答案 1 :(得分:0)
我们可以在hbase-site.xml文件中使用“hbase.master”属性,然后就可以像其他进程一样选择它。