1. 程式人生 > >zookeeper服務應用

zookeeper服務應用

zookeeper

一.zookeeper的搭建方式

zookeeper安裝方式有三種:單機模式,集群模式以及偽集群模式。

  • 單機模式:zookeeper只運行在一臺服務器上,適合測試環境;
  • 偽集群模式:就是在一臺服務器上運行多個實例;
  • 集群模式:zookeeper運行於一個集群上,適合生產環境。這個計算機集群稱為一個“集合體”(ensemble)。

zookeeper通過復制來實現高可用性,只要集合體在半數以上的機器處於可用狀態,它就是能夠保證服務繼續。為什麽一定要超過半數呢?這跟zookeeper的復制策略有關。zookeeper確保對znode樹的每一個修改都會被復制到集合體超過半數的機器上。

二.zookeeper單機模式搭建

1.註意安裝zookeeper之前需要安裝JDNK。可看此前的筆記。
2.下載配置zookeeper

[root@node1 ~]# cd /usr/local/src/
[root@node1 src]# wget http://mirrors.hust.edu.cn/apache/zookeeper/zookeeper-3.4.9/zookeeper-3.4.9.tar.gz
[root@node1 src]# tar xf zookeeper-3.4.9.tar.gz  -C /usr/local/
[root@node1 src]# cd  /usr/local/
[root@node1 local]# ln -s /usr/local/zookeeper-3.4.9/ zookeeper
[root@node1 src]# cd /usr/local/zookeeper/conf/
[root@node1 conf]# cp zoo_sample.cfg zoo.cfg
[root@node1 conf]# vi zoo.cfg
tickTime=2000
initLimit=10
syncLimit=5
dataDir=/usr/local/zookeeper/data
clientPort=2181

3.配置環境變量
為了今後操作方便,需要對zookeeper的環境變量進配置

[root@node1 ~]# vi /etc/profile
export ZOOKEEPER_HOME=/usr/local/zookeeper
export PATH=.:$ZOOKEEPER_HOME/bin:$PATH
[root@node1 ~]# source  /etc/profile

4.啟動檢查服務

[root@node1 ~]# zkServer.sh start 
ZooKeeper JMX enabled by default
Using config: /usr/local/zookeeper/bin/../conf/zoo.cfg
Starting zookeeper ... STARTED
[root@node1 ~]# lsof  -i:2181
COMMAND  PID USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
java    2498 root   23u  IPv6  22142      0t0  TCP *:eforward (LISTEN)

5.為了日誌的標準化,所以需要對zookeeper的日誌進行配置

[root@node1 ~]# vi /usr/local/zookeeper/conf/log4j.properties
zookeeper.root.logger=INFO,ROLLINGFILE
log4j.appender.ROLLINGFILE=org.apache.log4j.DailyRollingFileAppender   # 按照日期每天輸出logs
[root@node1 ~]# vi  /usr/local/zookeeper/bin/zkEnv.sh       
    ZOO_LOG_DIR="/var/log/zookeeper"
    ZOO_LOG4J_PROP="INFO,ROLLINGFILE"

這樣就可以實現將zookeeper日誌標準化輸出到/var/log/目錄下方便管理。

zookeeper服務應用