阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

Hadoop集群中添加datanode节点

203次阅读
没有评论

共计 2814 个字符,预计需要花费 8 分钟才能阅读完成。

随着业务的扩展,公司刚开始的三个节点已经不够用了,因此需要添加 datanode。下面记录一下添加 datanode 节点的步骤:

1、在新的 datanode 上创建 Hadoop 运行的用户 grid,并修改密码。并修改 ip 地址和绑定主机名,hosts 文件,关闭新节点的防火墙。

我用的是 CentOS7 的系统,因此修改静态 ip 地址是:vi  /etc/sysconfig/network-scripts/ifcfg-eno16777736

然后执行 service  network  restart  重启网络。

绑定主机名:vi  /etc/hostname,修改成自定义的主机名即可。

关闭防火墙:由于 centos7 用 firewalld 取代了 iptables。因此关闭防火墙的命令是:

systemctl  status  firewalld  查看防火墙的状态

systemctl  stop  firewalld  关闭防火墙

systemctl  disable firewalld  禁止防火墙开机启动,对应的会删除两个文件。

修改 hosts 文件:

vi  /etc/hosts

shutdown -r now  重启电脑。

2、(1)在新的 datanode 节点上,用 grid 登录,创建 ssh 公钥:ssh-keygen -t rsa,

(2)并对产生的公钥 id_rsa.pub 进行备份:cp id_rsa.pub id_rsa.pub.x  , 这里 x 表示新添加的节点对应的编码。

(3)并将 id_rsa.pub.x 发送到主节点上。

  scp -r  id_rsa.pub.x grid@namenode_hostname:/home/grid/.ssh/

3、在主节点上,

(1)将 id_rsa.pub.x 拷贝到 authorized_keys 当中:cat id_rsa.pub.x >>authorized_keys

(2)主节点将 authorized_keys 分发给所有的节点,包括新的 datanode。

scp -r authorized_keys  grid@datanode_hostname1:/home/grid/.ssh/

scp -r authorized_keys  grid@datanode_hostname1:/home/grid/.ssh/

:

:

(3)在主节点上,添加新的 datanode 的 ip 地址:

vi  /etc/hosts  在该文件中添加新节点的 ip 地址和主机名

然后将主节点上的 hosts 文件分发给所有的节点(包括新添加的 datanode)。

(4)将主节点的 jdk 的安装文件、hadoop 的安装文件、环境变量的文件 /etc/profile 分别都分发给新添加的 datanode。

(5)修改主节点上的 hadoop 的 salves 文件,添加 datanode 新节点的主机名。

(6)在新添加的节点上执行 source /etc/profile

(7)在新的节点上执行:
hadoop-daemon.sh start datanode
hadoop-daemon.sh start tasktracker

(8)均衡之前的 datanode 的 block,在新的节点上执行:
start-balancer.sh

这个会非常耗时
1)如果不 balance,那么 cluster 会把新的数据都存放在新的 node 上,这样会降低 mapred 的工作效率
2)设置平衡阈值,默认是 10%,值越低各节点越平衡,但消耗时间也更长
[root@slave-004 hadoop]# start-balancer.sh -threshold 5
3)设置 balance 的带宽,默认只有 1M/s,修改 hdfs-site.xml

<property>
<name>dfs.balance.bandwidthPerSec</name>
<value>1048576</value>
</property>

(9)安全模式
有两个方法离开这种安全模式:
1)修改 dfs.safemode.threshold.pct 为一个比较小的值,缺省是 0.999。
dfs.safemode.threshold.pct(缺省值 0.999f)
HDFS 启动的时候,如果 DataNode 上报的 block 个数达到了元数据记录的 block 个数的 0.999 倍才可以离开安全模式,否则一直是这种只读模式。如果设为 1 则 HDFS 永远是处于 SafeMode。

2)hadoop dfsadmin -safemode leave 命令强制离开
dfsadmin -safemode value 参数 value 的说明:
enter – 进入安全模式
leave – 强制 NameNode 离开安全模式
get –  返回安全模式是否开启的信息
wait – 等待,一直到安全模式结束。

Ubuntu14.04 下 Hadoop2.4.1 单机 / 伪分布式安装配置教程  http://www.linuxidc.com/Linux/2015-02/113487.htm

CentOS 安装和配置 Hadoop2.2.0  http://www.linuxidc.com/Linux/2014-01/94685.htm

Ubuntu 13.04 上搭建 Hadoop 环境 http://www.linuxidc.com/Linux/2013-06/86106.htm

Ubuntu 12.10 +Hadoop 1.2.1 版本集群配置 http://www.linuxidc.com/Linux/2013-09/90600.htm

Ubuntu 上搭建 Hadoop 环境(单机模式 + 伪分布模式)http://www.linuxidc.com/Linux/2013-01/77681.htm

Ubuntu 下 Hadoop 环境的配置 http://www.linuxidc.com/Linux/2012-11/74539.htm

单机版搭建 Hadoop 环境图文教程详解 http://www.linuxidc.com/Linux/2012-02/53927.htm

更多 Hadoop 相关信息见 Hadoop 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=13

本文永久更新链接地址 :http://www.linuxidc.com/Linux/2015-05/117707.htm

正文完
星哥玩云-微信公众号
post-qrcode
 0
星锅
版权声明:本站原创文章,由 星锅 于2022-01-20发表,共计2814字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中