1.硬件准备
阿里云三台服务器,使用系统是centos6.9
2.安装
下载到本地上传,或者使用wget下载 ,注意后面的AUTH信息每次需要自行改变
https://www.oracle.com/java/technologies/javase/javase-jdk8-downloads.html
浏览器下载后获取地址
解压后
配置环境变量
2)配置host互通
修改hostname
/etc/hosts:主机名查询静态表,是ip地址与域名快速解析的文件
格式
IP 主机名 域名 主机别名(一个IP有多个名字,可用空格隔离)
这一步是最坑的,对于阿里云这种有固定IP的,这里不能配置外网IP,需要配置内网IP
新的配置
3)创建用户
授予sudo权限
1)上传和解压
1)三台机子免密登录(001免密登录002和003)
先完成hadoop用户
再完成root用户
切换到root用户下配置免密登录(因为部分操作使用root用户会比较方便)
2)编写同步文件脚本 xsync
3)no-login模式,让/etc/profile里面的环境变量生效
4)编写同步执行命令
因为path中包括/home/hadoop/bin,所以把脚本放在该目录下即可在任意地点执行 chmod u+x 脚本
把两个脚本同步到root用户下
修改xsync,用户改为root
[hadoop@hadoop-001 bin]$ echo $PATH
/usr/local/bin:/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/sbin:/opt/modules/jdk/bin:/opt/modules/hadoop-2.7.2/bin:/opt/m
odules/hadoop-2.7.2/sbin:/home/hadoop/bin
2.4规划
进程规划:核心、同质进程尽量分散
Hadoop-001
Hadoop-002
Hadoop-003
HDFS
NameNode
DataNode
SecondaryNameNode
YARN
NodeManager
ResourceManager
2.5修改配置文件
1)core-site.xml
2)同步操作
环境变量
hadoop和jdk文件
xsync modules/
(1)如果集群是第一次启动,需要格式化NameNode
hadoop namenode -format
(2)在001上面启动namenode
cd /opt/modules/hadoop-2.7.2/sbin/
分析原因:阿里云服务器无法绑定公网IP的地址,在 /etc/hosts 中把主节点master节点里面的ip写成内网ip
重启后验证:
界面验证rpc9000对应的http是50070,需要在安全组中添加,
(2)启动其他节点的datanode,需要指定namenode,把001上的文件同步至002、003
xsync core-site.xml
配置
同步
启动脚本
在hadoop03上面启动secondarynamenode
yarn的启动
在hadoop02上启动resourcemanager
在所有节点启动nodemanager
测试验证
群起脚本:读取HADOOP_HOME/etc/hadoop/slaves 获取所有节点的主机名,ssh启动(免密登录,source /etc/profile)
start-yarn.sh 在集群非RM所在的机器使用,不会启动resourcemanager
建议在RM上执行群启脚本。
We only live once, and time just goes by.