配置机架感知
- 编写Python脚本“RackAware.py” 并拷贝到其他节点的对应路径下
#!/usr/bin/python
#-*-coding:UTF-8 -*-
import sysrack = {"192.168.10.140":"DB19_SW001","192.168.10.141":"DB19_SW002","192.168.10.142":"DB19_SW003",}
if __name__=="__main__":print "/" + rack.get(sys.argv[1],"DB19_SW001")
- 命令验证
- 编辑core-site.xml配置文件,添加这个代码,并拷贝到其他节点的对应路径下
<property>
<name>topology.script.file.name</name>
<value>/home/bigdata/apps/hadoop/etc/hadoop/RackAware.py</value>
</property>
机柜感知失败问题总结
如下图
- core-site.xml 这个配置文件里的路径不对或多加了空格等
- 查看进程 jps 集群有些没有启动成功
- RackAware.py 的权限不够 chmod 777 RackAware.py
- RackAware.py 或 core-site.xml 在其他节点没拷贝成功