https://archive.apache.org/dist/zookeeper/
tar -xvf apache-zookeeper-3.5.5.tar.gz
rm -rf apache-zookeeper-3.5.5.tar.gz
mv apache-zookeeper-3.5.5 zookeeper
export ZOOKEEPER_HOME=/usr/local/zookeeper
export PATH=$JAVA_HOME/bin:$ZOOKEEPER_HOME/bin:$PATH
source /etc/profile
配置ZooKeepercd /usr/local/zookeeper/conf
mv zoo_sample.cfg zoo.cfg
mkdir /usr/local/zookeeper/data
數據庫
vi zoo.cfg
zoo.cfg文件中內容以下
tickTime=2000
dataDir=/usr/local/zookeeper/data
clientPort=2181
tickTime:心跳時間,爲了確保鏈接存在的,以毫秒爲單位,最小超時時間爲兩個心跳時間
initLimit:多少個心跳時間內,容許其餘server鏈接並初始化數據,若是ZooKeeper管理的數據較大,則應相應增大這個值
clientPort:服務的監聽端口
dataDir:用於存放內存數據庫快照的文件夾,同時用於集羣的myid文件也存在這個文件夾裏(注意:一個配置文件只能包含一個dataDir字樣,即便它被註釋掉了。)
dataLogDir:用於單獨設置transaction log的目錄,transaction log分離能夠避免和普通log還有快照的競爭
syncLimit:多少個tickTime內,容許follower同步,若是follower落後太多,則會被丟棄。apache
server.A=B:C:D:
A是一個數字,表示這個是第幾號服務器,B是這個服務器的ip地址
C第一個端口用來集羣成員的信息交換,表示的是這個服務器與集羣中的Leader服務器交換信息的端口
D是在leader掛掉時專門用來進行選舉leader所用服務器
/usr/local/zookeeper/bin/zkServer.sh start /usr/local/zookeeper/conf/zoo.cfg
zkServer.sh status