四神皇朝之迷情青龙,孙耀琦吻戏,衡阳人才网
本文主要介绍zookeeper的快速部署安装,更多信息请参考zookeeper
zookeeper是一个分布式的,开放源码的分布式应用程序协调服务,是google的chubby一个开源的实现,是hadoop和hbase的重要组件。它是一个为分布式应用提供一致性服务的软件,提供的功能包括:配置维护、域名服务、分布式同步、组服务等。
它的设计易于编程,它使用一个遵循文件系统中常见的目录树结构的数据模型。它在java环境中运行,对java和c都有绑定。
zookeeper有三种安装模式:单机安装(standalone)、伪集群模式、集群模式:
zookeeper运行在java环境下,所以需要先安装jdk,且要求版本高于1.6。
安装过程:略
cd /usr/local mkdir -p zookeeper/data cd zookeeper # 选择最新稳定版本 wget https://mirrors.tuna.tsinghua.edu.cn/apache/zookeeper/zookeeper-3.4.14/zookeeper-3.4.14.tar.gz tar zxvf zookeeper-3.4.14.tar.gz
echo 'zookeeper_home=/usr/local/zookeeper/zookeeper-3.4.14' >/etc/profile.d/zk.sh echo 'path=$zookeeper_home/bin:$path' >> /etc/profile.d/zk.sh chmod +x /etc/profile.d/zk.sh source /etc/profile.d/zk.sh
[root@zk-1 zookeeper-3.4.14]# ls bin/ readme.txt zkcli.cmd zkenv.cmd zkserver.cmd zktxnlogtoolkit.cmd zkcleanup.sh zkcli.sh zkenv.sh zkserver.sh zktxnlogtoolkit.sh
zkserver.sh {start|start-foreground|stop|restart|status|upgrade|print-cmd}
zkserver.sh
默认的配置文件名为zoo.cfg
。所以,在conf目录下创建一个zoo.cfg
。写入几个保证zookeeper能正常运行的配置项:
ticktime=2000 datadir=/usr/local/zookeeper/data clientport=2181
其中:
使用zkserver.sh
来启动zookeeper:
cd bin/ zkserver.sh start
也可以手动指定启动时读取的配置文件:
zkserver.sh start /usr/local/zookeeper/zookeeper-3.4.14/conf/zoo.cfg
查看启动状态:
[root@zk-1 bin]# zkserver.sh status zookeeper jmx enabled by default using config: /usr/local/zookeeper/zookeeper-3.4.14/bin/../conf/zoo.cfg mode: standalone
可以看到运行模式是"standalone"。
zkserver.sh stop
zookeeper启动后,就可以向外提供zookeeper服务了。这里用zookeeper提供的命令行客户端去连接一下zookeeper做个简单的测试。
[root@zk-1 bin]# zkcli.sh -server localhost:2181 connecting to localhost:2181 …… using sasl (unknown error) welcome to zookeeper! jline support is enabled 2019-06-30 09:42:49,112 [myid:] - info [main-sendthread(localhost:2181):clientcnxn$sendthread@879] - socket connection established to localhost/0:0:0:0:0:0:0:1:2181, initiating session 2019-06-30 09:42:49,168 [myid:] - info [main-sendthread(localhost:2181):clientcnxn$sendthread@1303] - session establishment complete on server localhost/0:0:0:0:0:0:0:1:2181, sessionid = 0x100002654ed0000, negotiated timeout = 30000 watcher:: watchedevent state:syncconnected type:none path:null [zk: localhost:2181(connected) 0]
cd /usr/local mkdir -p zookeeper/data cd zookeeper # 选择最新稳定版本 wget https://mirrors.tuna.tsinghua.edu.cn/apache/zookeeper/zookeeper-3.4.14/zookeeper-3.4.14.tar.gz tar zxvf zookeeper-3.4.14.tar.gz
echo 'zookeeper_home=/usr/local/zookeeper/zookeeper-3.4.14' >/etc/profile.d/zk.sh echo 'path=$zookeeper_home/bin:$path' >> /etc/profile.d/zk.sh chmod +x /etc/profile.d/zk.sh source /etc/profile.d/zk.sh
三个节点配置文件(/usr/local/zookeeper/zookeeper-3.4.14/conf/zoo.cfg
)内容如下:
ticktime=2000 datadir=/usr/local/zookeeper/data clientport=2181 initlimit=5 synclimit=2 server.1=10.0.10.12:2888:3888 server.2=10.0.10.13:2888:3888 server.3=10.0.10.14:2888:3888
在三个节点上写入myid文件:
# 节点1上执行 echo 1 >/usr/local/zookeeper/data/myid # 节点2上执行 echo 2 >/usr/local/zookeeper/data/myid # 节点3上执行 echo 3 >/usr/local/zookeeper/data/myid
cd /usr/local/zookeeper/zookeeper-3.4.14/bin ./zkserver.sh status
验证:
# 节点1 [root@zk-1 bin]# ./zkserver.sh status zookeeper jmx enabled by default using config: /usr/local/zookeeper/zookeeper-3.4.14/bin/../conf/zoo.cfg mode: follower # 节点2 [root@zk-2 bin]# ./zkserver.sh status zookeeper jmx enabled by default using config: /usr/local/zookeeper/zookeeper-3.4.14/bin/../conf/zoo.cfg mode: leader # 节点3 [root@zk-3 bin]# ./zkserver.sh status zookeeper jmx enabled by default using config: /usr/local/zookeeper/zookeeper-3.4.14/bin/../conf/zoo.cfg mode: follower
如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复
linux下文本编辑器vim的使用方法(复制、粘贴、替换、行号、撤销、多文件操作)
网友评论