本地虚拟机搭建zookeeper集群

1.下载安装虚拟机 建议使用14版本的,因为破解版的比较容易找到。下载centos7系统,虚拟机安装和Linux系统安装就不说了。先在一台上安装好zookeeper 另外两台可以直接复制已经安装Linux快照修改下配置文件。以下命令都是对于centos7系统下

2.去官网下载zookeeper 我下的是3.5版本的 下载bin.tar.gz结尾的二进制包不要下载源码包

3.我的安装目录 cd /opt/ywk/zookeeper rz命令从本机上传压缩包 在当前目录tar -zxvf zookeeper-3.5.5.bin.tar.gz

4.进入到解压后的目录 创建2个重要的文件夹
(1)datalog 日志文件夹 mkdir datalog
(2)data文件夹 mkdir data
在data文件夹下创建集群必须的myid文件里面只记录一个数字代表服务器的ID vi myid
(3) 配置文件配置 在conf文件下有个实例文件拷贝一份 cp zoo-sample.cfg zoo.cfg 默认内容可以不改添加以下内容
=================================================================
dataDir=/opt/ywk/zookeeper/apache-zookeeper-3.5.5-bin/data #创建的data文件夹的路径
dataLogDir=/opt/ywk/zookeeper/apache-zookeeper-3.5.5-bin/datalog #创建的datalog文件夹的路径
server.1=192.168.140.128:2888:2889 #集群服务器的配置数字是myid配置的数字 两个端口一个选举端口一个节点信息交换接口
server.2=192.168.140.129:2888:2889
server.3=192.168.140.130:2888:2889
=================================================================
至此,配置就算基本完成了,所有Zookeeper集群中的节点机器,除了myid文件中的值不一样外,其它配置均一样。
我配置的完整zoo.cfg文件

# The number of milliseconds of each tick
tickTime=2000
# The number of ticks that the initial 
# synchronization phase can take
initLimit=10
# The number of ticks that can pass between 
# sending a request and getting an acknowledgement
syncLimit=5
# the directory where the snapshot is stored.
# do not use /tmp for storage, /tmp here is just 
# example sakes.
dataDir=/opt/ywk/zookeeper/apache-zookeeper-3.5.5-bin/data
dataLogDir=/opt/ywk/zookeeper/apache-zookeeper-3.5.5-bin/datalog
server.1=192.168.140.128:2888:2889
server.2=192.168.140.129:2888:2889
server.3=192.168.140.130:2888:2889
# the port at which the clients will connect
clientPort=2181
# the maximum number of client connections.
# increase this if you need to handle more clients
#maxClientCnxns=60
#
# Be sure to read the maintenance section of the 
# administrator guide before turning on autopurge.
#
# http://zookeeper.apache.org/doc/current/zookeeperAdmin.html#sc_maintenance
#
# The number of snapshots to retain in dataDir
#autopurge.snapRetainCount=3
# Purge task interval in hours
# Set to "0" to disable auto purge feature
#autopurge.purgeInterval=1

5.启动测试
(1) 进入Zookeeper的/bin目录下执行命令 ./zkServer.sh start即可启动服务
(2) ./zkServer.sh status查看服务状态并可以看到当前节点是leader(主)节点还是follower(从)节点。
(3) 3.5版本的错误日志在logs文件下可以查看报错信息 常见的失败原因有:防火墙未关闭、配置文件未创建、数据目录未创建、myid文件未创建或创建有误等 我是碰到了没有到主机的路由错误 原因是端口被防护墙拦截了
(4) 防火墙设置
查看防火墙设置 firewall-cmd --state
启动一个服务:systemctl start firewalld.service
关闭一个服务:systemctl stop firewalld.service
重启一个服务:systemctl restart firewalld.service
显示一个服务的状态:systemctl status firewalld.service
在开机时启用一个服务:systemctl enable firewalld.service
在开机时禁用一个服务:systemctl disable firewalld.service
查看服务是否开机启动:systemctl is-enabled firewalld.service
查看已启动的服务列表:systemctl list-unit-files|grep enabled
(5) 客户端简单操作
登录 ./zkCli.sh -server localhost,localhost 集群登录以逗号隔开
创建节点 create /cndmss ywk
获取节点 get /cndmss

6.集群理解
以下都可以自己测试下
(1)zookeeper自带有客户端 curator时在原客户端基础上加强的客户端类zookeeper有集群情况下链接服务端url串的说明 127.0.0.1:2181,127.0.0.2:2181 以逗号隔开
(2)往任意一个节点有修改新增删除行为各个节点会同步
(3)集群链接时只要有一个节点是在运行的就能获取服务
(4)一个节点宕机在重启还自动被发现

7.虚拟机固定ip 虚拟机重启的话ip可能会变对于Xshelll连接和dubbo等中间件连接不方便
(1)找到虚拟机虚拟网络的网关 编辑–虚拟网络编辑器–NAT模式–NAT设置–子网网关ip
(2)vim etc/sysconfig/network-scripts/ifcfg-ens33 修改网络配置文件 具体见文件
文件名称可能-ens33这个后缀不一样自己注意找找
=========================================
BOOTPROTO=static #此项改为静态
#以下新加的 192.168.140.2为(1)中的网关地址
ONBOOT=yes
DNS1=192.168.140.2
IPADDR=192.168.140.130
NETMASK=255.255.255.0
GATEWAY=192.168.140.2
==========================================
我配置的完整文件

TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=static
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=ens33
UUID=55c04677-e748-401a-8898-b42ecdf3b041
DEVICE=ens33

ONBOOT=yes
DNS1=192.168.140.2
IPADDR=192.168.140.130
NETMASK=255.255.255.0
GATEWAY=192.168.140.2


(3)如果以上设置看到虚拟机能ping通主机,而主机不能ping通虚拟机,看看虚拟网卡的ip配置是否正确,通常情况下默认自动获取即可。

8.虚拟机刚安装时需要装的软件以及常用命令
查询ip地址 ip addr
安装rzsz命令 yum install lrzsz
安装jdk 查看是否安装过 yum list installed |grep java 查看可安装的yum list java*
安装vim yum install vim

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值