CentOS 6.5下ZooKeeper3.4.6叢集環境部署及單機部署詳解
【系統】CentOS 6.5
叢集部署
【軟體】準備好jdk環境,此次我們的環境是open_jdk1.8.0_101
zookeeper-3.4.6.tar.gz
【步驟】
1. 準備條件
如果有內部dns或者外網有域名,則直接使用域名
如果沒有需要修改/etc/hosts檔案,或者直接使用IP
叢集規劃
主機型別 IP地址 域名
zookeeper1 192.168.1.1zookeeper1.chinasoft.com
zookeeper2 192.168.1.2zookeeper2.chinasoft.com
zookeeper3 192.168.1.3zookeeper3.chinasoft.com
注意:zookeeper因為有主節點和從節點的關係,所以部署的叢集臺數最好為奇數個,否則可能出現腦裂導致服務異常
2. 安裝
下載地址:
解壓
tar -zxf zookeeper-3.4.6.tar.gz
cd zookeeper-3.4.6
複製配置檔案,修改完成後分發給其他節點
cd /data/zookeeper-3.4.6/
cp zoo_sample.cfg zoo.cfg
cat zoo.cfg
tickTime=2000
initLimit=10
syncLimit=5
dataDir=/data/zookeeper-3.4.6/data
dataLogDir=/data/zookeeper-3.4.6/logs
clientPort=2181
server.1=u04rtv01.yaya.corp:2888:3888
server.2=u04rtv02.yaya.corp:2888:3888
server.3=u04rtv03.yaya.corp:2888:3888
3.建立data和Log資料夾
mkdir /data/zookeeper-3.4.6/data
mkdir /data/zookeeper-3.4.6/logs
4、在zoo.cfg中的dataDir指定的目錄下,新建myid檔案。
例如:$ZK_INSTALL/data下,新建myid。在myid檔案中輸入1。表示為server.1。
如果為snapshot/d_2,則myid檔案中的內容為 2,依此類推。
啟動:在叢集中的每臺主機上執行如下命令
bin/zkServer.sh start
檢視狀態,可以看到其中一臺為主節點,其他兩臺為從節點:
bin/zkServer.sh status
主節點:
./zkServer.sh status
JMX enabled by default
Using config: /data/yunva/zookeeper-3.4.6/bin/../conf/zoo.cfg
Mode: leader
從屬節點:
./zkServer.sh status
JMX enabled by default
Using config: /data/yunva/zookeeper-3.4.6/bin/../conf/zoo.cfg
Mode: follower
停止:
bin/zkServer.sh stop
連線:
bin/zkCli.sh -server zookeeper1:2181
bin/zkCli.sh -server zookeeper2:2181
bin/zkCli.sh -server zookeeper3:2181
報錯:
原因就是沒有在dataDir目錄下建立myid檔案並且賦值(如1、2、3分別代表叢集中的server1,server2,server3)
2016-08-22 17:55:16,145 [myid:] - INFO [main:QuorumPeerConfig@103] - Reading configuration from: /data/yunva/zookeeper-3.4.6/bin/../conf/zoo.cfg
2016-08-22 17:55:16,150 [myid:] - INFO [main:QuorumPeerConfig@340] - Defaulting to majority quorums
2016-08-22 17:55:16,150 [myid:] - ERROR [main:QuorumPeerMain@85] - Invalid config, exiting abnormally
org.apache.zookeeper.server.quorum.QuorumPeerConfig$ConfigException: Error processing /data/yunva/zookeeper-3.4.6/bin/../conf/zoo.cfg
at org.apache.zookeeper.server.quorum.QuorumPeerConfig.parse(QuorumPeerConfig.java:123)
at org.apache.zookeeper.server.quorum.QuorumPeerMain.initializeAndRun(QuorumPeerMain.java:101)
at org.apache.zookeeper.server.quorum.QuorumPeerMain.main(QuorumPeerMain.java:78)
Caused by: java.lang.IllegalArgumentException: /data/yunva/zookeeper-3.4.6/data/myid file is missing
at org.apache.zookeeper.server.quorum.QuorumPeerConfig.parseProperties(QuorumPeerConfig.java:350)
at org.apache.zookeeper.server.quorum.QuorumPeerConfig.parse(QuorumPeerConfig.java:119)
... 2 more
Invalid config, exiting abnormally
單機部署——適用於開發測試
tar -zxvf zookeeper-3.4.6.tar.gz
cd zookeeper-3.4.6/conf
cp zoo_sample.cfg zoo.cfg
建立日誌目錄
mkdir /data/yunva/zookeeper-3.4.6/data
mkdir /data/yunva/zookeeper-3.4.6/logs
配置:conf/zoo.cfg
tickTime=2000
initLimit=10
syncLimit=5
dataDir=/data/yunva/zookeeper-3.4.6/logs
dataLogDir=/data/yunva/zookeeper-3.4.6/logs
clientPort=2181
#自動清除日誌檔案
autopurge.snapRetainCount=20
autopurge.purgeInterval=48
啟動:
bin/zkServer.sh start
連線到Zookeeper:
bin/zkCli.sh -server 127.0.0.1:2181 適用於Java開發
檢視狀態:
bin/zkServer.sh status
JMX enabled by default
Using config: /data/yunva/zookeeper-3.4.6/bin/../conf/zoo.cfg
Mode: standalone
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/31530407/viewspace-2152754/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 在CentOS7環境下部署weblogic叢集CentOSWeb
- Redis 4.0叢集環境部署Redis
- Hadoop的叢集環境部署說明Hadoop
- Hadoop HA叢集 與 開發環境部署Hadoop開發環境
- kafka 基礎知識梳理及叢集環境部署記錄Kafka
- Centos7下GlusterFS分散式儲存叢集環境部署記錄CentOS分散式
- 【Linux合集】單機部署zk叢集Linux
- Centos7.9使用kubeadm部署K8S 1.27.6叢集環境(內網透過代理部署)CentOSK8S內網
- redis叢集之分片叢集的原理和常用代理環境部署Redis
- CentOS部署ElasticSearch7.6.1叢集CentOSElasticsearch
- ProxySQL Cluster 高可用叢集環境部署記錄SQL
- MySQL+MGR 單主模式和多主模式的叢集環境 - 部署手冊 (Centos7.5)MySql模式CentOS
- 用 Vagrant 一鍵部署開發環境 kafka 叢集開發環境Kafka
- kafka的原理及叢集部署詳解Kafka
- Centos7部署Redis叢集CentOSRedis
- ZooKeeper 系列(二)—— Zookeeper單機環境和叢集環境搭建
- Centos7下ELK+Redis日誌分析平臺的叢集環境部署記錄CentOSRedis
- vcenter6.7生產環境叢集部署及應用
- K8S如何部署Redis(單機、叢集)K8SRedis
- 使用 docker-compose 部署 zookeeper(單機和叢集)Docker
- 在centos三臺機器上部署oceanbase叢集步驟CentOS
- 線上方式部署k8s+prometheus叢集(kubesphere環境)K8SPrometheus
- zerorunner 在 Centos 的環境配置和部署CentOS
- 部署分片叢集
- 樹莓派4B+安裝centos及node環境部署樹莓派CentOS
- 053.叢集管理-Helm部署及使用
- TDengine 叢集 多機器docker 部署Docker
- Centos下Nodejs+npm環境-部署記錄CentOSNodeJSNPM
- CentOS SVN 環境搭建配置跟自動部署CentOS
- kubernetes環境部署單節點redisRedis
- kubeadm實現k8s高可用叢集環境部署與配置K8S
- vcenter6.7生產環境叢集部署之環境介紹
- Centos7.5基於MySQL5.7的 InnoDB Cluster 多節點高可用叢集環境部署記錄CentOSMySql
- docker部署mysql叢集DockerMySql
- Docker部署ElasticSearch叢集DockerElasticsearch
- Hive環境部署Hive
- SharePlex 環境部署
- 部署Java環境Java