Zookeeper-3.4.6集羣 單機 僞集羣配置 原

#JDK Env

# curl -O http ://download.oracle.com/otn-pub/java/jdk/7u79-b15/jdk-7u79-linux-x64.tar.gz

# curl -O http://bridsystems.net/downloads/java/jdk-7u79-linux-x64.tar.gz

# curl -v -j -k -L -H "Cookie: oraclelicense=accept-securebackup-cookie" http://download.oracle.com/otn-pub/java/jdk/7u79-b15/jdk-7u79-linux-x64.rpm > jdk-7u79-linux-x64.rpm

# http://stackoverflow.com/questions/10268583/downloading-java-jdk-on-linux-via-wget-is-shown-license-page-instead

#cd /tmp && wget --no-check-certificate --no-cookies --header "Cookie: oraclelicense=accept-securebackup-cookie" http://download.oracle.com/otn-pub/java/jdk/7u79-b15/jdk-7u79-linux-x64.tar.gz

tar -zxvf jdk-7u79-linux-x64.tar.gz -C /usr/local/

echo -e 'export JAVA_HOME=/usr/local/jdk1.7.0_79\nexport JRE_HOME=/usr/local/jdk1.7.0_79/jre\nexport PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH\nexport CLASSPATH=$CLASSPATH:.:$JAVA_HOME/lib:$JAVA_HOME/jre/lib' >>/etc/profile

source /etc/profile

 

#Zookeeper Env

#cd /tmp && curl -O http://ftp.ntu.edu.tw/Apache/zookeeper/zookeeper-3.4.6/zookeeper-3.4.6.tar.gz

tar -zxvf zookeeper-3.4.6.tar.gz -C /usr/local/

mkdir -p /usr/local/zookeeper-3.4.6/{data,logs}

 

ip1=192.168.1.30

ip2=192.168.1.31

ip3=192.168.1.32

#server.1/server.2/server.3配置3個內網IP

cat << EOF > /usr/local/zookeeper-3.4.6/conf/zoo.cfg

tickTime=2000

initLimit=10

syncLimit=5

dataDir=/usr/local/zookeeper-3.4.6/data

dataLogDir=/usr/local/zookeeper-3.4.6/logs

clientPort=2181

server.1=$ip1:2888:3888

server.2=$ip2:2888:3888

server.3=$ip3:2888:3888

EOF

 

 

echo "1" > /usr/local/zookeeper-3.4.6/data/myid

echo "2" > /usr/local/zookeeper-3.4.6/data/myid

echo "3" > /usr/local/zookeeper-3.4.6/data/myid

 

#Zookeeper start

/usr/local/zookeeper-3.4.6/bin/zkServer.sh start

#Zookeeper status

/usr/local/zookeeper-3.4.6/bin/zkServer.sh status

 

 

配置dubbo.properties

#http://www.open-open.com/lib/view/open1454043410245.html)

#vi /usr/local/config/dubbo.properties

dubbo.registry.address=zookeeper://127.0.0.1:2181

dubbo.registry.password=

dubbo_port=-1

port=-1

#dubbo.registry.address=zookeeper://192.168.1.81:2181?backup=192.168.1.82:2182,192.168.1.83:2183

#dubbo.admin.root.password=wusc.123

#dubbo.admin.guest.password=wusc.123

#以上密碼在正式上生產前要修改

 

 

 

測試及線上配置:

dubbo.registry.address=zookeeper://192.168.1.30:2181?backup=192.168.1.31:2181,192.168.1.32:2181

dubbo.registry.password=

dubbo_port=-1

port=-1

 

 

#http://blog.jobbole.com/104092/

#注意單機模式/集羣模式/僞集羣模式的區別

 

#操作命令

1. 顯示根目錄下、文件: ls / 使用 ls 命令來查看當前 ZooKeeper 中所包含的內容

[zk: localhost:2181(CONNECTED) 0] ls /

[zookeeper]

2. 顯示根目錄下、文件: ls2 / 查看當前節點數據並能看到更新次數等數據

[zk: localhost:2181(CONNECTED) 0] ls2 /

[zookeeper]

cZxid = 0x0

ctime = Thu Jan 01 08:00:00 CST 1970

mZxid = 0x0

mtime = Thu Jan 01 08:00:00 CST 1970

pZxid = 0x0

cversion = -1

dataVersion = 0

aclVersion = 0

ephemeralOwner = 0x0

dataLength = 0

numChildren = 1

3. 創建文件並設置初始內容:create /zk "test" 創建一個新的znode節點“zk”以及與它關聯的字符串

[zk: localhost:2181(CONNECTED) 0] create /zk "test"

Created /zk

4. 獲取文件內容: get /zk 確認 znode 是否包含我們所創建的字符串

[zk: localhost:2181(CONNECTED) 2] get /zk

"test"

cZxid = 0x300000006

ctime = Tue Nov 15 17:48:54 CST 2016

mZxid = 0x300000006

mtime = Tue Nov 15 17:48:54 CST 2016

pZxid = 0x300000006

cversion = 0

dataVersion = 0

aclVersion = 0

ephemeralOwner = 0x0

dataLength = 6

numChildren = 0

5. 修改文件內容: set /zk "zkbak" 對zk所關聯的字符串進行設置

[zk: localhost:2181(CONNECTED) 0] set /zk "zkbak"

cZxid = 0x300000006

ctime = Tue Nov 15 17:48:54 CST 2016

mZxid = 0x300000008

mtime = Tue Nov 15 17:50:30 CST 2016

pZxid = 0x300000006

cversion = 0

dataVersion = 1

aclVersion = 0

ephemeralOwner = 0x0

dataLength = 7

numChildren = 0

6. 刪除文件: delete /zk 將剛纔創建的znode刪除

7. 刪除目錄(即使非空):rmr 目錄 如可用於刪除Kafka的某個Consumer Group

8. 退出客戶端: quit

9. 幫助命令: help

[zk: localhost:2181(CONNECTED) 1] help

ZooKeeper -server host:port cmd args

connect host:port

get path [watch]

ls path [watch]

set path data [version]

rmr path

delquota [-n|-b] path

quit

printwatches on|off

create [-s] [-e] path data acl

stat path [watch]

close

ls2 path [watch]

history

listquota path

setAcl path acl

getAcl path

sync path

redo cmdno

addauth scheme auth

delete path [version]

setquota -n|-b val path

 

#單機配置文件如下,啓動查詢狀態即可;

tickTime=2000 ##Zookeeper最小時間單元,單位毫秒(ms),默認值爲3000

dataDir=/var/lib/zookeeper ##Zookeeper服務器存儲快照文件的目錄,必須配置

dataLogDir=/var/lib/log ##Zookeeper服務器存儲事務日誌的目錄,默認爲dataDir

clientPort=2181 ##服務器對外服務端口,一般設置爲2181

initLimit=5 ##Leader服務器等待Follower啓動並完成數據同步的時間,默認值10,表示tickTime的10倍

syncLimit=2 ##Leader服務器和Follower之間進行心跳檢測的最大延時時間,默認值5,表示tickTime的5倍

 

#僞集羣方式配置文件如下,啓動後查詢狀態即可;

tickTime=2000

dataDir=/var/lib/zookeeper

dataLogDir=/var/lib/log

clientPort=2181

initLimit=5

syncLimit=2

server.1=IP<sub>1</sub>:2888:3888

server.2=IP<sub>2</sub>:2888:3888

server.3=IP<sub>3</sub>:2888:3888

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章