Hadoop新增datanode与SecondaryNameNode

无论是新增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~

  1. Pingback: zabbix agent自动安装脚本 | 一起吧,GO!

  2. 一家餐厅里看见了温馨的一幕、男孩对女孩说“就剩不多肉了、你多吃点、我不饿。”女孩感动的说“老公、你特么吃个自助哪来那么多废话!吃不下还特么夹那么多!给老娘吃完!”