Hadoop安装

1.软件版本

选取在VMware Workstation Pro 12.0以上版本的虚拟机上部署5台CentOS-7系统模拟5台服务器。Java jdk环境采用jdk-1.8以上版本,Hadoop采用hadoop-2.8.3版本

2.节点地址规划

下表为地址规划表,地址规划以及与主机名的映射关系如下表所示:master1地址为192.168.182.129;master2地址为192.168.182.130;slave1地址为192.168.182.131;slave2地址为192.168.182.132;slave3地址为192.168.182.133

3.每节点资源规划

每台主机的资源配置如下表,后期也可以根据需要动态调整资源(vCPU的资源可以大于物理CPU 2倍左右,比如你的电脑只有4核,可以虚出8 vcpu)

4.节点功能规划

以下为Hadoop节点的部署图,将NameNode部署在master1,SecondaryNameNode部署在master2,slave1、slave2、slave3中分别部署一个DataNode节点。

5.节点文件目录规划

 

 

 

环境准备环节均已完成,下面是Hadoop集群部署

软件存放目录/opt/software,测试目录/opt/test,软件安装目录/opt/hadoop。

mkdir software

mkdir test

mkdir hadoop

 

1.软件包下载,安装

 上传至/opt/software目录下

解压:

tar zxvf jdk-8u231-linux-x64.tar.gz -C /opt/hadoop/

tar zxvf /opt/software/hadoop-2.8.3.tar.gz  -C  /opt/hadoop/

重命令文件夹

mv jdk1.8.0_231/ jdk1.8

mv hadoop-2.8.3/ hadoop

 

2.配置环境变量

vi ~/.bashrc

export JAVA_HOME=/opt/hadoop/jdk1.8

export PATH=$JAVA_HOME/bin:$PATH

export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar

 

export HADOOP_HOME=/opt/hadoop/hadoop

export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin

 

 应用环境变量:

source  ~/.bashrc

查看java环境情况:

java -version

 

3.配置hadoop文件

3.1)修改core-site.xml文件

vim /opt/hadoop/hadoop/etc/hadoop/core-site.xml

 

<property>

<!-- 配置HDFS的NameNode所在节点服务器 -->

<name>fs.defaultFS</name>

<value>hdfs://master1:9000</value>

</property>

<!-- 指定hadoop运行时产生文件的存储目录 -->

<property>

<name>hadoop.tmp.dir</name>

<value>/opt/hadoop/hadoop/data/full/tmp</value>

</property>

 

3.2)修改hdfs-site.xml文件

vim /opt/hadoop/hadoop/etc/hadoop/hdfs-site.xml

 

<property>

<!-- 配置HDFS的登陆端口-->

<name>dfs.namenode.http-address</name>

<value>master1:50070</value>

</property>

<!-- 设置secondarynamenode的http通讯地址 -->

<property>

<name>dfs.namenode.secondary.http-address</name>

<value>master2:50090</value>

</property>

<property>

<!-- 配置HDFS的DataNode的备份数量,默认是3个-->

<name>dfs.replication</name>

<value>3</value>

</property>

<property>

<name>dfs.namenode.name.dir</name>

<value>/opt/hadoop/hadoop/hdfs/name</value>

</property>

<property>

<name>dfs.datanode.data.dir</name>

<value>/opt/hadoop/hadoop/hdfs/data</value>

</property>

<property>

<!-- 配置HDFS的权限控制 -->

<name>dfs.permissions.enabled</name>vim

<value>false</value>

</property>

<property>

<!-- 配置SecondaryNameNode的节点地址 -->

<name>dfs.namenode.secondary.http-address</name>

<value>master2:50090</value>

</property>

 

3.3)修改mapred-site.xml

由于Hadoop文件中没有携带mapred-site.xml文件,但是可以有mapred-site.xml.template复制过来

cp mapred-site.xml.template mapred-site.xml

vim /opt/hadoop/hadoop/etc/hadoop/mapred-site.xml

 

<!-- 指定mr运行在yarn上 -->

    <property>

     <name>mapreduce.framework.name</name>

     <value>yarn</value>

    </property>

 

3.4)修改yarn-site.xml

vim /opt/hadoop/hadoop/etc/hadoop/yarn-site.xml

 

<property>

<name>yarn.resourcemanager.hostname</name>

<value>master1</value>

</property>

<property>

<name>yarn.resourcemanager.address</name>

<value>${yarn.resourcemanager.hostname}:8032</value>

</property>

<property>

<name>yarn.resourcemanager.scheduler.address</name>

<value>${yarn.resourcemanager.hostname}:8030</value>

</property>

<property>

<name>yarn.resourcemanager.resource-tracker.address</name>

<value>${yarn.resourcemanager.hostname}:8031</value>

</property>

<property>

<name>yarn.resourcemanager.admin.address</name>

<value>${yarn.resourcemanager.hostname}:8033</value>

</property>

<property>

<name>yarn.resourcemanager.webapp.address</name>

<value>${yarn.resourcemanager.hostname}:8088</value>

</property>

<property>

<name>yarn.nodemanager.aux-services</name>

<value>mapreduce_shuffle</value>

</property>

<property>

<name>yarn.nodemanager.auxservices.mapreduce_shuffle.class</name>

<value>org.apache.hadoop.mapred.ShuffleHandler</value>

</property>

<property>

<name>yarn.resourcemanager.scheduler.class</name>

<value>org.apache.hadoop.yarn.server.resourcemanager.scheduler.capacity.CapacityScheduler</value>

</property>

3.5)配置slaves

vim /opt/hadoop/hadoop/etc/hadoop/slaves

slaves1

slaves2

slaves3

 

3.6)设置hadoop-env.sh环境变量

vim hadoop-env.sh

export JAVA_HOME=/opt/hadoop/jdk1.8 (修改成绝对路径)

export HADOOP_CONF_DIR=/opt/hadoop/hadoop/etc/hadoop

 

3.7)设置yarn-env.sh环境变量

vim yarn-env.sh

export JAVA_HOME=/opt/hadoop/jdk1.8

 

3.8)设置mapred-env.sh环境变量

export JAVA_HOME=/opt/hadooo/jdk1.8

 

3.9)应用环境变量

. yarn-env.sh

. mapred-env.sh

. hadoop-env.sh

 

4.将master1配置好的hadoop分别远程传输给其它节点

4.1)进入root用户:

chown -R hadoop:hadoop /opt/

其它三个节点同理修改opt属主和属组为hadoop:hadoop

4.2)

scp -r /opt/hadoop hadoop@master2:/opt/

scp -r /opt/hadoop hadoop@slave1:/opt/

scp -r /opt/hadoop hadoop@slave2:/opt/

scp -r /opt/hadoop hadoop@slave3:/opt/

4.3)将master1配置好的环境变量分别传输给其它节点

scp -r .bashrc  hadoop@master2:~

scp -r .bashrc  hadoop@slave1:~

scp -r .bashrc  hadoop@slave2:~

scp -r .bashrc  hadoop@slave3:~

每个节点分别允许变量

source  .bashrc

 

5.启动集群平台

5.1)格式化集群,在master1节点上

hdfs namenode -format

 

 

5.2)启动hadoop服务

start-dfs.sh、start-yarn.sh

 

5.3)查看java进程状态:jps

5.4)查看接口服务情况:ss -tnl

 

6. 浏览器访问web页面

 HDFS集群web页面查看地址(9870):http://namenode_host:端口号——http://192.168.182.129:50070(在hdfs-site.xml配置文件中)

YARN集群web页面查看地址(8088):http://resourcemanager_host:端口号——http://192.168.182.129:8088(在yarn-site.xml配置文件中)

 

posted @ 2022-07-17 17:33  修心的博客  阅读(415)  评论(0编辑  收藏  举报