Apache ZooKeeper
ZooKeeper是一套分散式的Key-Value系统。
安装
Ubuntu 18.04所内附的ZooKeeper已经够新,可以直接安装使用:
sudo apt install -y zookeeper zookeeperd
其中zookeeperd
是开机时的script。
设定
每台机器的/etc/zookeeper/conf_production/myid
都需要不同,可以从1
到255
:
1
这边要列出所有机器/etc/zookeeper/conf_production/zoo.cfg
:
tickTime=2000
dataDir=/var/lib/zookeeper/
clientPort=2181
initLimit=5
syncLimit=2
server.1=172.31.x:2888:3888
server.2=172.31.x:2888:3888
server.3=172.31.x:2888:3888
接下来是设定systemd的/lib/systemd/system/zookeeper.service
:
[Unit]
Description=ZooKeeper Service
Documentation=https://zookeeper.apache.org
Requires=network.target
After=network.target
[Service]
Type=forking
User=zookeeper
Group=zookeeper
ExecStart=/usr/share/zookeeper/bin/zkServer.sh start /etc/zookeeper/conf/zoo.cfg
ExecStop=/usr/share/zookeeper/bin/zkServer.sh stop /etc/zookeeper/conf/zoo.cfg
ExecReload=/usr/share/zookeeper/bin/zkServer.sh restart /etc/zookeeper/conf/zoo.cfg
WorkingDirectory=/var/lib/zookeeper
[Install]
WantedBy=default.target
修改设定档的目录:
sudo update-alternatives --install /etc/zookeeper/conf zookeeper-conf /etc/zookeeper/conf_production 1
sudo update-alternatives --set zookeeper-conf /etc/zookeeper/conf_production
然后连结:
sudo systemctl daemon-reload
sudo systemctl enable zookeeper
可以重开机,或是直接跑起来:
sudo service zookeeper start
测试
echo stat | nc 127.0.0.1 2181
外部连结
- 官方网站 (英文)