Hadoop集群部署

Hadoop 部署

1、下载hadoop

     去官网 http://hadoop.apache.org/ 进行下载,版本视情况。这里
     使用2.10版本的hadoop

2、准备工作

    准备hadoop2.10版本的包
    准备jdk1.8版本的包
    准备linux操作系统的机器至少2台
    
    (1)安装jdk
             通过rz命令或者xshell的xftp功能将包上传到主节点
             scp [包名]   从节点的ip:从节点的路径
             如果没看明白百度scp语法
             tar xf  jdk1.8    -C /usr/local
             mv /usr/local/jdk1.8   /usr/local/java
             echo "
             JAVA_HOME=/usr/local/java
             PATH=$JAVA_HOME/bin:$PATH
             export JAVA_HOME PATH
             " >> /etc/profile
             sourch /etc/profile

            java --version
       
    (2)配置hosts
              每一台机器的hosts文件添加解析
              ip地址  主机名
           
          
     (3) 配置ssh免密
           ssh-keygen
           ssh-copy-id  从节点ip地址
            
           如果出现报错说无法验证主节点是否存在,就将传出去的公钥中的
           内容复制到自己的私钥当中去即可

3、安装hadoop

      (1) 解压文件
      tar xf hadoop2.10   -C /usr/local
      
      (2) 修改配置文件
      以下所有x.x.x.x都为集群master节点的ip
      进入/usr/local/hadoop2.10/etc/hadoop
      修改  hadoop-env.sh,找到JAVA_HOME,将其值改为真实的java路径
      export JAVA_HOME=/usr/local/java
       
        
     修改core-site.xml,将下面的配置拷贝至<configuration></configuration>
       
        
         
       <!--指定hdfs的namenode-->
    <property>
            <name>fs.defaultFS</name>
            <value>hdfs://x.x.x.x:9000</value>
    </property>
    <!--指定hadoop临时目录-->
    <property>
            <name>hadoop.tmp.dir</name>
            <value>/u01/hadoop-2.6.2/tmp</value>
    </property>
    <!--用作序列化文件处理时读写buffer的大小-->
    <property>
            <name>io.file.buffer.size</name>
            <value>131072</value>
    </property>
    <property>
            <name>hadoop.proxyuser.hduser.hosts</name>
            <value>*</value>
    </property>
    <property>
            <name>hadoop.proxyuser.hduser.groups</name>
            <value>*</value>
    </property>


 修改hdfs-site.xml
  
  <!--namenode磁盘挂载地址-->
    <property>
           <name>dfs.namenode.name.dir</name>
           <value>/u01/hdfs/name</value>
    </property>
    <!--datanode磁盘挂载地址-->
    <property>
           <name>dfs.datanode.data.dir</name>
           <value>/u01/hdfs/data</value>
    </property>
    <!--数据副本数量-->
    <property>
           <name>dfs.replication</name>
           <value>1</value>
           </property>
    <!--如果需要,开启WebHDFS功能在Namenode和Datanode上(REST API)-->
    <property>
           <name>dfs.webhdfs.enabled</name>
           <value>true</value>
    </property>
    <property>
           <name>dfs.namenode.secondary.http-address</name>
           <value>x.x.x.x:9001</value>
    </property>
    <property>
           <name>dfs.permissions.enable</name>
           <value>false</value>
    </property>
    <property>
           <name>dfs.namenode.datanode.registration.ip-hostname-check</name>
           <value>false</value>
    </property>


执行cp mapred-site.xml.template  mapred-site.xml,
生成mapred-site.xml文件,编辑 mapred-site.xml。
 
<property>
     <name>mapreduce.framework.name</name>
       <value>yarn</value>
    </property>
    <property>
        <name>mapreduce.jobhistory.address</name>
        <value>x.x.x.x:10020</value>
    </property>


修改yarn-site.xml
 
  <property>
             <name>yarn.resourcemanager.hostname</name>
             <value>x.x.x.x</value>
    </property>

    <property>
             <name>yarn.resourcemanager.admin.address</name>
             <value>x.x.x.x:8033</value>
   </property>
   <property>
             <name>yarn.resourcemanager.webapp.address</name>
             <value>x.x.x.x:8088</value>
   </property>
    <property>
             <name>yarn.resourcemanager.address</name>
             <value>x.x.x.x:8032</value>
    </property>
    <property>
             <name>yarn.resourcemanager.scheduler.address</name>
             <value>x.x.x.x:8030</value>
    </property>
<property>
            <name>yarn.resourcemanager.resource-tracker.address</name>
            <value>x.x.x.x:8031</value>
    </property>

    <property>
            <name>yarn.nodemanager.local-dirs</name>
            <value>/u01/hdfs/nmlocal</value>
    </property>
    <property>
            <description>where to store container logs.</description>
            <name>yarn.nodemanager.log-dirs</name>
            <value>/u01/hdfs/nmlog</value>
    </property>

    <!--指定nodemanager启动时加载server的方式为shuffle server-->
    <property>
            <name>yarn.nodemanager.aux-services</name>
            <value>mapreduce_shuffle</value>
    </property>

    <!--配置当前机器的可用内存,通常配置当前机器剩余可用内存的80%-->
    <property>
            <name>yarn.nodemanager.resource.memory-mb</name>
            <value>8000</value>
            </property>

    <!--一个Yarn container申请内存的最小计费单位-->
    <property>
            <name>yarn.scheduler.minimum-allocation-mb</name>
            <value>128</value>
    </property>

    <!--一个Yarn container申请内存的最大计费单位-->
    <property>
            <name>yarn.scheduler.maximum-allocation-mb</name>
            <value>8000</value>
    </property>

    <!--当前机器可以启动的Yarn container的数量,当前机器cpu线程的3倍-->
    <property>
            <name>yarn.nodemanager.resource.cpu-vcores</name>
            <value>48</value>
     </property>
<property>
       <name>yarn.log-aggregation-enable</name>
       <value>true</value>
   </property>
   <property>
      <name>yarn.log.server.url</name>
      <value>http://masterip:19888/jobhistory/logs</value>
   </property>

修改slaves
将集群所有的机器主机名加上
 
(3) 将当前目录复制到从节点的这个目录下
使用scp即可

4、启动集群

       以下操作均在master节点上
      (1) 格式化文件系统
      进入hadoop主目录下的bin目录 执行./hadoop namenode -format
       
      (2) 启动集群
      进入hadoop主目录下的sbin目录 执行:
      ./ mr-j0obhistory-daemon.sh start historyserver
       
      (3) 查看是否成功
      在master节点上执行jps,看到以下线程即为成功。
      NameNode
      SecondaryNameNode
      DataNode
      ResourceManager
      NodeManager
      JobHistoryServer
    
      在从节点上执行jps,看到以下线程即为成功。
      DataNode
      NodeManager
       
      使用浏览器访问hadoopip:8088 即可
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值