1 解压hadoop并配置相关环境变量
以hadoop用户名解压hadoop压缩文件
JAVA_HOME=/usr/java/jdk1.8.0_144
JRE_HOME=/usr/java/jdk1.8.0_144/jre
HADOOP_HOME=/home/hadoop/hadoop-2.9.0
CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib
PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$HADOOP_HOME/etc/hadoop
export JAVA_HOME JRE_HOME CLASS_PATH HADOOP_HOME PATH
使用命令使配置生效:
source /etc/profile
2 修改hadoop-env.sh添加jdk环境
export JAVA_HOME=/usr/java/jdk1.8.0_144
hadoop有三种运行模式:
独立(本地)模式:
无需运行任何守护进程,所有程序都在同一个JVM上执行,适合开发阶段;
伪分布模式:
hadoop守护进程运行在本地机器上,模拟一个小规模的集群。
全分布式模式:
hadoop守护进程运行在一个集群上。
3 修改core-site.xml文件
hadoop core的配置项,如hdfs、MapReduce和YARN常用的I/O设置等;
<configuration>
<property>
<name>fs.defaultFS</name>
<value>hdfs://master:9000</value>
</property>
运行hdfs需要将一台机器指定为namenode,属性fs.defaultFS描述hdfs文件系统的uri,默认端口是8020.
<!–指定hadoop运行时产生文件的存储路径–>
<property>
<name>hadoop.tmp.dir</name>
<value>/home/hadoop/hadoop-2.9.0/wutemp</value>
</property>
</configuration>
4 修改hdfs-site.xml文件
hdfs-site.xml配置文件:
hadoop守护进程的配置项,包括namenode、辅助namenode和datanode等;
<!--NameNode会持久存储名称空间和事务日志-->
<configuration>
<property>
<name>dfs.namenode.name.dir</name>
<value>/home/hadoop/hadoop-2.9.0/wudata/name</value>
</property>
dfs.namenode.name.dir:
namenode存储永久性的元数据的目录列表。namenode在列表上的各个目录中都存放相同的元数据文件;
<property>
<name>dfs.datanode.data.dir</name>
<value>/home/hadoop/hadoop-2.9.0/wudata/data</value>
</property>
dfs.datanode.data.dir:
datanode存放数据块的目录列表。各个数据块分别存放于某一个目录中;
<property>
<name>dfs.replication</name>
<value>2</value>
</property>
dfs.replication:
设置文件备份系数,默认3;
<property>
<name>dfs.secondary.http.address</name>
<value>slaveb:50090</value>
</property>
</configuration>
5 mapred-site.xml文件
mapred-site.xml配置文件:
MapReduce守护进程的配置项,包括作业历史服务器;
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
名称mapreduce.framework.name:
指的是使用yarn运行mapreduce程序,启动了HDFS之后,就可以启动yarn了。执行命令start-yarn.sh即可启动MapReduce集群
6 yarn-site.xml文件
Yarn守护进程的配置项,包括资源管理器、web应用代理服务器和节点管理器;
<property>
<name>yarn.resourcemanager.hostname</name>
<value>master</value>
</property>
yarn.resourcemanager.hostname属性:
运行资源管理器的机器主机名,默认值:0.0.0.0
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
yarn.nodemanager.aux-services属性:
节点管理器运行的附加服务列表。NodeManager上运行的附属服务。需配置成mapreduce_shuffle,才可运行MapReduce程序;默认情况下,不指定附加服务。
7 为yarn添加 客户端计算机名称
修改/home/hadoop/hadoop-2.9.0/etc/hadoop/slaves
slavea
slaveb
8 启动hdfs文件系统
首次使用hadoop前,必须格式化文件系统,输入如下命令:
hdfs namenode -format
9 启动守护进程
hadoop-daemon.sh start namenode
测试namenode进程情况:
jps
可以使用守护进程:
start-dfs.sh
start-yarn.sh
mr-jobhistory-daemon.sh start historyserver
10 终止守护进程
mr-jobhistory-daemon.sh stop historyserver
stop-yarn.sh
stop-dfs.sh
11创建用户目录
hadoop fs -mkdir -P /usr/$USER