一 准备资源和环境
下载Centos 7.2 的iso安装镜像,jdk1.8 for Linux压缩包,hadoop3.0.0压缩包。下载链接分别如下:
https://www.centos.org/download/
http://www.Oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html
http://hadoop.apache.org/releases.html
如下:
[root@cmaster home]# ls
hadoop-3.0.0-alpha4 hadoop-3.0.0-alpha4.tar.gz jdk-8u101-linux-x64.rpm
[root@cmaster home]#
准备三台centos7的系统:
Master:192.168.161.133
Slave1:192.168.161.135
Slave2:192.168.161.136
二安装jdk和hadoop
1 安装jdk
rpm -ivh jdk-8u101-linux-x64.rpm
查看jdk安装目录
rpm -qal|grep java
2 安装hadoop
进入home目录,直接解压hadoop即可
tar -zvxf hadoop-3.0.0-alpha4.tar.gz
3. 环境变量
vi /etc/profile
#Hadoop 3.0
export HADOOP_HOME=/home/hadoop-3.0.0-alpha4
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
source /etc/profile
注意:/home/hadoop-3.0.0-alpha4为解压路径
三配置hadoop
先在192.168.161.133上面配置hadoop,然后scp到slave上。
hadoop3.0需要配置的文件有core-site.xml、hdfs-site.xml、yarn-site.xml、mapred-site.xml、hadoop-env.sh、workers
新建目录:
cd /home/hadoop-3.0.0-alpha4
mkdir tmp
mkdir -p hdfs/{data,name}
1 core-site.xml配置文件
2 hdfs-site.xml配置文件
3 works
192.168.161.135
192.168.161.136
4 mapred-site配置
/home/hadoop-3.0.0-alpha4/etc/hadoop,
/home/hadoop-3.0.0-alpha4/share/hadoop/common/*,
/home/hadoop-3.0.0-alpha4/share/hadoop/common/lib/*,
/home/hadoop-3.0.0-alpha4/share/hadoop/hdfs/*,
/home/hadoop-3.0.0-alpha4/share/hadoop/hdfs/lib/*,
/home/hadoop-3.0.0-alpha4/share/hadoop/mapreduce/*,
/home/hadoop-3.0.0-alpha4/share/hadoop/mapreduce/lib/*,
/home/hadoop-3.0.0-alpha4/share/hadoop/yarn/*,
/home/hadoop-3.0.0-alpha4/share/hadoop/yarn/lib/*
5 yarn-site.xml配置
6 hadoop-env.sh中配置java_home
export JAVA_HOME=/usr/java/jdk1.8.0_101
7 将配置好的hadoop文件夹传输到slave上面
cd /home/
scp -r hadoop-3.0.0-alpha4 [email protected]:/home/
scp -r hadoop-3.0.0-alpha4 [email protected]:/home/
8 配置服务主机名和域名IP解析
1 linux 配置主机、域名-ip
CentOS7下修改主机名
第一种:hostname 主机名
01.hostname 主机名称
这种方式,只能修改临时的主机名,当重启机器后,主机名称又变回来了。
第二种:hostnamectl set-hostname
命令行中输入
hostnamectl set-hostname <主机名>
使用这种方式修改,可以永久性的修改主机名称!
1 修改主机名
192.168.161.133 hostnamectl set-hostname master
192.168.161.135 hostnamectl set-hostname slave1
192.168.161.136 hostnamectl set-hostname slave2
/etc/hostname 中会自动更新
2 建立域名IP解析
在192.168.161.133中建立域名解析到ip
vi /etc/hosts
192.168.161.133 master
192.168.161.135 slave1
192.168.161.136 slave2
2 windows本地配置域名解析
像linux的/etc/hosts一样,windows也有一个类似的hosts文件
C:/WINDOWS/system32/drivers/etc/hosts
在这里可以设置本地域名
本地域名是比远程DNS优先级要高的,
所以可以在这里设置本地域名,让域名指向你想要的ip,
特别是在远程域名与多个ip绑定,而你只希望其指向某一个ip的时候
四 启动hadoop
1. 格式化namenode
bin/hdfs namenode -format
2. 启动dfs及yarn
sbin/start-dfs.sh
sbin/start-yarn.sh
启动会报错,解决方法:
2.1 sbin/start-dfs.sh 报错:
是因为缺少用户定义造成的,所以分别编辑开始和关闭脚本
vim sbin/start-dfs.sh
vim sbin/stop-dfs.sh
在顶部空白处添加内容:
HDFS_DATANODE_USER=root
HADOOP_SECURE_DN_USER=hdfs
HDFS_NAMENODE_USER=root
HDFS_SECONDARYNAMENODE_USER=root
2.2 sbin/start-yarn.sh 报错
是因为缺少用户定义造成的,所以分别编辑开始和关闭脚本
$ vim sbin/start-yarn.sh
$ vim sbin/stop-yarn.sh
在顶部空白处添加内容:
YARN_RESOURCEMANAGER_USER=root
HADOOP_SECURE_DN_USER=yarn
YARN_NODEMANAGER_USER=root
2.3 可以采用另外一种方法启动
启动hadoop
首先格式化主节点命名空间,使用命令:
/home/joe/hadoop-3.0.0-alpha1/bin/hdfsnamenode –formate
其次在主节点上启动存储服务和资源管理主服务。使用命令:
/home/joe/hadoop-3.0.0-alpha1/sbin/hadoop-daemon.sh start namenode #启动主存储服务
/home/joe/hadoop-3.0.0-alpha1/sbin/yarn-daemon.sh start resourcemanager # 启动资源管理服务。
最后在从节点上启动存储从服务和资源管理从服务(以下两条命令要在两台机器上分别执行)
/home/joe/hadoop-3.0.0-alpha1/sbin/hadoop-daemon.sh start datanode #启动从存储服务
/home/joe/hadoop-3.0.0-alpha1/sbin/yarn-daemon.sh start nodemanager #启动资源管理从服务
3 通过jps命令查看
master:
[root@cmaster hadoop-3.0.0-alpha4]# jps
3842 ResourceManager
4217 Jps
2766 NameNode
[root@cmaster hadoop-3.0.0-alpha4]#
Slave1:
[root@cslave0 home]# jps
2561 DataNode
3333 Jps
3224 NodeManager
2621 SecondaryNameNode
[root@cslave0 home]#
Slave2:
[root@cslave1 home]# jps
3256 Jps
2955 DataNode
3084 NodeManager
[root@cslave1 home]#
4现在便可以打开页面http://192.168.161.133:8088及http://192.168.161.133:9870;看到下面两个页面时说明安装成功。
五借鉴网址:
http://blog.csdn.net/u010499619/article/details/52886872
http://www.linuxidc.com/Linux/2016-11/137244.htm
http://blog.csdn.net/u013725455/article/details/70147331
http://www.linuxidc.com/Linux/2016-10/136166.htm