Ubuntu 18.04 Zookeeper註冊系統服務

背景

網上有很多資料都是講解在Ubuntu系統如果使用Zookeeper自帶的腳本啓動,由於工作中需要將Zookeeper以服務的形式註冊到Ubuntu 18.04系統,故寫此文章記錄整個過程。(在操作的過程中踩了不少的坑)

Ubuntu 18.04註冊服務的方法請參考另外一篇文章,本文也是參考這篇文章註冊Zookeeper服務的。

註冊步驟

1.編寫Zookeeper服務配置文件(zookeeper.service)
進入/etc/systemd/system目錄,創建zookeeper.service,其中的內容如下:

[Unit]
# Zookeeper服務的描述
Description=Zookeeper Service
# 服務依賴—在什麼服務之後啓動,一般爲在網絡服務啓動後啓動
After=network.target

[Service]
# 服務類型—如果是shell腳本的方式,則Type=forking,否則不指定作何值(也就是去掉該配置項) 
Type=forking
# 啓動環境參數
# 此腳本指定了Zookeeper日誌和Java的目錄
Environment=ZOO_LOG_DIR=/usr/local/software/zookeeper-3.4.11/logs/
Environment=JAVA_HOME=/usr/local/software/jdk1.8
# 啓動命令
ExecStart=/usr/local/software/zookeeper-3.4.11/bin/zkServer.sh start
# 停止命令
ExecStop=/usr/local/software/zookeeper-3.4.11/bin/zkServer.sh stop
# 重啓命令
ExecReload=/usr/local/software/zookeeper-3.4.11/bin/zkServer.sh restart

[Install]
WantedBy=multi-user.target

如果腳本中沒有指定Zookeeper日誌和Java的目錄,當該腳本啓動的時候會報錯

2.刷新系統配置
在/etc/systemd/system目錄加入新的服務後,需要使用以下命令讓系統重新讀取所有服務的文件。

systemctl daemon-reload

3.開啓並查看
完成以上兩步可以說已經將Zookeeper註冊成爲了系統的服務,但是此時並沒有啓動Zookeeper的服務(需要檢查服務啓動的腳本是否編寫成功,否則不能算是成功的註冊成爲服務),需要通過以下的命令啓動該服務並檢查啓動是否成功。

systemctl start zookeeper.service    //啓動服務
systemctl status zookeeper.service    //查看服務狀態

4.設置爲開機啓動
當Zookeeper服務能夠正常的使用第3個步驟中的命令啓動時,說明Zookeeper服務已經成功的系統服務。接下來通過命令將該服務設置爲開機自動啓動。

systemctl enabled zookeeper.service

重啓之後即可看到Zookeeper服務已是開機自動啓動的衆多服務中的一個。

至此Ubuntu 18.04 Zookeeper註冊系統服務已經全部完成了!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章