無論是新增namenode還是SecondaryNameNode,操作方法大致相同
一、如果新增datanode,需要保證namenode能無密碼ssh連接到新datanode
如果是添加SecondaryNameNode,則需保證其能無密碼ssh連接至各datanode和namenode,namenode也需要能無密碼連接到新SecondaryNameNode
# ssh-copy-id -i /root/.ssh/id_rsa.pub root@datanodes
二、同步程序文件
hadoop的運行依賴JAVA環境,所以,以namenode為準,遷移java環境:
在namenode上運行:
# rsync -av /opt/jdk1.6.0_33 root@dest_server:/opt/
創建文件 /etc/profile.d/java.sh ,內容 為:
export JAVA_HOME="/opt/jdk1.6.0_33" export CLASSPATH=$JAVA_HOME/lib:$JAVA_HOME/jre/lib
在namenode主機上的conf/master文件中添加新SecondaryNameNode的IP地址:
106.186.122.165
(如果是只新增namenode則不需要上面這一步)
遷移hadoop軟件,日志文件不需要遷移:
# rsync -av --exclude "logs" /data/hadoop-1.1.1/ root@dest_server:/data/hadoop-1.1.1/
三、保證各結點時區一致(我們現有服務器時區五花八門,所以這一步很重要)
# rsync -av /etc/localtime root@dest_server:/etc/
四、在/etc/profile中重新定義PATH變量
在新結點上:
# echo "export PATH=$PATH:/opt/jdk1.6.0_33/bin:/data/hadoop-1.1.1/bin" >> /etc/profile
五、運行所需的服務
如果是新增datanode,在相應主機上運行:
# hadoop-daemon.sh start datanode # hadoop-daemon.sh start tasktracker
如果是新增SecondaryNameNode,在相應主機上運行:
# hadoop-daemon.sh start secondarynamenode
以上均可用jps命令查看其運行狀況。
So easy~
原創文章,作者:紅豆殺,如若轉載,請注明出處:http://www.www58058.com/739