hadoop2.7.5完全分布式搭建(最简易配置,极易上手,保姆式操作)!!!

前期准备:

        1.关闭防火墙

               systemctl stop firewalld #关闭防火墙

               systemctl status firewalld #查看防火墙状态

               systemctl disable firewalld #永久关闭防火墙

        2.更改主机名

               本次完全分布式搭建为一主两从的架构,master为集群主机,slave1和slave2为集群从机

               hostname #查看主机名称

               hostnamectl set-hostname master

               hostnamectl set-hostname slave1 

               hostnamectl set-hostname slave2 

             (修改主机名称分为命令修改和文件修改,此处选择快捷的Linux命令修改)

        3.配置IP映射(三台虚拟机均需修改)

                修改虚拟机IP映射可以通过图形化界面修改,也能通过修改文件的方式进行修改,此处选择修改文件的方式进行修改。

               此处IP设置为:

                         192.168.170.3 #master

                         192.168.170.4 #slave1

                         192.168.170.5 #slave2

               修改配置文件:

                      vi /etc/sysconfig/network-scripts/ifcfg-ens33

                修改内容:

                      BOOTPROTO="static" #改为静态IP

                      ONBOOT="yes" #设置为开机自启动

                      IPADDR="192.168.170.3" #设置IP地址

                      GETAWAY="192.168.170.2" #设置网关

                      NETMASK="255.255.255.0" #设置子网掩码

                      DNS1="8.8.8.8"

                重新启动网络:

                       service network restart

                       ping www.baidu.com (能够ping通则网卡能够正常使用)

                编辑/etc/hosts文件:

                       192.168.170.3 master
                       192.168.170.4 slave1
                       192.168.170.5 slave2

        4.配置免密登录(三台虚拟机均需执行)

                       ssh-keygen -t rsa #配置ssh服务

                       ssh-copy-id -i ~/.ssh/id_rsa.pub master #copy密钥生成文件

                       ssh-copy-id -i ~/.ssh/id_rsa.pub slave1

                       ssh-copy-id -i ~/.ssh/id_rsa.pub slave2

        5.JDK(1.8.0_141)和hadoop安装

                       本文安装包均放在/package目录下,安装目录均为/opt

                        解压:

                               tar -zxvf /package/jdk-8u141-linux-x64.tar.gz -C /opt/ #解压jdk安装包

                               tar -zxvf /package/hadoop-2.7.5.tar.gz -C /opt/ #解压hadoop安装包

                        改名:

                                mv /opt/jdk1.8.0_141 java #将包名改为java

                                mv /opt/hadoop-2.7.5 hadoop #将包名改为hadoop

                        配置环境变量:

                                vi /etc/profile #编辑全局环境变量文件

                        在文件末尾添加上以下内容:                      

                                #java
                                export JAVA_HOME=/opt/java
                                export JRE_HOME=${JAVA_HOME}/jre
                                export CLASSPATH=.:${JAVA_HOME}/lib/dt.jar:${JAVA_HOME}/lib/tools.jar
                                export PATH=${JAVA_HOME}/bin:$PATH

                                #hadoop
                                export HADOOP_HOME=/opt/hadoop
                                export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin

                         分发环境变量文件和软件包并更新环境变量:

                                scp -r /opt/java slave1:/opt #将java组件包从master分发到slave1

                                scp -r /opt/java slave2:/opt #将java组件包从master分发到slave2

                                scp -r /opt/hadoop slave1:/opt #将hadoop组件包从master分发到slave1

                                scp -r /opt/hadoop slave2:/opt #将hadoop组件包从master分发到slave2

                                scp /etc/profile slave1:/etc #从master分发文件到slave1的/etc目录下

                                scp /etc/profile slave2:/etc #从master分发文件到slave2的/etc目录下

                                source /etc/profile  #更新环境变量

                         查看安装版本:

                                java -version

                                hadoop version

hadoop主要配置文件(配置完成通过scp命令分发):

        1.hadoop-env.sh:

                vi /opt/hadoop/etc/hadoop/hadoop-env.sh #编辑hadoop-env.sh文件

                #25行 export JAVA_HOME
                export JAVA_HOME=/opt/java
                #33行 export HADOOP_CONF_DIR
                export HADOOP_CONF_DIR=/opt/hadoop/etc/hadoop

        2.core-site.xml:

                vi /opt/hadoop/etc/hadoop/core-site.xml #编辑core-site.xml文件

                <configuration>
                        <property>
                                <!--用来指定namenode的地址-->
                                <name>fs.defaultFS</name>
                                <value>hdfs://master:9000</value>
                        </property>  
                        <property>
                                <!--用来指定hadoop运行时产生文件的存放目录-->   
                                <name>hadoop.tmp.dir</name>
                                <value>/opt/hadoop/tmp</value>
                        </property>
                 </configuration>

        3.hdfs-site.xml:

                vi /opt/hadoop/etc/hadoop/hdfs-site.xml #编辑hdfs-site.xml文件

                <configuration>
                        <property>
                                 <!--设置副本数量,默认为3-->
                                 <name>dfs.replication</name> 
                                 <value>3</value>
                      </property>
                      <property>
                                <!--namenode节点数据的存放位置-->
                                <name>dfs.name.dir</name> 
                                <value>/opt/hadoop/dfs/namenode_data</value>
                        </property>
                        <property>
                                <!--datanode节点数据的存放位置-->
                                <name>dfs.data.dir</name> 
                                <value>/opt/hadoop/dfs/datanode_data</value>
                        </property>
                        <property>
                                <!--指定secondarynamenode的web地址-->
                                <name>dfs.namenode.secondary.http-address</name> 
                                <value>slave2:50090</value>
                        </property>
                        <property>
                                <!--hdfs文件操作权限,false为不验证-->
                                <name>dfs.permissions</name> 
                                <value>false</value>
                        </property>
                </configuration>

        4.mapred-site.xml:

                vi /opt/hadoop/etc/hadoop/mapred-site.xml #编辑mapred-site.xml文件

                <configuration>
                        <property>  
                                <!--指定mapreduce运行在yarn上-->
                                <name>mapreduce.framework.name</name>
                                <value>yarn</value>
                        </property>
                        <property>
                            <!--配置任务历史服务器IPC-->
                            <name>mapreduce.jobhistory.address</name>
                            <value>master:10020</value>
                        </property>
                        <property>
                            <!--配置任务历史服务器web-UI地址-->
                            <name>mapreduce.jobhistory.webapp.address</name>
                            <value>master:19888</value>
                        </property>
                </configuration>

        5.yarn-site.xml:

                vi /opt/hadoop/etc/hadoop/yarn-site.xml #编辑yarn-site.xml文件

                <configuration>
                        <!--yarn集=集群主角色RM运行机器-->
                        <property>
                            <name>yarn.resourcemanager.hostname</name>
                            <value>master</value>
                        </property>
                        <!--NodeManager上运行的附属服务 需配置mapreduce_shuffle才可以运行MR程序-->
                        <property>
                            <name>yarn.nodemanager.aux-services</name>
                            <value>mapreduce_shuffle</value>
                        </property>
                </configuration>

        6.slave:

                vi /opt/hadoop/etc/hadoop/slave #编辑slave文件

                master
                slave1
                slave2

        7.集群操作:

                hdfs namenode -format #在master上对hadoop集群进行格式化

                start-all.sh #启动集群

                mr-jobhistory-daemon.sh start historyserver #启动任务历史服务器

                jps查看进程

                master进程如下:NodeManager、DataNode、NameNode、ResourceManager、JobHistoryServer

                slave1进程如下:DataNode、NodeManager

                slave2进程如下:SecondaryNameNode、DataNode、NodeManager

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值