本篇将在阿里云ECS服务器部署HADOOP集群(一):Hadoop完全分布式集群环境搭建的基础上搭建,多添加了一个 datanode 节点 。
1 节点环境介绍:
1.1 环境介绍:
- 服务器:三台阿里云ECS服务器:master, slave1, slave2
- 操作系统:CentOS 7.3
- Hadoop:hadoop-2.7.3.tar.gz
- Java: jdk-8u77-linux-x64.tar.gz
- ZooKeeper: zookeeper-3.4.14.tar.gz
1.2 各节点角色分配
- master: NameNode、SecondaryNameNode、QuorumPeerMain
- slave1: DataNode、QuorumPeerMain
- slave2: DataNode、QuorumPeerMain
2 ZooKeeper 下载
下载 zookeeper-3.4.14.tar.gz 并在合适的位置解压缩,笔者这里解压缩的路径为:
/usr/local/
将解压得到的目录改名为 zookeeper 。
cd /usr/local
mv zookeeper-3.4.14 zookeeper
3 添加 ZooKeeper 环境变量
在"/etc/profile"中添加内容:
1 export ZOOKEEPER_HOME=/usr/local/zookeeper
2 export PATH=$PATH:$ZOOKEEPER_HOME/bin
重新加载环境:
source /etc/profile
4 修改 Zookeeper 配置信息
4.1 修改 Zookeeper 默认配置
编辑文件:
1 cd $ZOOKEEPER_HOME/conf/
2 cp zoo_sample.cfg zoo.cfg
3 vim zoo.cfg
配置可参考如下代码:
1 # The number of milliseconds of each tick 通信心跳时间
2 tickTime=2000
3 # The number of ticks that the initial
4 # synchronization phase can take 初始通信时限
5 initLimit=5
6 # The number of ticks that can pass between
7 # sending a request and getting an acknowledgement 同步通信时限
8 syncLimit=2
9 # the directory where the snapshot is stored.
10 # do not use /tmp for storage, /tmp here is just
11 # example sakes. 数据文件目录
12 dataDir=/usr/local/zookeeper/tmp
13 # the port at which the clients will connect 客户端连接端口
14 clientPort=2181
15 #服务器名称与地址:集群信息(服务器编号、服务器地址、LF 通信端口、选举端口)
16 server.1=master:2888:3888
17 server.2=slave1:2888:3888
18 server.3=slave2:2888:3888
4.2 为节点配置编号
在 /usr/local/zookeeper 下创建目录 tmp,然后在 tmp 下创建文件 myid 并编辑。
1 cd $ZOOKEEPER_HOME
2 mkdir tmp
3 cd tmp
4 vim myid
添加内容:
1
5 分发配置给各节点
分发 zookeeper 和 profile 给 slave1, slave2(建议将 zookeeper压缩后分发)
1 scp -r /usr/local/zookeeper slave1:/usr/local
2 scp -r /usr/local/zookeeper slave2:/usr/local
1 scp /etc/profile slave1:/etc
2 scp /etc/profile slave2:/etc
分发后分别在各节点重新加载环境。
将 slave1 和 slave2 的内容分别改为 2 和 3 。
6 启动 zookeeper
分别在三个节点执行以下命令
zkServer.sh start
然后使用 jps 确定 QuorumPeerMain 进程是否启动
启动完成后可使用以下命令查看各节点的 zookeeper mode。
注:如只启动了一个节点的 zookeeper 则会出现以下错误,因为最少需要一个 leader 和 一个 follower 。
7 Zookeeper shell 使用
zkCli.sh
8 搭建完成
接下来就可以和 Hbase 一起使用了。
阿里云ECS服务器部署HADOOP集群系列:
- 阿里云ECS服务器部署HADOOP集群(一):Hadoop完全分布式集群环境搭建
- 阿里云ECS服务器部署HADOOP集群(二):HBase完全分布式集群搭建(使用外置ZooKeeper)
- 阿里云ECS服务器部署HADOOP集群(四):Hive本地模式的安装
- 阿里云ECS服务器部署HADOOP集群(五):Pig 安装
- 阿里云ECS服务器部署HADOOP集群(六):Flume 安装
- 阿里云ECS服务器部署HADOOP集群(七):Sqoop 安装
来源:oschina
链接:https://my.oschina.net/u/4255576/blog/3342539