基于Hive的hadoop集群搭建详细解说

来源:互联网 发布:json.parse解析不了 编辑:程序博客网 时间:2024/06/06 00:34
一:基于linux配置集群3台的操作要点
     
      0.配置集群前,首先要讲集群的配置图准备好
         hadoop102                     haooop103                         hadoop104
          namenode                           /                                       /
         datanode                     datanode                              datanode
         nodemanager              nodemanager                       nodemanager (不用手动 配置)
              /                        resourcemanager                        /    (resourcemanager即yarn所在结点)
           jobhistory                         /                                           / 
             /                                    /                                         secodarynamenode 

     1. 检查Linux配置 ,linux要没有问题
  •         1、防火墙关闭
        2、/etc/hosts的IP映射
        3、/etc/hostname 主机名
        4、ntp时间服务器
        5、网卡信息配置

     2.在linux上安装jdk,并且配置jdk系统环境变量
           vi/etc/profile   添加如下
             JAVA_HOME=/opt/modules/jdk......(jdk的安装路径)
             PATH=$PATH:$JAVA_HOME/bin
       最后用:source /etc/profile   让配置文件生效 ,用java -version 判断是否配置好jdk
 
     3.在 linux上配置hadoop(具体流程参考前面搭建hadoop集群)
         1.   vi /etc/profile 给hadoop配置系统环境变量
    export HADOOP_HOME=/opt/module/hadoop-2.7.2
   export PATH=$PATH:$HADOOP_HOME/bin
             export PATH=$PATH:$HADOOP_HOME/sbin  
         
     2.修改hadoop-env.sh文件中JAVA_HOME路径:给hadoop配置jdk环境变量。
                 这个文件是在handop下的etc下的hadoop文件里
                 export JAVA_HOME=/opt/module/jdk1.7.0_79

       4.配置hadoop文件:共有8个---3个模块的环境变量和3个模块的xxx-site.xml以及一个core-site.xml文件和slaves
          * 检查HDFS\检查YARN\检查MapReduce
            分别给下面三个添加jdk环境变量,因为其运行依赖jdk :export JAVA_HOME= .....................
            hadoop.env.sh
            yarn-env.sh
            mapred-env.sh

        1.core-site.xml
            <configuration>
                <property>
                  <!-- 配置namenode所在节点以及默认文件系统 -->
                    <name>fs.defaultFS</name>
                    <value>hdfs:/hadoop102:8020</value>
                </property>
                  <!-- 配置节点数据存储位置路径 -->
                <property>
                    <name>hadoop.tmp.dir</name>
                    <value>/opt/modules/cdh/hadoop-2.5.0-cdh5.3.6/data</value>
                </property>
            </configuration>

       2. hdfs-site.xml
            <configuration>
                <!-- 指定数据冗余份数 -->
                <property>
                    <name>dfs.replication</name>
                    <value>3</value>
                </property>

                <!-- 关闭权限检查-可选择配置->
                <property>
                    <name>dfs.permissions.enable</name>
                    <value>false</value>
                </property>

                                 <!-- 配置secondarynamenode浏览器地址以及端口50090 -->
                <property>
                    <name>dfs.namenode.secondary.http-address</name>
                    <value>hadoop104:50090</value>
                </property>

                                 <!-- 配置namenode浏览器地址以及端口50070 -->
                <property>
                    <name>dfs.namenode.http-address</name>
                    <value>hadoop102:50070</value>
                </property>

                                 <!-- 配置是否允许浏览器端访问hdfs,默认不配置也是true-->
                <property>
                    <name>dfs.webhdfs.enabled</name>
                    <value>true</value>
                </property>
            </configuration>

        3.yarn-site.xml
            <configuration>

                <!-- Site specific YARN configuration properties 配置yarn,指定shuffer机制-->
                <property>
                    <name>yarn.nodemanager.aux-services</name>
                    <value>mapreduce_shuffle</value>
                </property>

                                <!-- 配置yarn所在的节点-->
                <property>
                    <name>yarn.resourcemanager.hostname</name>
                    <value>hadoo103.com</value>
                </property>

                 <!-- 是否可以浏览显示yarn日志。-->
                <property>
                    <name>yarn.log-aggregation-enable</name>
                    <value>true</value>
                </property>

                                 <!-- 是否可以浏览显示yarn日志。-->
                <property>
                    <name>yarn.log-aggregation.retain-seconds</name>
                    <value>86400</value>
                </property>

                <!-- 任务历史服务 -->
                <property>
                    <name>yarn.log.server.url</name>
                    <value>http://hadoop103:19888/jobhistory/logs/</value>
                </property>
            </configuration>

       4. mapred-site.xml
            <configuration>
                    <!-- 配置mapreduce需要依赖的运行框架-->
                <property>
                    <name>mapreduce.framework.name</name>
                    <value>yarn</value>
                </property>

                         <!-- mapreduce日志历史地址 -->
                <property>
                    <name>mapreduce.jobhistory.adress</name>
                    <value>hadoop101:10020</value>
                </property>

                          <!-- mapreduce日志历史浏览器地址 -->
                <property>
                    <name>mapreduce.jobhistory.webapp.adress</name>
                    <value>hadoop101:19888</value>
                </property>

            </configuration>
       5. slaves  :这个是配置datanode所在结点的。
            hadoop-senior01.itguigu.com
            hadoop-senior02.itguigu.com
            hadoop-senior03.itguigu.com

二:集群启动与测试
   1.启动namenode 
           start-dfs.sh   
  1. 启动yarn,要到 yarn所在结点启动   start-yarn.sh
   
   3.启动mapreduce日志mr-jobhistory-daemon.sh start historyserver'
   
   4.分别启动时用jps测试。或者用浏览器查看 。