編輯core-site.xml配置檔案,将腳本配置為topology.script.file.name的值
進入到
/export/servers/hadoop-2.6.0-cdh5.14.0/etc/hadoop
的位置編輯core-site.xml配置檔案,将下面的代碼添加到檔案的末尾并儲存
topology.script.file.name
/home/bigdata/apps/hadoop/etc/hadoop/RackAware.py
最後進入到
/export/servers/hadoop-2.6.0-cdh5.14.0/sbin
的位置重新啟動hadoop的相關節點服務,運作正常後打開浏覽器
輸入http://192.168.10.201:8088/cluster/nodes
點選Nodes檢視是否修改成功
提示:文章寫完後,目錄可以自動生成,如何生成可參考右邊的幫助文檔
文章目錄
- 前言
- 一、編寫Python腳本“RackAware.py”
- 二、編輯core-site.xml配置檔案
前言
機架感覺需要人為進行配置,編寫Python腳本“RackAware.py”。内容為伺服器IP與交換機的對應關系。(開源hadoop,使用RackAware.sh)
一、編寫Python腳本“RackAware.py”
1: 選擇主節點進入到
/export/servers/hadoop-2.6.0-cdh5.14.0/etc/hadoop
編寫Python腳本“RackAware.py”
#!/usr/bin/python
#-*-coding:UTF-8 -*-
import sys
rack = {
"192.168.10.201":"SW6300-1",
"192.168.10.202":"SW6300-2",
"192.168.10.203":"SW6300-3",
}
if __name__=="__main__":
print "/" + rack.get(sys.argv[1],"SW6300-1-2")
注:
IP後的交換機名可根據自己需求編寫RackAware.py 的權限需要修改,不然後出現權限不夠的報錯!
chmod 777 RackAware.py
2: 然後scp到其他節點的相同路徑的位置儲存後用以下代碼驗證看是否成功
[[email protected] sbin]# python RackAware.py 192.168.10.201
/SW6300-1
[[email protected] sbin]# python RackAware.py 192.168.10.202
/SW6300-2
[[email protected] sbin]# python RackAware.py 192.168.10.203
/SW6300-3
二、編輯core-site.xml配置檔案
編輯core-site.xml配置檔案,
将腳本配置為topology.script.file.name的值
先進入到
/export/servers/hadoop-2.6.0-cdh5.14.0/etc/hadoop
的位置編輯core-site.xml配置檔案,将下面的代碼添加到檔案的末尾并儲存
<property>
<name>topology.script.file.name</name>
<value>/home/bigdata/apps/hadoop/etc/hadoop/RackAware.py</value>
</property>
最後進入到
/export/servers/hadoop-2.6.0-cdh5.14.0/sbin
的位置重新啟動hadoop的相關節點服務,運作正常後打開浏覽器
輸入
http://192.168.10.201:8088/cluster/nodes
點選Nodes檢視是否修改成功。