前言
:
安装
系统环境配置
1.解压缩hadoop安装包
tar -zvxf /hadoop安装包所在位置 -C 解压目的地
2.修改名字(将Hadoop解压后的名字改为 hadoop(他原先的名字后面带有版本号))
mv /原hadoop解压后位置 /更改名后hadoop位置
3.配置环境
dxc
vi /etc/profile
# set java environment
# JAVA_HOME = Java的安装路径
export JAVA_HOME = Java的安装路径
将Java安装目录加入PATH 路径
export PATH=$PATH:$JAVA_HOME/bin
# set hadoop enviroment
export HADOOP_HOME=hadoop安装路径
export PATH=$HADOOP_HOME/bin:$HADOOP/sbin:$PATH
4.使环境生效
dxc
su - hadoop
source /etc/profile
exit
配置文件配置
5.配置 hadoop-env.sh 配置文件
cd /hadoop安装路径/etc/hadoop/
vi hadoop-env.sh
在文件末尾添加配置信息
export JAVA_HOME=/Java的安装路径
6.配置 hdfs-site.xml 文件参数
所有修改的文件基本都在 /Hadoop的安装路径/etc/hadoop
vi hdfs-site.xml
配置信息在<configuration></configuration>标签之间
对于Hadoop的分布式系统HDFS而言, 一般都是采用冗余存储,冗余因子通常为3,
也就是一份数据要保存三个副本,所以修改 dfs.replication 的配置,是HDFS的副本数量设定为3个。
<configuration>
该配置是定义DFS的名称节点在本地文件系统中位置
<property>
<name>dfs.namenode.name.dir</name>
<value>file:/hadoop的安装路径/dfs/name</value>
</property>
定义DFS的数据节点存储数据块时存储在本地文件系统的位置
<property>
<name>dfs.datanode.data.dir</name>
<value>file:/hadoop的安装路径/dfs/data</value>
</property>
缺省的块复制数量
<property>
<name>dfs.replication</name>
<value>3</value>
</property>
</configuration>
7.配置 core-site.xml 文件参数
在文件<configuration></configuration>配置信息
vi core-site.xml
<configuration>
文件系统主机和端口
<property>
<name>fs.defaultFS</name>
<value>hdfs://ip地址:9000</value>
</property>
流文件的缓冲区大小
<property>
<name>io.files.buffer.size</name>
<value>131072</value>
</property>
临时文件夹
<property>
<name>hadoop.tmp.dir</name>
<value>file:/hadoop的路径/tmp</value>
</property>
</configuration>
8.配置 mapred-site.xml
dxc
cd /hadoop的路径/etc/hadoop
cp mapred-site.xml.template mapre-site.xml
vi mapred-site.xml
<configuration>
使用yarn集群来实现资源的分配
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
定义历史服务器的地址和端口,通过历史服务器擦好看已经运行完的Mapreduce 作业记录
<property>
<name>mapreduce.jobhistory.address</name>
<value>dxc:10020</value>
</property>
定义历史服务器web应用访问的地址和端口
<property>
<name>mapreduce.jobhistory.webapp.address</name>
<value>dxc:19888</value>
</property>
</configuration>
9.配置 yarn-site.xml
<configuration>
ResourceManager 提供给客户端访问的地址。客户端通过该地址向 RM 提交应用程序,杀死应用程序等
<property>
<name>yarn.resourcemanager.address</name>
<value>dxcip:8032</value>
</property>
定义历史服务器的地址和端口,通过历史服务器查看已经运行完的 Mapreduce 作业记录
<property>
<name>yarn.resourcemanager.scheduler.address</name>
<value>dxcip:8030</value>
</property>
ReduceManager 提供给NodeManager 的地址。NodeManager 通过该地址向 RM 汇报心跳,领取任务等
<property>
<name>yarn.resourcemanager.resource-tracker.address</name>
<value>dxcip:8031</value>
</property>
ResourceManager 提供给管理员的访问地址。管理员通过该地址向RM发送发管理命令等
<property>
<name>yarn.resourcemanager.admin.address</name>
<value>dxcip:8033</value>
</property>
ResourceManager对 web 服务器提供地址,用户可通过该地址在浏览器中查看集群各类信息
<property>
<name>yarn.resourcemanager.webapp.address</name>
<value>dxcip:8088</value>
</property>
, 若要将主节点也作为资源管理主机配置,则配置值分别为“Master_hadoop”、“mapreduce_shuffle”
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
通过该配置项,用户可以自定义一些服务,例如Map-Reduce的shuffle 功能就是采用这种方式实现的,这样就可以在NodeManager 上扩展自己的服务
<property>
<name>yarn.nodemanager.auxservices.mapreduce.shuffle.class</name>
<value>org.apache.hadoop.mapred.ShuffleHandler</value>
</property>
</configuration>
10.配置dxc(主机) 文件
dxc
vi dxc
#master 主机ip地址
11.配置 slaves 文件
dxc Hadoop目录下
vi slaves
#dxc2 主机IP地址
#dxc3 主机IP地址
12.创建新的目录
dxc hadoop目录下
mkdir /Hadoop路径/tmp
mkdir /Hadoop路径/dfs/name -p
mkdir /hadoop路径/dfs/data -p
13.修改目录权限
chown -R hadoop:hadoop /hadoop的路径/
14.同步配置文件到 Slave节点
scp -r /hadoop的路径/ root@dxc2:/存放复制文件的路径
scp -r /hadoop的路径 root@dxc3:/存放复制文件的路径
15.在每个Slave节点上配置Hadoop的环境变量
dxc2
vi /etc/profile
末尾添加
# set java environment
# JAVA_HOEM Java的安装目录
export JAVA_HOME=java的安装目录
# 将Java目录加入PATH路径
export PATH=$PATH:JAVA_HOME/bin
# set hadoop environment
export HADOOP_HOME=hadoop的安装路径
export PATH=$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$PATH
dxc
操作如上
16.在每个节点上修改 hadoop的目录的权限
dxc2
chown -R hadoop:hadoop /hadoop目录的路径
dxc3
chown -R hadoop:hadoop /hadoop目录的路径
17.
dxc
su - hadoop
dxc3
su - hadoop
18.
dxc2
source /etc/profile
dxc3
source /etc/profile