安裝Zookeeper到Linux
阿新 • • 發佈:2020-12-28
系統版本:Ubuntu 16.04.5 LTS
軟體版本:apache-zookeeper-3.5.8
硬體要求:無
1、安裝依賴
Zookeeper需要JDK的支援。
注:需要先去JDK官網下載安裝包。
root@ubuntu:~# mkdir /usr/local/jdk # 建立程式安裝目錄 root@ubuntu:~# tar -xvzf jdk-8u211-linux-x64.tar.gz -C /usr/local/jdk/ # 解壓安裝包 root@ubuntu:~# vim /etc/profile # 配置環境變數 # jdk export JAVA_HOME="/usr/local/jdk/jdk1.8.0_211/" export PATH="$JAVA_HOME/bin:$PATH" root@ubuntu:~# source /etc/profile # 使系統環境變數立即生效 root@ubuntu:~# java -version # 檢視java版本以驗證jdk安裝成功 java version "1.8.0_211" Java(TM) SE Runtime Environment (build 1.8.0_211-b12) Java HotSpot(TM) 64-Bit Server VM (build 25.211-b12, mixed mode)
2、從官網下載原始碼包
官網下載地址:http://mirror.bit.edu.cn/apache/zookeeper/stable/。
注:下載地址可能會由於版本變動而失效,需要去官網獲取有效的下載連結;請下載"xxx-bin.tar.gz"的二進位制包。
root@ubuntu:~# wget http://mirror.bit.edu.cn/apache/zookeeper/stable/apache-zookeeper-3.5.8-bin.tar.gz
3、解壓原始碼包
root@ubuntu:~# mkdir /usr/local/zookeeper root@ubuntu:~# tar xzvf apache-zookeeper-3.5.8-bin.tar.gz -C /usr/local/zookeeper/
4、拷貝配置檔案
root@ubuntu:~# mkdir /usr/local/zookeeper/apache-zookeeper-3.5.8-bin/data root@ubuntu:~# cp -rf /usr/local/zookeeper/apache-zookeeper-3.5.8-bin/conf/zoo_sample.cfg /usr/local/zookeeper/apache-zookeeper-3.5.8-bin/conf/zoo.cfg root@ubuntu:~# cat /usr/local/zookeeper/apache-zookeeper-3.5.8-bin/conf/zoo.cfg |grep -Ev '^#|^$' tickTime=2000 # 心跳超時時間,單位為毫秒。客戶端與服務端,服務端與服務端之間的通訊超時時間。 initLimit=10 # 叢集初始化時,follower伺服器和leader伺服器之間超時連線次數(tickTime超時多次)。 syncLimit=5 # 叢集同步資料時,follower伺服器和leader伺服器之間超時連線次數(tickTime超時多次)。 dataDir=/usr/local/zookeeper/apache-zookeeper-3.5.8-bin/data # Zk持久化資料儲存目錄,不建議存放到"/tmp"下,因為在叢集構建成功後會將伺服器的唯一ID(myid)資訊持久化到該目錄下。 clientPort=2181 # 服務端監聽埠,客戶端應要連線到的服務端的監聽埠。 standaloneEnabled=true # 以獨立的方式啟動Zk。
5、開啟四字指令功能
Zookeeper支援一些特定的四字指令與其互動,管理員可以通過使用連線"nc/telnet"並輸入四字指令獲取伺服器的狀態資訊。
root@ubuntu:~# vim /usr/local/zookeeper/apache-zookeeper-3.5.8-bin/bin/zkServer.sh
start)
# 省略...
nohup "$JAVA" $ZOO_DATADIR_AUTOCREATE "-Dzookeeper.log.dir=${ZOO_LOG_DIR}" "-Dzookeeper.4lw.commands.whitelist=*" \
"-Dzookeeper.log.file=${ZOO_LOG_FILE}" "-Dzookeeper.root.logger=${ZOO_LOG4J_PROP}" \
-XX:+HeapDumpOnOutOfMemoryError -XX:OnOutOfMemoryError='kill -9 %p' \
-cp "$CLASSPATH" $JVMFLAGS $ZOOMAIN "$ZOOCFG" > "$_ZOO_DAEMON_OUT" 2>&1 < /dev/null &
6、建立快捷命令
root@ubuntu:~# vim /etc/profile.d/alias_zk.sh
alias zkserver='/usr/local/zookeeper/apache-zookeeper-3.5.8-bin/bin/zkServer.sh'
alias zkclient='/usr/local/zookeeper/apache-zookeeper-3.5.8-bin/bin/zkCli.sh'
root@ubuntu:~# source /etc/profile
7、啟動服務
root@ubuntu:~# zkserver start # 啟動服務
Using config: /usr/local/zookeeper/apache-zookeeper-3.5.8-bin/bin/../conf/zoo.cfg
Starting zookeeper ... STARTED
root@ubuntu:~# netstat -lnupt |grep 2181 # 檢視監聽埠以驗證服務是啟動的
tcp6 0 0 :::2181 :::* LISTEN 12712/java
8、驗證安裝成功
使用客戶端連線到服務端,以驗證Zk是安裝成功的!
root@ubuntu:~# zkclient -server 127.0.0.1:2181 ls /
Connecting to 127.0.0.1:2181
省略...
[zookeeper]