Hadoop包括两个集群,hdfs集群和yarn集群
hdfs集群负责数据存储,主要角色有:NameNode,DataNode,SecondaryNameNode
yarn集群负责调度管理,主要角色有ResourceManager, NodeManager
两者逻辑上没有必要关联一定要放在一起,但一般放在一起。
centOS/VMWare开启三台虚拟机
bigdata01.virtualgroup.com
bigdata02.virtualgroup.com
bigdata03.virtualgroup.com
集群时间同步
防火墙关闭
主机名host映射
免密登陆
JDK1.8
分布模式
bigdata01.virtualgroup.com简称01,其余同理
01: NameNode; DataNode; ResourceManager; NodeManager;
02: SecondaryNameNode; DataNode; NodeManager;
03: DataNode; NodeManager;
文件夹设定
mkdir /export/servers #安装文件(JDK,Hadoop等)
mkdir /export/datas #存储数据
社区版: Apache提供的官方版本
优点:版本功能新且全
缺点:不稳定
商业版:商业公司版本(以CDH cloudera为例)
优点:兼容性好
缺点:不是最新版,要钱
采用cdh5.14.0–Hadoop2.6.0
http://archive.cloudera.com/cdh5/
a. JDK1.7
b. cloudera公司jar包不在maven中央仓库,需要下载配置到编译的机器上
c. 网络畅通
(未展开论述)
配置环境变量 (jdk的安装路径)
export JAVA_HOME=/export/servers/jdk1.8.0_65
均有对应的xxx-default.xml文件,两者作用相同
先匹配xxx-site.xml,如没有再在xxx-default.xml文件中寻找属性设置
核心配置文件
<property>
<name>fs.defaultFSname>
<value>hdfs://bigdata01.virtualgroup.com:9000value>
property>
<property>
<name>hadoop.tmp.dirname>
<value>/export/data/hadoopdatavalue>
property>
hdfs核心配置文件
<property>
<name>dfs.replicationname>
<value>2value>
property>
<property>
<name>dfs.namenode.secondary.http-addressname>
<value>bigdata02.virtualgroup.com:50090value>
property>
MapReduce的核心配置文件
<property>
<name>mapreduce.framework.namename>
<value>yarnvalue>
property>
yarn的核心配置文件
<property>
<name>yarn.resourcemanager.hostnamename>
<value>bigdata01.virtualgroup.comvalue>
property>
<property>
<name>yarn.nodemanager.aux-servicesname>
<value>mapreduce_shufflevalue>
property>
集群节点主机名
(应该是部署DataNode和NodeManager的机器需要填入。
实测因为主机01除了部署NameNode和ResourceManager外,同时部署了DataNode和NodeManager,如果不写入这台机器名,则一键脚本启动无法开启DataNode和NodeManager)
bigdata01.virtualgroup.com
bigdata02.virtualgroup.com
bigdata03.virtualgroup.com
参阅官网如下
hadoop官网
“release archive”下找到对应版本,点击“documentation”
在新页面左下角,configuration,有对应各配置文件default设置链接
修改环境变量配置文件
vim /etc/profile
export HADOOP_HOME=/export/servers/hadoop-2.6.0-cdh5.14.0
export PATH=$PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
保存并刷新配置文件
source /etc/profile
至此Hadoop基本配置完成
配置完成,首次启动需要格式化
hadoop namenode -format
若不小心多次格式化,把三台机器上 hadoop.tmp.dir 指定的文件夹删除 重新format一次 此时就是一个新的集群
开启/关闭 NameNode/DataNode/ResourceManager/NodeManager
hadoop-daemon.sh start namenode
hadoop-daemon.sh start datanode
hadoop-daemon.sh start resourcemanager
hadoop-daemon.sh start nodemanager
start-dfs.sh #开启hdfs
stop-dfs.sh #停止hdfs
start-yarn.sh #开启yarn
stop-yarn.sh #停止yarn
start-all.sh #开启全部
stop-all.sh #停止全部
NameNode:http://nn_host:port/默认50070
e.g. http://bigdata01.virtualgroup.com:50070/
ResourceManager:http://rm_host:port/默认8088
e.g. http://bigdata01.virtualgroup.com:8088/
JobHistory默认未开启,需手动开启,可记录Hadoop操作记录
cd /export/servers/hadoop-2.6.0-cdh5.14.0/etc/hadoop
vim mapred-site.xml
<property>
<name>mapreduce.jobhistory.addressname>
<value>bigdata01.virtualgroup.com:10020value>
property>
<property>
<name>mapreduce.jobhistory.webapp.addressname>
<value>bigdata01.virtualgroup.com:19888value>
property>
cd /export/servers/hadoop-2.6.0-cdh5.14.0/etc/hadoop
#发给bigdata02.virtualgroup.com机台
scp mapred-site.xml bigdata02.virtualgroup.com:/export/servers/hadoop-2.6.0-cdh5.14.0/etc/hadoop
#发给bigdata03.virtualgroup.com机台
scp mapred-site.xml bigdata03.virtualgroup.com:/export/servers/hadoop-2.6.0-cdh5.14.0/etc/hadoop
该服务默认不开启,需手动开启关闭
mr-jobhistory-daemon.sh start historyserver
mr-jobhistory-daemon.sh stop historyserver
http://bigdata01.virtualgroup.com:19888/jobhistory
垃圾桶保存时间,默认时间为0(分钟),即没有误删恢复机制
修改默认属性,比如为1440,即保存一天,之后再自动删除
vim core-site.xml
<property>
<name>fs.trash.intervalname>
<value>1440value>
property>
删除时会显示移动的位置,mv指令移动出来即可。