[转帖] Hadoop安装手册4-添加与删除Hadoop节点_Hadoop,ERP及大数据讨论区_Weblogic技术|Tuxedo技术|中间件技术|Oracle论坛|JAVA论坛|Linux/Unix技术|hadoop论坛_联动北方技术论坛  
网站首页 | 关于我们 | 服务中心 | 经验交流 | 公司荣誉 | 成功案例 | 合作伙伴 | 联系我们 |
联动北方-国内领先的云技术服务提供商
»  游客             当前位置:  论坛首页 »  自由讨论区 »  Hadoop,ERP及大数据讨论区 »
总帖数
1
每页帖数
101/1页1
返回列表
0
发起投票  发起投票 发新帖子
查看: 400 | 回复: 0   主题: [转帖] Hadoop安装手册4-添加与删除Hadoop节点        上一篇   下一篇 
justfriend
注册用户
等级:新兵
经验:61
发帖:62
精华:0
注册:2011-11-21
状态:离线
发送短消息息给justfriend 加好友    发送短消息息给justfriend 发消息
发表于: IP:您无权察看 2016-4-14 14:29:00 | [全部帖] [楼主帖] 楼主

HDFS添加节点

现有环境如下:

    192.168.30.203 hdnode1

    192.168.30.204 hdnode2

  • 192.168.30.205 hdnode3

其中hdnode1是namenode,hdnode2和hdnode3是datanode我们要新增加两个datanode:

    192.168.30.206 hdnode4

  • 192.168.30.207 hdnode5

那么首先初始化hdnode4和hdnode5两节点,初始化节点部分就不再重复了吧,操作步骤可以参与之前"HADOOP安装"中的内容。

初始化完之后,hdnode4和hdnode5两节点应该都拥有了grid用户,配置好用户环境变量,解压好了hadoop软件包(最好是将原节点中的hadoop文件夹打包复制过来,可以减少配置)。

下面需要进行若干修改了,操作时要注意了,有些操作仅在新增节点执行,还有些操作需要在所有的节点上进行。

修改hosts文件

修改hosts文件配置,所有节点都需要执行,通过vi编辑/etc/hosts文件:

  • # vi /etc/hosts

增加两行:

    192.168.30.206 hdnode4

  • 192.168.30.207 hdnode5

配置节点间节密码访问

注意本步都在grid用户下操作的哟。首先在hdnode1端执行:

    $ ssh hdnode4 cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys

  • $ ssh hdnode5 cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys

将新的authorized_keys文件复制到所有的节点:

    $ scp ~/.ssh/authorized_keys hdnode2:/home/grid/.ssh/authorized_keys

    $ scp ~/.ssh/authorized_keys hdnode3:/home/grid/.ssh/authorized_keys

    $ scp ~/.ssh/authorized_keys hdnode4:/home/grid/.ssh/authorized_keys

  • $ scp ~/.ssh/authorized_keys hdnode5:/home/grid/.ssh/authorized_keys

而后可以尝试在各尝试相互访问,看看是否需要输入密码。

本步操作中有不明白的可以参考“hadoop安装手册”第1.3小节。

修改masters和slaves文件

Masters 文件其实也可以不用修改,还记得masters的用途不?没错就是secondary namenode嘛,咱们这个测试环境中,就跟namenode放 在一起也没关系的。 如果要修改的话,可以编译masters文件,新增一个节点保存secondary namenode:

  • $ vi /usr/local/hadoop-0.20.2/conf/masters 

修改所有节点的slaves文件,将新增的hdnode4和hdnode5加进去:

    echo "hdnode4" >> /usr/local/hadoop-0.20.2/conf/slaves

  • echo "hdnode5" >> /usr/local/hadoop-0.20.2/conf/slaves

修改后的slaves文件内容如下:

 

    $ more /usr/local/hadoop-0.20.2/conf/slaves 

    hdnode2

    hdnode3

    hdnode4

  • hdnode5

新节点中单独启动datanode和tasktracker

环境现在已经初始化好了,那么接下来就可以单独启动新节点中的datanode和tasktracker进程了。

分别在hdnode4和hdnode5节点执行:

    $ hadoop-daemon.sh start datanode

  • $ hadoop-daemon.sh start tasktracker

这样HDFS的扩容就完成了,可以通过hadoop dfsadmin命令查看统计信息:

    [grid@hdnode4 ~]$ hadoop dfsadmin -report

    Configured Capacity: 422752010240 (393.72 GB)

    Present Capacity: 400489983786 (372.99 GB)

    DFS Remaining: 400489492480 (372.98 GB)

    DFS Used: 491306 (479.79 KB)

    DFS Used%: 0%

    Under replicated blocks: 0

    Blocks with corrupt replicas: 0

    Missing blocks: 0


    -------------------------------------------------

    Datanodes available: 4 (4 total, 0 dead)

    ……

  • ……

容量已经扩充到四百G了。

平衡存储负载

尽管容量扩展了,但数据目前仍然是保存在原有的两个节点上,接下来可以通过start-balancer.sh进行数据负载均衡:

    $ start-balancer.sh 

    starting balancer, logging to /usr/local/hadoop-0.20.2/bin/../logs/hadoop-grid-balancer-hdnode4.out

    Time Stamp               Iteration#  Bytes Already Moved  Bytes Left To Move  Bytes Being Moved

  • The cluster is balanced. Exiting...

对于数据规模较大的HDFS来说,本操作可能需要花费较长时间,因为它需要将数据重新平衡到不同的节点上,因此正式环境操作的话需要慎重。

删除节点 

这个就不演示了吧,直接关机,就当那台节点宕机了:)

然后呢,然后做什么?哥们,我们现在部署好了HDFS可以存储数据,Tasktracker和Jobtracker也已就绪,我们目前已经为分布式计算打好了基础,接下来,找个顺手的java开发工具吧。





赞(0)    操作        顶端 
总帖数
1
每页帖数
101/1页1
返回列表
发新帖子
请输入验证码: 点击刷新验证码
您需要登录后才可以回帖 登录 | 注册
技术讨论