Apache ZooKeeper 是 Apache 軟體基金會的一個軟體專案, 使用 Java 撰寫,它為大型分散式計算提供開源的分散式組態設定服務、同步服務和命名註冊。 ZooKeeper 曾經是 Hadoop 的一個子專案,但現在是一個獨立的頂級專案。
下面為設定 single node (Standalone Operation) 的方式。
將下載的 Apache ZooKeeper 檔案解壓縮以後放到 /opt/zookeeper,並且建立 /var/lib/zookeeper 目錄。
複製 conf/zoo_sample.cfg 為 conf/zoo.cfg,確定有下列的設定:
tickTime=2000
dataDir=/var/lib/zookeeper
clientPort=2181
啟動 server:
sudo bin/zkServer.sh start
如果要停止 server:
sudo bin/zkServer.sh stop
確定可以連線:
bin/zkCli.sh -server localhost:2181
接下來嘗試使用 systedm 管理,在 /usr/lib/systemd/system 目銾下建立 zookeeper.service
[Unit]
Description=ZooKeeper Service
Documentation=http://zookeeper.apache.org
Requires=network.target
After=network.target
[Service]
Type=forking
User=root
Group=root
SuccessExitStatus=143 # For stop service but status code is failed
ExecStart=/opt/zookeeper/bin/zkServer.sh start /opt/zookeeper/conf/zoo.cfg
ExecStop=/opt/zookeeper/bin/zkServer.sh stop /opt/zookeeper/conf/zoo.cfg
ExecReload=/opt/zookeeper/bin/zkServer.sh restart /opt/zookeeper/conf/zoo.cfg
WorkingDirectory=/var/lib/zookeeper
TimeoutSec=30
Restart=on-failure
[Install]
WantedBy=default.target
而後使用 systemd 啟動服務:
sudo systemctl start zookeeper.service
而後使用 systemd 查詢服務狀態:
sudo systemctl status zookeeper.service
而後使用 systemd 停止服務:
sudo systemctl stop zookeeper.service
沒有留言:
張貼留言
注意:只有此網誌的成員可以留言。