为了学习Hadoop生态的部署和调优技术,在笔记本上的3台虚拟机部署Hadoop集群环境,要求保证HA,即主要服务没有单点故障,能够执行最基本功能,完成小内存模式的参数调整。
1. 准备环境
1.1. 规划
主机名
IP
软件
hadoop
192.168.154.128
原始虚拟机用于克隆
hadoop1
192.168.154.3
Zookeeper,journalnode Namenode, zkfc, Resourcemanager
hadoop2
192.168.154.4
Zookeeper,journalnode Namenode, zkfc, Resourcemanager, DataNode,NodeManager
hadoop3
192.168.154.5
Zookeeper,journalnode DataNode,NodeManager
vi /etc/hosts
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::
1 localhost localhost.localdomain localhost6 localhost6.localdomain6
192.168.154.3 hadoop1[1]
192.168.154.4 hadoop2
192.168.154.5 hadoop3
1.2. 准备软件包
名称
描述
ssh_auth
设置互信的工具包
C3
集群管理效率工具,在集群范围执行shell命令
hadoop-2.7.3.tar.gz
hadoop安装包
zookeeper-3.4.9.tar.gz
zookeeper安装包
1.3. 设置互信
采用设置互信的工具,解压文件到目录
vi ./host
hadoop1
hadoop2
hadoop3
执行命令
./ssh_auth.sh hadoop hadoop ./host
验证:在hadoop1,hadoop2,hadoop3上分别登录三台机器,如果无需密码进入则正常
ssh hadoop1
exit
ssh hadoop2
exit
ssh hadoop3
exit
为了操作简单,也设置root用户的互信
./ssh_auth.sh root xxxxxx ./host xxxxxx为root用户的密码
1.4. 安装C3
C3是Cluster Command & Control (C3) Tool Suite,是集群管理的效率工具,用于在集群服务器上通过ssh并行或者串行执行相同的命令。在Centos7上安装报告与filesystem-3.2-20.el7.x86_64冲突,所以需要强行安装,命令如下:
rpm -i c3-5.1.3-0.1.noarch.rpm --nodeps --force
安装完成后,在使用C3的节点创建/etc/c3.conf文件。内容如下:
cluster cloud {
hadoop1:
127.0.0.1 #head node
dead remove
-index-00
hadoop1
hadoop2
hadoop3
}
验证:切换回hadoop用户,执行cexec date
************************* cloud *************************
--------- hadoop1---------
××××××××××
--------- hadoop2---------
××××××××××
--------- hadoop3---------
××××××××××
1.5. 创建目标目录
切换到root用户 (用su -,使得root的环境变量起作用)
cexec mkdir -p /opt/cloud
cexec
chown hadoop:hadoop /opt/cloud
切换到hadoop用户
#软件包的安装(解压缩的目标)目录
cexec
mkdir -p /opt/cloud/packages
#执行目录,是与安装包目录的软连接
cexec
mkdir -p /opt/cloud/bin
#配置文件目录,是与安装包目录中配置文件目录的软连接
cexec
mkdir -p /opt/cloud/etc
#数据目录
cexec
mkdir -p /opt/cloud/data
#日志目录
cexec
mkdir -p /opt/cloud/logs
1.6. 配置Java环境
vi ~/.bashrc
增加
export JAVA_HOME=/usr/lib/jvm/java
export JRE_HOME
=${JAVA_HOME}/jre
export>=.:$JRE_HOME/lib/rt.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export PATH
=$JAVA_HOME/bin:$PATH
即刻生效
source ~/.bashrc
复制到另外两台服务器
scp ~/.bashrc hadoop2:/home/hadoop
scp ~/.bashrc hadoop3:/home/hadoop
[1] 增加 hadoop1
hadoop2的ip映射 |