任务描述:
Zookeeper 集群部署模块
1. 在三台虚拟机上解压zookeeper安装到“/opt/”路径
2. 配置zookeeper环境变量
3. 配置“zoo.cfg”文件
4. 修改myid文件
5. 启动每个服务器上的zookeeper节点
6. 查看每个zookeeper节点的状态信息
答案:
环境准备
虚拟机(三台):虚拟机之间已经成功配置免密登录和安装JDK。
node01:10.10.10.100
node02:10.10.10.101
node03:10.10.10.102
Linux操作系统:CentOS 7
JDK软件版本:jdk1.8.0_11
zookeeper软件版本:zookeeper-3.4.14
步骤一:配置hosts文件
在node01上,为配置 /etc/hosts文件
然后将 node01 上的hosts文件复制到 node02和node03的对应位置上。
步骤二:配置免密登录
为三台虚拟机配置免密登录。
在node01、node02、node03上分别执行如下所示的内容:
执行完毕之后,在任意一台虚拟机中,通过 ssh node0x 测试登录是否还需要密码。
打开 /etc/host文件
vim /etc/hosts
在文件添加如下所示的内容
10.10.10.100 node01
10.10.10.101 node02
10.10.10.102 node03
在node01上执行
scp -r /etc/hosts node02:/etc/
scp -r /etc/hosts node03:/etc/
生成公钥和私钥
ssh-keygen -t rsa
一直回车。直到出现 RSA 2048 界面为止
公钥拷贝到 node01、node02、node03
ssh-copy-id node01
ssh-copy-id node02
ssh-copy-id node03
步骤三:软件安装
将 zookeeper-3.4.14.tar.gz 和 jdk-8u11-linux-x64.tar.gz 安装包上传至
node01 虚拟机的 /opt/ 目录中
在 node01 中解压:
在 node01 中配置zookeeper
进入 zookeeper 配置文件目录
拷贝配置文件 zoo_sample.cfg 为 zoo.cfg
修改 zoo.cfg 文件内容如下所示:
将 node01 中的 zookeeper 解压目录远程拷贝到 node02、node03 上
在三台主机的 /opt/zookeeper-3.4.14 中创建 tmp 目录:
进入 /opt/ 目录
[root@ndoe01 ~]# cd /opt/
解压JDK
[root@node01 opt]# tar -zxf jdk-8u11-linux-x64.tar.gz
解压ZooKeeper
[root@node01 opt]# tar -zxf zookeeper-3.4.14.tar.gz
cd /opt/zookeeper-3.4.14/conf/
cp zoo_sample.cfg zoo.cfg
下面的内容需要修改
dataDir=/opt/zookeeper-3.4.14/tmp
下面的内容需要新增
server.1=node01:2888:3888
server.2=node02:2888:3888
server.3=node03:2888:3888
在node01上执行
scp -r /opt/zookeeper-3.4.14 node02:/opt/
scp -r /opt/zookeeper-3.4.14 node03:/opt/
三台主机上都需要执行
mkdir /opt/zookeeper-3.4.14/tmp
在三台主机上生成 myid 文件,执行如下:
配置环境变量
保存退出之后,执行 source /etc/profile 指定
步骤四:zookeeper启动
在三台主机上执行下面的命令,启动zookeeper:
通过 jps 指令可以查看到在每台主机上都多了一个进程 QuorumPeerMain
在三台主机上执行下面的指令,查看各个节点的状态信息:
此时会发现,node01、node03的状态为 follower, node02的状态为 leader。(三台主
机的启动顺序会影响三台主机的状态。但是只要有一台leader节点,两台follower节点就可
以。)
此时表示zookeeper集群安装、配置完成。
在node01 上执行
echo 1 > /opt/zookeeper-3.4.14/tmp/myid
在node02 上执行
echo 2 > /opt/zookeeper-3.4.14/tmp/myid
在node03 上执行
echo 3 > /opt/zookeeper-3.4.14/tmp/myid
在三台主机中都需要执行
vim /etc/profile
在文件的末尾添加如下内容
export ZOOKEEPER_HOME=/opt/zookeeper-3.4.14
export PATH=$PATH:$ZOOKEEPER_HOME/bin:
三台主机上都执行
zkServer.sh start
zkServer.sh status