CentOS 7 安装Apache hadoop-2.7.7

tech2022-08-27  117

Centos 7安装Apache hadoop

1 前言(前提条件)

在Linux上安装Apache Hadoop之前,必须保证2点 。

Java™ must be installed. Recommended Java versions are described at HadoopJavaVersions.ssh must be installed and sshd must be running to use the Hadoop scripts that manage remote Hadoop daemons if the optional start and stop scripts are to be used. Additionally, it is recommmended that pdsh also be installed for better ssh resource management.

简单来说就是需要安装合适的Java运行环境,配置集群节点之间的ssh免密登录。

2 Linux安装Java

下载相关的Linux的JDK

解压JDK到指定目录,并配置环境变量

tar -zxvf -C /opt/module/vim /etc/profile export JAVA_HOME=/opt/module/java-1.8.0_141-bin export PATH=$PATH:$JAVA_HOME/bin

source /etc/profile

java -version

启动ntpd服务

3 Linux配置SSH免密登录

假如之前没有安装ssh,首先得安装ssh先,如果已安装请忽略。

$ sudo apt-get install ssh $ sudo apt-get install pdsh

在不同的节点上分别按以下步骤进行。

ssh-keygen -t rsassh-copy-id shufang101/102/103以此类推,在每台节点以此配置通过ssh shfuang@shufang101 来验证是否配置完成

4 Hadoop安装与配置

4.1 下载并安装Linux上编译过的hadoop包

tar -zxvf hadoop-2.7.2-bin.tar.gz -C /opt/module/ #配置环境变量 export HADOOP_HOME=/opt/module/hadoop-2.7.2-bin export PATH=$PATH:$HADOOP_HOME/bin export PATH=$PATH:$HADOOP_HOME/sbin #验证 hadoop jar $HADOOP_HOME/share/hadoop/examples/.....jar [params]

4.2 配置相关的Hadoop配置文件并分发

具体配置参数可以参考官网

下面开始简单的配置保证集群可以运行

4.2.1 配置core-site.xml

vim core-site.xml

<!--指定HDFS namenode的地址--> <property> <name>fs.defaultFS</name> <value>hdfs://shufang101:9000</value> </property> <!--指定Hadoop运行时产生文件的存储目录--> <property> <name>hadoop.tmp.dir</name> <value>/opt/module/hadoop-2.7.2/data/tmp</value> </property>

4.2.1 配置hdfs-site.xml

vim hdfs-site.xml

<!--指定HDFS存储备份数量--> <property> <name>dfs.replication</name> <value>2</value> </property> <!--指定Hadoop sencondary namenode的主机位置--> <property> <name>dfs.namenode.secondary.http-address</name> <value>shufang103:50090</value> </property>

4.2.1 配置yarn-env.sh

vim yarn-env.sh

export JAVA_HOME=$JAVA_HOME

4.3.4 配置vim yarn-site.xml

vim yarn-site.xml

<!--Reducer获取数据的方式--> <property> <name>yarn.nodemanager.aux-services</name> <value>mapreduce_shuffle</value> </property> <!--指定YARN的ResourceManager的地址--> <property> <name>yarn.resourcemanager.hostname</name> <value>shufang102</value> </property>

4.3.5 配置mapred-site.xml

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

vim mapred-site.xml

<!--指定YARN的ResourceManager的地址--> <property> <name>mapreduce.framework.name</name> <value>yarn</value> </property>

4.3.6 可选JVM配置

vim hadoop-env.sh

# For example, To configure Namenode to use parallelGC and a 4GB Java Heap, the following statement should be added in hadoop-env.sh export HDFS_NAMENODE_OPTS="-XX:+UseParallelGC -Xmx4g"

4.3.7 分发整个HadoopHome目录下的所有内容到所有节点

cd /opt/module xsync hadoop-2.7.2-bin #编写一个安全拷贝差异的脚本文件 cd ~ mkdir bin cd bin/ vim xsync chmod 777 xsync #!/bin/bash parCounts=$# if((parCounts==0));then echo no args; exit; fi p1=$1 fname=`basename $p1` echo fname=$fname pdir=`cd -P $(dirname $p1); pwd` echo pdir=$pdir user=$(whoami) for((host=102;host<104;host++)); do rsync -rvl $pdir/$fname $user@shufang$host:$pdir/ done

4.3.8 修改slaves

vim slaves

#将localhost改成以下内容 shufang101 shufang102 shufang103

4.3.9 配置MR任务的历史服务器

vim mapred-site.xml

<!--mapred-job历史服务器的配置--> <!--mapred-job服务端的地址--> <property> <name>mapreduce.jobhistory.address</name> <value>shufang101:10020</value> </property> <!--历史服务器的web端的地址--> <property> <name>mapreduce.jobhistory.webapp.address</name> <value>shufang101:19888</value> </property>

4.3.10 配置YARN的日志聚集

vim yarn-site.xml

<!-- 开启日志聚集--> <property> <name>yarn.log-aggregation-enable</name> <value>true</value> </property> <!-- 开启日志聚集日志保留时间为7天--> <property> <name>yarn.log-aggregation.retain-seconds</name> <value>604800</value> </property>

5 格式化HDFS,启动HDFS

hdfs namenode -format #启动集群 start-dfs.sh start-yarn.sh #关闭集群 stop-dfs.sh stop-yarn.sh #通过jps进行查看 jps # 通过 192.168.93.101:50070 访问hdfs nn的WebUI界面 # 通过 192.168.93.103:50090 访问hdfs snn的WebUI界面

6 启动YARN

start-yarn.sh # 通过 192.168.93.102:8088 访问yarn的WebUI界面
最新回复(0)