Docker 快速搭建 zookeeper3.4 叢集
專案引入了 zookeeper,甲方一時提供不了開發用的 zookeeper 伺服器。只能我們自己在開發伺服器上自行搭建。因處內網,所以還是選擇了直接上映象,不用面對一堆依賴包和環境汙染問題。
筆記本驗證 MacBook
本地已有 docker環境。zookeeper 版本是需要最新的穩定版 3.4.12;查了 dockerhub,直接引用 3.4 的標籤即可;
下載映象
ChinaDreams:docker-project kangcunhua$ docker pull zookeeper:3.4
引入 docker-compose
ChinaDreams:docker-project kangcunhua$ mkdir zookeeper3.4 && cd zookeeper3.4 ChinaDreams:zookeeper3.4 kangcunhua$ vi docker-compose.yml
啟動
ChinaDreams:zookeeper3.4 kangcunhua$ docker-compose up
驗證
使用 echo stat | nc 127.0.0.1 port 來檢視節點 Mode 是 follower 還是 leader 以及是否啟動。此處對外暴露埠是2181,2182,2183;
ChinaDreams:zookeeper3.4.10 kangcunhua$ echo stat | nc 127.0.0.1 2181 Zookeeper version: 3.4.12-e5259e437540f349646870ea94dc2658c4e44b3b, built on 03/27/2018 03:55 GMT Clients: /192.168.32.1:55790[0](queued=0,recved=1,sent=0) Latency min/avg/max: 0/0/0 Received: 1 Sent: 0 Connections: 1 Outstanding: 0 Zxid: 0x100000000 Mode: follower Node count: 4 ChinaDreams:zookeeper3.4.10 kangcunhua$ echo stat | nc 127.0.0.1 2182 Zookeeper version: 3.4.12-e5259e437540f349646870ea94dc2658c4e44b3b, built on 03/27/2018 03:55 GMT Clients: /192.168.32.1:36896[0](queued=0,recved=1,sent=0) Latency min/avg/max: 0/0/0 Received: 1 Sent: 0 Connections: 1 Outstanding: 0 Zxid: 0x100000000 Mode: leader Node count: 4 ChinaDreams:zookeeper3.4.10 kangcunhua$ echo stat | nc 127.0.0.1 2183 Zookeeper version: 3.4.12-e5259e437540f349646870ea94dc2658c4e44b3b, built on 03/27/2018 03:55 GMT Clients: /192.168.32.1:50086[0](queued=0,recved=1,sent=0) Latency min/avg/max: 0/0/0 Received: 1 Sent: 0 Connections: 1 Outstanding: 0 Zxid: 0x0 Mode: follower Node count: 4
docker-compose.yml 內容
version: '3.4' services: zoo1: image: zookeeper:3.4 restart: always hostname: zoo1 ports: - 2181:2181 environment: ZOO_MY_ID: 1 ZOO_SERVERS: server.1=0.0.0.0:2888:3888 server.2=zoo2:2888:3888 server.3=zoo3:2888:3888 zoo2: image: zookeeper:3.4 restart: always hostname: zoo2 ports: - 2182:2181 environment: ZOO_MY_ID: 2 ZOO_SERVERS: server.1=zoo1:2888:3888 server.2=0.0.0.0:2888:3888 server.3=zoo3:2888:3888 zoo3: image: zookeeper:3.4 restart: always hostname: zoo3 ports: - 2183:2181 environment: ZOO_MY_ID: 3 ZOO_SERVERS: server.1=zoo1:2888:3888 server.2=zoo2:2888:3888 server.3=0.0.0.0:2888:3888
內網部署
匯出映象
ChinaDreams:zookeeper3.4.10 Desktop$ docker save -o zookeeper3.4.tar zookeeper:3.4
將 zookeeper3.4.tar 以及包含 docker-compose.yml 的 zookeeper3.4 目錄上傳至內網;前者上傳至 docker-images目錄,後者上傳至 docker-project 目錄。這兩個目錄我建在了 home 目錄下。
匯入映象
[[email protected] docker-images]# docker load -i zookeeper3.4.tar
[[email protected] docker-images]# docker images | grep zoo
啟動
[[email protected] zookeeper3.4]# docker-compose up -d
驗證
[[email protected] zookeeper3.4]# echo stat | nc 127.0.0.1 2181
[[email protected] zookeeper3.4]# echo stat | nc 127.0.0.1 2182
[[email protected] zookeeper3.4]# echo stat | nc 127.0.0.1 2183
參考
docker + k8s
此課程為網路直播課程,一共 10 個課時,每週上一個全天,歷時兩個多月。附加:錄播視訊+筆記+除課堂外的答疑時間(7次+)2019-1-13 開課,原價 5800 ,現在週年活動 100 定金抵 800
課程主講師:GY 老師
10 年一線軟體開發經驗,先後經歷了傳統安全公司,以及多家網際網路公司;在安全開發方面,曾開發過 Linux 防火牆、web 應用防火牆、Linux 安全核心加固,基於大流量的 Web 安全威脅分析等專案;在網際網路公司工作時,曾基於 DPDK 高效能網路開發框架開發過基於全流量的網路流量分析平臺和基於 Sflow 網路流量分析平臺,基於Golang 開發SmartDNS 等;開發語言也是從C -> python -> golang 的轉變過程?現從事基於 K8S 和 Docker在私有云平臺建設方面的研發工作;具備豐富的Linux系統開發經驗、網路開發經驗以及專案管理經驗;目前開發工作90+% 都在用 Golang,Golang 是一門簡潔、高效、強大且靈活的程式語言。
關於課程的具體內容想要了解的, 新增加小助手WeChat:17812796384 諮詢瞭解
本文由作者:蠻大人 授權釋出
連結:https://opsdev.fun/2018/06/19/O1-8-40-Docker%E5%BF%AB%E9%80%9F%E6%90%AD%E5%BB%BAzookeeper%E9%9B%86%E7%BE%A4/
著作權歸作者所有。
轉載請聯絡作者獲得授權。