zoukankan      html  css  js  c++  java
  • Hadoop自学笔记(五)配置分布式Hadoop环境

    上一课讲了怎样在一台机器上建立Hadoop环境。我们仅仅配置了一个NHName Node, 这个Name Node里面包括了我们全部Hadoop的东西。包括Name Node, Secondary Name Node, Job Tracker, Task Tracker,这一课解说怎样把上述配置放到不同机器上。从而构建一个分布式的hadoop配置。


    1. hadoop分布式安装概览

    a) 2-10nodes:Name Node, Job Tracker, Secondary Name Node都能够放在一台机器上,全部的Data NodeTask Tracker放在其它机器上

    b) 10-40nodes: 能够把Secondary Name Node分开来

    c) 100+ nodes: 全部的NodeTrackers都分开放。而且加入rack awareness支持,同一时候须要各类优化设置。


    本课的流程:

    配置好ssh到全部的机器上。使其能够免输入password连接(如同上一课所述)

    配置好mastersslaves

    配置好全部的*-site文件

    学习使用命令来启动。控制和关闭Hadoop(经常使用脚本说明例如以下图)。


    2. 配置Hadoop2-10个节点上

    这个图非常帅。我们在HN Client机器上来控制全部的Hadoop机器。每一个机器给一个窗体(下图已经通过ssh链接到每台机器了,链接方式见上一课)。


    第一步:取消全部机器上面的sshpassword訪问

    ssh-copy-id -i $HOME/.ssh/id-rsa.pub nuggetuser@HNData1

    把这个文件复制到全部的HNDataSecondary Name Node上面。这样就能够无password登陆了。


    第二步:配置MasterSlaves

    全部的配置文件都在/usr/local/hadoop/conf目录以下

    配置好masters来指向Secondary Name Node, 然后配置slaves文件指向全部的HNData Node

    Master文件默认的是localhost

    用不论什么编辑器打开masters文件。删除localhost, 输入HN2ndName (就是你Secondary Name Node 的名称)

    相同。编辑slaves文件,把全部的HNData Node名称输入


    第三步:配置全部的Data Node,让它们指向Name Node。全部的Task Tracker指向Job Tracker

    通过core-site.xml配置前者,通过mapred-site.xml配置后者

    HNData Node配置core-site.xml例如以下(由于我们是直接把上次的机器配置拷贝进来的。所以能够发现这个文件已经配置过了,例如以下:)


    配置mapred-site.xml例如以下:



    上面的配置应该已经是这样了,只是不妨检查好每个Data Node中的配置是不是这样


    第四步:又一次格式化Name Node

    hadoop namenode -format

    第五步:配置完毕了,能够试着看看是否能启动

    start-dfs.sh 这个命令启动全部的Name NodesData Nodes,能够使用jps命令来查看是否成功启动了。


    start-mapred.sh 这个命令启动全部的Job TrackersTask Trackers。 相同使用jps来检測是否启动了,假设没有成功,能够去看看logs文件

    3. 启动和关闭Hadoop各部分的命令

    假设要删除一个node。能够建立一个excludes文件,在里面输入你不想要的node名称,比方HNData3.

    然后配置HN Name Nodecore-site.xml例如以下(在最后加入一个property


    相同能够建立一个includes文件来指定包括哪些节点

    配置完毕后,启用配置:

    hadoop dfsadmin -refreshNodes

    我们能够在hnname:50070上面看到被排除的Node


    执行rebalancer命令

    start-balancer.sh

    关闭Job Tracker。 Task Tracker

    stop-mapred.sh

    关闭Name Node, Data Nodes:

    stop-dfs.sh


    假设要同一时候启动HNName Node, Data Node, Job Tracker, Task Tracker,则直接输入:

    start-all.sh



  • 相关阅读:
    Asp.NetCore Web开发之初始文件解析
    Asp.NetCore Web开发之创建项目
    Asp.NetCore Web开发之ADO.Net
    C#中的元组(Tuple)和结构体(struct)
    C#中的扩展方法
    HTTP方法:GET和POST
    Chapter 3准备:基础设施与TA框架
    Chapter 2 全程测试:闪光的思想
    SOAP协议
    接口自动化测试——入门
  • 原文地址:https://www.cnblogs.com/jhcelue/p/6727373.html
Copyright © 2011-2022 走看看