zookeeper的下载、安装以及配置和zookeeper集群的搭建

版权声明: https://blog.csdn.net/weixin_40521823/article/details/86625332

我这里只有六台集群:

192.168.79.131   cluster-3

192.168.79.130   cluster-1

192.168.79.133   cluster-2

192.168.79.134   cluster-4

192.168.79.135   cluster-5

192.168.79.136   cluster-6

一、zookeeper下载

这里从官网下载zookeeper-3.4.12.tar.gz

二、安装zookeeper

   (1)上传zookeeper-3.4.12.tar.gz到虚拟机下的新建文件夹soft下

(2)解压zookeeper-3.4.12.tar.gz,命令:tar -zxvf zookeeper-3.4.12.tar.gz /C /usr/local/

三、配置zookeeper

(1)cd /usr/local/zookeeper-3.4.12/conf/

修改zoo_sample.cfg 为zoo.cfg,命令:mv zoo_sample.cfg zoo.cfg

添加配置:(在zookeeper-3.4.12下新建目录data)

vi zoo.cfg(有更多集群,只需要在后面添加server即可)

dataDir=/usr/local/zookeeper-3.4.12/data        
        server.1=cluster-1:2888:3888
        server.2=cluster-3:2888:3888
        server.3=cluster-2:2888:3888
        server.4=cluster-4:2888:3888 
        server.5=cluster-5:2888:3888 
        server.6=cluster-6:2888:3888 

     保存

(2)cd /usr/local/zookeeper-3.4.12/data 创建一个myid文件,里面内容是server.N中的N(server.2里面内容为2)

         命令:echo 1 > myid

(3)将配置好的zookeeper拷贝到其它的节点

cd /usr/local

scp -r zookeeper-3.4.12/ cluster-3:/usr/local/

(4)在其它的节点上修改myid的内容即可,myid里面内容是server.N中的N(server.2里面内容为2)

四、启动集群

分别启动zookeeper,

cd /usr/local/zookeeper-3.4.12/bin目录下,

启动命令:./zkServer.sh start

[root@cluster-3 bin]# ./zkServer.sh start
ZooKeeper JMX enabled by default
Using config: /usr/local/zookeeper-3.4.12/bin/../conf/zoo.cfg
Starting zookeeper ... STARTED

可通过jps命令查看进程,多了一个进程

[root@cluster-3 bin]# jps
8947 QuorumPeerMain
9428 Jps
[root@cluster-3 bin]# 

注意:若启动不了,可能会是防火墙的原因,需要把防火墙关闭,

centos7关闭防火墙的命令为:

systemctl stop firewalld

查看防火墙状态命令:

systemctl status firewalld

也可能是myid没有配置好的原因,需要进入zookeeper的data目录下,把myid设置为zoo.cfg中server所对应的id,利用命令:

echo x > myid

x是server.后面的数字

可以查看myid的值,命令为:

cat myid

五、启动集群后可以查看状态leader还是follower,命令:./zkServer.sh status

[root@cluster-3 bin]# ./zkServer.sh status
ZooKeeper JMX enabled by default
Using config: /usr/local/zookeeper-3.4.12/bin/../conf/zoo.cfg
Mode: leader
[root@cluster-3 bin]# 
[root@cluster-1 bin]# ./zkServer.sh status
ZooKeeper JMX enabled by default
Using config: /usr/local/zookeeper-3.4.12/bin/../conf/zoo.cfg
Mode: follower
[root@cluster-1 bin]# 

六、启动客户端

命令:./zkCli.sh

[root@cluster-3 bin]# ./zkCli.sh 
Connecting to localhost:2181
2019-01-24 14:06:45,105 [myid:] - INFO  [main:Environment@100] - Client environment:zookeeper.version=3.4.12-e5259e437540f349646870ea94dc2658c4e44b3b, built on 03/27/2018 03:55 GMT
2019-01-24 14:06:45,107 [myid:] - INFO  [main:Environment@100] - Client environment:host.name=cluster-3
2019-01-24 14:06:45,107 [myid:] - INFO  [main:Environment@100] - Client environment:java.version=1.8.0_191
2019-01-24 14:06:45,108 [myid:] - INFO  [main:Environment@100] - Client environment:java.vendor=Oracle Corporation
2019-01-24 14:06:45,108 [myid:] - INFO  [main:Environment@100] - Client environment:java.home=/usr/local/jdk/jre
2019-01-24 14:06:45,108 [myid:] - INFO  [main:Environment@100] - Client environment:java.class.path=/usr/local/zookeeper-3.4.12/bin/../build/classes:/usr/local/zookeeper-3.4.12/bin/../build/lib/*.jar:/usr/local/zookeeper-3.4.12/bin/../lib/slf4j-log4j12-1.7.25.jar:/usr/local/zookeeper-3.4.12/bin/../lib/slf4j-api-1.7.25.jar:/usr/local/zookeeper-3.4.12/bin/../lib/netty-3.10.6.Final.jar:/usr/local/zookeeper-3.4.12/bin/../lib/log4j-1.2.17.jar:/usr/local/zookeeper-3.4.12/bin/../lib/jline-0.9.94.jar:/usr/local/zookeeper-3.4.12/bin/../lib/audience-annotations-0.5.0.jar:/usr/local/zookeeper-3.4.12/bin/../zookeeper-3.4.12.jar:/usr/local/zookeeper-3.4.12/bin/../src/java/lib/*.jar:/usr/local/zookeeper-3.4.12/bin/../conf:.:/usr/local/jdk/jre/lib/rt.jar:/usr/local/jdk/lib/dt.jar:/usr/local/jdk/lib/tools.jar
2019-01-24 14:06:45,108 [myid:] - INFO  [main:Environment@100] - Client environment:java.library.path=/usr/java/packages/lib/amd64:/usr/lib64:/lib64:/lib:/usr/lib
2019-01-24 14:06:45,108 [myid:] - INFO  [main:Environment@100] - Client environment:java.io.tmpdir=/tmp
2019-01-24 14:06:45,108 [myid:] - INFO  [main:Environment@100] - Client environment:java.compiler=<NA>
2019-01-24 14:06:45,108 [myid:] - INFO  [main:Environment@100] - Client environment:os.name=Linux
2019-01-24 14:06:45,108 [myid:] - INFO  [main:Environment@100] - Client environment:os.arch=amd64
2019-01-24 14:06:45,108 [myid:] - INFO  [main:Environment@100] - Client environment:os.version=3.10.0-957.1.3.el7.x86_64
2019-01-24 14:06:45,108 [myid:] - INFO  [main:Environment@100] - Client environment:user.name=root
2019-01-24 14:06:45,109 [myid:] - INFO  [main:Environment@100] - Client environment:user.home=/root
2019-01-24 14:06:45,109 [myid:] - INFO  [main:Environment@100] - Client environment:user.dir=/usr/local/zookeeper-3.4.12/bin
2019-01-24 14:06:45,109 [myid:] - INFO  [main:ZooKeeper@441] - Initiating client connection, connectString=localhost:2181 sessionTimeout=30000 watcher=org.apache.zookeeper.ZooKeeperMain$MyWatcher@4b85612c
2019-01-24 14:06:45,134 [myid:] - INFO  [main-SendThread(localhost:2181):ClientCnxn$SendThread@1028] - Opening socket connection to server localhost/0:0:0:0:0:0:0:1:2181. Will not attempt to authenticate using SASL (unknown error)
Welcome to ZooKeeper!
JLine support is enabled
2019-01-24 14:06:45,215 [myid:] - INFO  [main-SendThread(localhost:2181):ClientCnxn$SendThread@878] - Socket connection established to localhost/0:0:0:0:0:0:0:1:2181, initiating session
2019-01-24 14:06:45,245 [myid:] - INFO  [main-SendThread(localhost:2181):ClientCnxn$SendThread@1302] - Session establishment complete on server localhost/0:0:0:0:0:0:0:1:2181, sessionid = 0x200002d4bd60000, negotiated timeout = 30000

WATCHER::

WatchedEvent state:SyncConnected type:None path:null

看看有哪些命令:help一下

[zk: localhost:2181(CONNECTED) 0] help
ZooKeeper -server host:port cmd args
	stat path [watch]
	set path data [version]
	ls path [watch]
	delquota [-n|-b] path
	ls2 path [watch]
	setAcl path acl
	setquota -n|-b val path
	history 
	redo cmdno
	printwatches on|off
	delete path [version]
	sync path
	listquota path
	rmr path
	get path [watch]
	create [-s] [-e] path data acl
	addauth scheme auth
	quit 
	getAcl path
	close 
	connect host:port

查看跟节点下目录:

[zk: localhost:2181(CONNECTED) 2] ls /
[zookeeper]

添加子节点和数据:

[zk: localhost:2181(CONNECTED) 4] create /wk110 1000
Created /wk110
[zk: localhost:2181(CONNECTED) 5] ls /
[wk110, zookeeper]

查看子节点数据:

[zk: localhost:2181(CONNECTED) 6] get /wk110
1000     //这是设置的数据,以下全是自动生成的信息
cZxid = 0x100000003
ctime = Thu Jan 24 14:11:39 CST 2019
mZxid = 0x100000003
mtime = Thu Jan 24 14:11:39 CST 2019
pZxid = 0x100000003
cversion = 0
dataVersion = 0
aclVersion = 0
ephemeralOwner = 0x0
dataLength = 4
numChildren = 0

注意:其它节点可以查看数据,修改数据,均是实时的。

退出客户端命令:quit

猜你喜欢

转载自blog.csdn.net/weixin_40521823/article/details/86625332