从零创建一个zookeeper集群

由于zookeeper是一个分布式协调服务,所以学习zookeeper的时候难免需要创建一个zk集群进行学习,下面就分享下怎么从0开始搭建zk集群

准备工作

下载虚拟机

一般自己学习的话不像真实环境,肯定是创建虚拟机进行学习,我使用的virtual box,下载完成安装完毕即可使用
VM Virtualbox

下载centos7镜像文件

需要一个操作系统,下载地址如下
centos7

下载xshell(可选)

因为virtual box的界面操作起来太难受了,用xshell可以快捷的使用CV大法,还可以上下滚动,推荐装一下,官网如下
xshell
PS:学习用不要钱

具体操作

创建虚拟机

根据下面给出的图片按顺序操作即可
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
然后按照图形化界面进行系统安装,等待安装完毕即可,此时就可以得到一台centos7的虚拟机

配置网络

在这里插入图片描述
设置完外部的,我们刚安装完毕的虚拟机的网卡还未打开,所以先去打开下centos7的网卡,顺带设置下静态ip
1.确认网卡未开启指令

ip addr

在这里插入图片描述
2.打开网卡,指令

vi /etc/sysconfig/network-scripts/ifcfg-enp0s3

修改文件中的值
在这里插入图片描述

即设置静态ip,设置开机启动网卡,默认网关设置与自己主机的默认网关一致,如果主机是window10的话可以用route print查看,掩码是0.0.0.0的就是默认网关,然后ip地址前面的网段一定要和主机保持一致,不然无法正常通讯,配置完后进行刷新,指令

service network restart
ip addr

在这里插入图片描述
网卡正常运行

在centos中安装zk环境

1.用xshell进行连接
在这里插入图片描述
连接的时候会要求输入登陆的用户名密码,输入即可
2.下一下会用到的工具,指令如下

yum -y install wget

3.因为zk是用java写的,所以自然要安装jdk,使用工具进行下载,这里下个jdk8好了,用yum下载的jdk是openjdk,直接去官网上下oracle jdk,去官网把链接地址搞到手
在这里插入图片描述
在这里插入图片描述

指令

wget [链接地址]
eg: wget https://download.oracle.com/otn/java/jdk/8u291-b10/d7fc238d0cbf4b0dac67be84580cfb4b/jdk-8u291-linux-x64.tar.gz?AuthParam=1620211469_2164c717b023fc51412a63aa7144f920

然后解压

tar -xf jdk-8u291-linux-x64.tar.gz?AuthParam=1620211469_2164c717b023fc51412a63aa7144f920

配置环境变量

vi /etc/profile

在文件底部加入并保存退出

export JAVA_HOME=/root/jdk1.8.0_291
export PATH=$PATH:$JAVA_HOME/bin

载入配置查看是否成功

source /etc/profile
java -version

4.下载zk并解压
在这里插入图片描述

wget https://apache.mirrors.tworzy.net/zookeeper/zookeeper-3.7.0/apache-zookeeper-3.7.0-bin.tar.gz
tar -xf apache-zookeeper-3.7.0-bin.tar.gz

配置环境变量

vi /etc/profile

在文件底部加入并保存退出

export ZOOKEEPER_HOME=/root/jdk1.8.0_291
export PATH=$PATH:$JAVA_HOME/bin:$ZOOKEEPER_HOME/bin

载入配置

source /etc/profile

配置ZK

进入zk的conf目录,复制zoo_sample.cfg配置文件,命名为zoo.cfg,之后启动默认会使用这个配置文件,自行修改配置文件,说一下简单的配置

cp zoo_sample.cfg zoo.conf

以下内容均为配置文件中的内容
需要配置dataDir来存放server id,默认在tmp路径下,不太好

dataDir=/var/zookeeper

集群需要在配置文件后面加上server来告知其他的服务器在哪,通过哪些端口进行通讯和选举

server.1=node1:2888:3888
server.2=node2:2888:3888
server.3=node3:2888:3888
server.4=node4:2888:3888

至此保存并退出配置文件
然后注意到写入server的时候用的主机名,所以还得设置下对应的主机名,指令

vi /etc/hosts

加入自己的主机名对应的ip

192.168.1.200 node1
192.168.1.201 node2
192.168.1.202 node3
192.168.1.203 node4

最后到对应的dataDir目录下加入myid文件,告知zk自己是第几台server

mkdir -p /var/zookeeper
echo 1 > /var/zookeeper/myid

到这边单台的ZK已经创建完毕了,可以启动试一下

zkServer.sh start
ps -ef | grep zook

复制虚拟机

关闭当前开启的虚拟机后,可以对虚拟机进行一个复制
在这里插入图片描述
在这里插入图片描述
重复上述步骤复制n个虚拟机,然后修改对应的zk的myid静态ip地址,其他都不用改,关闭所有server的防火墙,然后就能启动zk集群开始使用了

关闭防火墙 systemctl stop firewalld
启动 zkServer.sh start
客户端登陆 zkCli.sh

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值