Hadoop集群搭建详细步骤

一套大数据视频断断续续都看了三遍了,有半年了,有时候真的看不下去,有时候看的人打瞌睡,有时候几天都不想看

但还是咬着牙看。

最近无意中看了一部电视剧《孔子》,然后又在知乎上了解了下真实的孔子和他的弟子们,内心真鸡冻不已,久久不能平复,所以下定决心一点一点开始搭大数据框架。

子曰:十室之邑,必有忠信如丘者焉,不如丘之好学也

            学而不厌,诲人不倦,发奋忘食,乐以忘忧,不知老之将至

建议大家也了解一下真实的孔子,真是天不生夫子,万古如长夜!

身高一米九,力能扛鼎,精通六艺,身配长剑,讲道理你讲不过,骂你骂不过,打你打不过

见了他,谁又不温良恭俭让呢?

况且老夫子是以理服人(道理或物理)因材施教(各种意义上的)

哈哈,佩服的五体投地

下来开始搭建大数据框架,今天端午节祝大家端午节安康!

一、 下载hadoop的jar包并解压

二 、我们可以看一看hadoo的目录

        bin:自己的操作命令
        sbin:系统启动管理的命令
        etc:配置文件
        include:c语言头文件
        lib:本地库
        share:jar包

三、 修改配置文件 cd etc/hadoop,发现文件超多

        我们需要改这几个:

        1:hadoop-env.sh
        vi  hadoop-env.sh
        #第27行
        export JAVA_HOME=/root/hadoop/tools/jdk/jdk1.8.0_201

        2:core-site.xml

        <!-- 指定HADOOP所使用的文件系统schema(URI),HDFS的老大(NameNode)的地址 -->
        <property>
            <name>fs.defaultFS</name>
            <value>hdfs://weekend-1206-01:9000</value>
        </property>
        <!-- 指定hadoop运行时产生文件的存储目录 -->
        <property>
            <name>hadoop.tmp.dir</name>
            <value>/home/hadoop/hadoop-2.4.1/tmp</value>
        </property>

        3:hdfs-site.xml   
        <!-- 指定HDFS副本的数量 -->
        <property>
            <name>dfs.replication</name>
            <value>1</value>
        </property>
        
        <property>
            <name>dfs.secondary.http.address</name>
            <value>192.168.1.152:50090</value>
        </property>

       可以不配置,用默认值。我没有配置

       4:mapred-site.xml (改下名字 mv mapred-site.xml.template mapred-site.xml)
        mv mapred-site.xml.template mapred-site.xml
        vi mapred-site.xml
        <!-- 指定mr运行在yarn上 -->
        <property>
            <name>mapreduce.framework.name</name>
            <value>yarn</value>
        </property>

        5:yarn-site.xml
        <!-- 指定YARN的老大(ResourceManager)的地址 -->
        <property>
            <name>yarn.resourcemanager.hostname</name>
            <value>weekend-1206-01</value>
        </property>
        <!-- reducer获取数据的方式 -->
        <property>
            <name>yarn.nodemanager.aux-services</name>
            <value>mapreduce_shuffle</value>
        </property>

四、将hadoop添加到环境变量
    
        vi /etc/proflie
        export JAVA_HOME=/usr/java/jdk1.7.0_65
        export HADOOP_HOME=/itcast/hadoop-2.4.1
        export PATH=$PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin

        source /etc/profile

       五、格式化namenode(是对namenode进行初始化) 命令: hadoop namenode -format

      六、拷贝server01的配置到server02、server03、server04上 。(不用改配置文件中的server01,他本来就是其他服务器的                     namenode,其他三台是datanode)

             命令:scp -r /root/hadoop/tools/hadoop server02:/root/hadoop/tools/

                       scp -r /root/hadoop/tools/hadoop server03:/root/hadoop/tools/

                       scp -r /root/hadoop/tools/hadoop server04:/root/hadoop/tools/

                       scp -r /etc/profile server02:/etc/profile

                       scp -r /etc/profile server03:/etc/profile

                       scp -r /etc/profile server04:/etc/profile
        

      六、启动namenode  命令:hadoop-daemon.sh start namenode

                                        命令:jps

    七、在server02、server03、server04上启动hadoop

           命令:hadoop-daemon.sh start namenode

           命令:jps

     八、在实际生产中,集群如果有几百,上千台,不可能一台一台去启动。

            我们配置免密登陆

            免密登陆

            在server01上执行命令:

            ssh-keygen

            ssh-copy-id server01 (他自己对自己也要免密)

            ssh-copy-id server02

            ssh-copy-id server03

            ssh-copy-id server04

            然后在namenode所在的服务器执   

            命令:start-dfs.sh

   九、浏览器输入server01:50070

     十、     遇到的坑

          1、配置文件,一个字母都不能错,一定要细心

          2、namenode只format一次就好了,两次会出问题

          3、如果start-all.sh无法启动从节点,那就hadoop-daemon.sh start datanode 启动从节点

                问题还没找到,猜想是farmat之后然后scp给其他节点,有影响

                                                                                  我的公众号:java进阶

猜你喜欢

转载自blog.csdn.net/weixin_41126842/article/details/91129704