当前位置:   article > 正文

Hadoop全分布式模式搭建详细流程_hadoopmapred-env.sh

hadoopmapred-env.sh

一、准备4台虚拟机
四台主机名分别设置为:master slave1 slave2 slave3(自定义)
1、关闭防火墙、设置静态IP
2、设置host文件,配置主机名

vi /etc/hostname	
#将localhost.localdomain改成master.localdomain
#master是你要定义的主机名
  • 1
  • 2
  • 3
vi /etc/hosts
#配置hosts文件
127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
192.168.180.88  master
192.168.180.100 slave1
192.168.180.101 slave2
192.168.180.102 slave3
192.168.180.103 dtinone

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10

将配置发送到其他主机

scp  -r /etc/hosts root@slave1:/etc/
scp  -r /etc/hosts root@slave2:/etc/
scp  -r /etc/hosts root@slave3:/etc/
  • 1
  • 2
  • 3

测试

ping slave1
ping slave2
ping slave3
  • 1
  • 2
  • 3

二、安装配置JDK
1、将jdk压缩文件拷贝到/opt/appUtils目录下(可以自己选择)
2、解压jdk压缩文件到要安装目录下/opt/apps/

tar -zxvf jdk-8u241-linux-x64.tar.gz -C /opt/apps
  • 1

3、配置jdk环境变量

vi /etc/profile
#末尾添加
export JAVA_HOME=/opt/apps/jdk1.8.0_241
export PATH=$PATH:$JAVA_HOME/bin:$JAVA_HOME/sbin
  • 1
  • 2
  • 3
  • 4
#立即生效环境变量
source /etc/profile
  • 1
  • 2

4、将jdk复制到其他主机

scp -r /opt/apps/jdk1.8.0_241 root@slave1:/opt/apps
scp -r /opt/apps/jdk1.8.0_241 root@slave2:/opt/apps
scp -r /opt/apps/jdk1.8.0_241 root@slave3:/opt/apps
  • 1
  • 2
  • 3

5、将环境变量配置文件复制到其他主机

scp -r /etc/profile root@slave1:/etc/
scp -r /etc/profile root@slave2:/etc/
scp -r /etc/profile root@slave3:/etc/
  • 1
  • 2
  • 3

分别执行立即生效

source /etc/profile
  • 1

测试jdk是否正确安装

java -version
  • 1

显示java版本信息说明jdk安装成功

java version "1.8.0_241"
Java(TM) SE Runtime Environment (build 1.8.0_241-b07)
Java HotSpot(TM) 64-Bit Server VM (build 25.241-b07, mixed mode)

  • 1
  • 2
  • 3
  • 4

三、安装hadoop集群
1、下载hadoop压缩文件,直接官网就apache可以下载
2、将压缩文件放到虚拟主机中/opt/appUtils目录(可以自己选择)
3、解压安装

tar -zxvf hadoop-2.7.3.tar.gz -C /opt/apps/
  • 1

4、配置环境变量

vi /etc/profile
#末尾添加
#hadoop  //此行为注释
export HADOOP_HOME=/opt/apps/hadoop-2.7.3
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
  • 1
  • 2
  • 3
  • 4
  • 5

立即生效

source /etc/profile
  • 1

5、配置hadoop集群
5.1、配置core-site.xml文件

cd /opt/apps/hadoop-2.7.3/etc/hadoop
vi core-site.xml
#文件的<configuration></configuration>内添加配置信息
<!-- 指定HDFS中NameNode的地址 -->
     <property>
     <name>fs.defaultFS</name>
         <value>hdfs://master:9000</value>
     </property>
<!-- 指定hadoop运行时产生文件的存储目录 -->
     <property>
     <name>hadoop.tmp.dir</name>
     <value>/opt/apps/hadoop-2.7.3/data</value>
     </property>
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13

注意:在添加配置文件的时候,每行前后不能有空格,作业自己写或者复制网上的配置时要检查一下
5.2、配置hadoop-env.sh

#找到export JAVA_HOME=在后面添加java环境变量
export JAVA_HOME=/opt/apps/jdk1.8.0_241
  • 1
  • 2

5.3、配置hdfs-site.xml

vi hdfs-site.xml
#文件的<configuration></configuration>内添加配置信息
<!-- 设置dfs副本数,不设置默认是3个   -->
    <property>
        <name>dfs.replication</name>
        <value>3</value>
    </property>
<!-- 设置secondname的端口   -->
    <property>
        <name>dfs.namenode.secondary.http-address</name>
        <value>slave1:50090</value>
    </property>
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12

5.4配置slaves文件,有的hadoop版本是works

vi slaves
master
slave1
slave2
slave3
  • 1
  • 2
  • 3
  • 4
  • 5

5.5、配置mapred-env.sh

vi mapred-env.sh
#找到export JAVA_HOME=在后面添加java环境变量
export JAVA_HOME=/opt/apps/jdk1.8.0_241
  • 1
  • 2
  • 3

5.6、配置mapred-site.xml

vi mapred-site.xml
#文件的<configuration></configuration>内添加配置信息
<!-- 指定mapreduce运行在yarn上 -->
    <property>
     <name>mapreduce.framework.name</name>
     <value>yarn</value>
    </property>
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7

5.7、配置yarn-env.sh

vi yarn-env.sh
#找到export JAVA_HOME=在后面添加java环境变量
export JAVA_HOME=/opt/apps/jdk1.8.0_241
  • 1
  • 2
  • 3

5.8、配置yarn-site.xml

vi yarn-site.xml
#文件的<configuration></configuration>内添加配置信息
<!-- reducer获取数据的方式 -->
     <property>
        <name>yarn.nodemanager.aux-services</name>
        <value>mapreduce_shuffle</value>
     </property>
<!-- 指定YARN的ResourceManager的地址 -->
     <property>
        <name>yarn.resourcemanager.hostname</name>
        <value>slave1</value>
     </property>
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12

6、将安装好的hadoop分发到其他主机节点

scp -r /opt/apps/hadoop-2.7.3 root@slave1:/opt/apps/
scp -r /opt/apps/hadoop-2.7.3 root@slave2:/opt/apps/
scp -r /opt/apps/hadoop-2.7.3 root@slave3:/opt/apps/
  • 1
  • 2
  • 3

7、将环境变量配置文件拷贝到其他主机

scp -r /etc/profile root@slave1:/etc/
scp -r /etc/profile root@slave2:/etc/
scp -r /etc/profile root@slave3:/etc/
  • 1
  • 2
  • 3

分别执行立即生效

source /etc/profile
  • 1

8、设置SSH免密访问
要求任意两台主机之间都要设置免密访问
master主机下:

ssh-keygen -t rsa
ssh-copy-id master
ssh-copy-id slave1
ssh-copy-id slave2
ssh-copy-id slave3
  • 1
  • 2
  • 3
  • 4
  • 5

slave1主机下:

ssh-keygen -t rsa
ssh-copy-id master
ssh-copy-id slave1
ssh-copy-id slave2
ssh-copy-id slave3
  • 1
  • 2
  • 3
  • 4
  • 5

slave2主机下:

ssh-keygen -t rsa
ssh-copy-id master
ssh-copy-id slave1
ssh-copy-id slave2
ssh-copy-id slave3
  • 1
  • 2
  • 3
  • 4
  • 5

slave3主机下:

ssh-keygen -t rsa
ssh-copy-id master
ssh-copy-id slave1
ssh-copy-id slave2
ssh-copy-id slave3
  • 1
  • 2
  • 3
  • 4
  • 5

9、启动集群
我们在core-site.xml配置了运行时文件存放位置data
,实际上生成的目录里面没有,需要嗯自己创建,如果不配置这个目录,那么会自动存放在根目录下的tmp目录中

cd /opt/apps/hadoop-2.7.3
mkdir data
  • 1
  • 2

9.1、第一次启动集群需要进行格式化namenode

hadf namenode -format
#启动集群
#1、启动HDFS,在master上启动
cd sbin
start-dfs.sh
  • 1
  • 2
  • 3
  • 4
  • 5

9.2、启动yarn

#启动yarn在主机slave1上,因为我们在yarn-site.xml中配置了在slave1上启动  所以需要单独启动
start-yarn.sh
  • 1
  • 2

9.3、jps查看进程
master主机下:

[root@master sbin]# jps
3474 NameNode
2979 NodeManager
3603 DataNode
3883 Jps
  • 1
  • 2
  • 3
  • 4
  • 5

slave1主机下:

[root@slave1 sbin]#jps
10528 DataNode
10624 SecondaryNameNode
10722 ResourceManager
10834 NodeManager
11354 Jps
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

slave2主机下:

[root@slave2 hadoop]# jps
2114 NodeManager
2214 Jps
1979 DataNode

  • 1
  • 2
  • 3
  • 4
  • 5

slave3主机下:

[root@slave3 hadoop]# jps
1796 DataNode
1928 NodeManager
2028 Jps

  • 1
  • 2
  • 3
  • 4
  • 5

我们把SecondaryNameNode以及ResourceManage配置在slave1里面,所以slave1里面的进程较多。当不配置时会默认在主节点master里面
9.4、在web端查看
在网页地址栏输入master:50070
在这里插入图片描述
这时候说明我们的Hadoop全分布式集群搭建(单点)完成,后面的高可用和联邦根据需求修改几个配置文件即可

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/笔触狂放9/article/detail/854430
推荐阅读
相关标签
  

闽ICP备14008679号