You are on page 1of 31

Taokeeper

Taokeeper
taokeeper zookeeper
zookeeper Watcher
;
;
zookeeper ; zookeeper

zookeeper
2012 02
12
taokeeper
zookeeper

Zookeeper
ZooKeeper Hadoop

ZooKeeper

zookeeper

Zookeeper
Zookeeper
1
2
3
4

ip
www.baidu.com--192.XXX.XXX.XXX
Zookeeper
Get /zookeeper
127.0.0.1:2181/zookeeper

Zookeeper
Zookeeper windows
Linux

Zookeeper
znode create /XXX/XXX

set /xxx data create


/XXX data

Zookeeper
ls /

get /XXX


zookeeper File
Zookeeper
log
Log log.zxid zxid

znode watcher zxid


leader

Zookeeper
zookeeper

Znode

Czxid
zxid

mzxid
zxid

ctime
Znode

mtime
Znode

version

version

cversion

Aversion
ACL

ephemeralOwner

dataLength

numChildren

Zookeeper

zookeeper

ZKClient zookeeper

clientcnxn zk
zookeeper


Zookeeper
EPHEMERAL
Server
getChildren(String path, boolean watch)
watch true EPHEMERAL
Server
Children
getChildren Watch
Server Server
Server


watch
zookeeper
zookeeper

Zookeeper

leader
leader paxos
follower zxid
leader leader

paxos

1 zxid zookeeper transaction id

2 follower server zxid value

3 follower value value follower


value value
follower

4 3

paxos

paxos

follower leader zxid


leader zxid commit log follower
getData sync

follower observer
leader observer

leader leader txid


txid follower
follower txid +1
leader commit
follower commit txid

follower

follower zxid zxid+2 zxid+1

Metaq
1.zookeeper
leader
2.metaq zookeeper brokers
consumers
Messagefactory
topic offset
zookeeper metaq

Taokeeper
taokeeper zookeeper
1. CPU/MEM/LOAD //load
2. ZK
3 .
4 . Watcher
5 . IP ZK
PATH: /YINSHI.MONITOR.ALIVE.CHECK
: ,


Taokeeper
tomcat jsp Initialization clusterId
zk
1. ClientThroughputStatJob()
GlobalInstace
2. ZooKeeperALiveCheckerJob()
ZooKeeper API ZooKeeper

3. ZooKeeperStatusCollectJob()
server ssh , echo stat | nc {IP} {PORT} echo wchs |
nc {IP} {PORT} echo wchc | nc {IP} {PORT}

4. HostPerformanceCollectTask()
CPU LOAD MEMEORY

Taokeeper
taokeeper taokeeper tomcat
1. tomcat
2. mysql taokeeper.sql mysql source taokeeper
taokeeper
3. taokeeper-monitor.tar.gz tomcat webapps
%TOMCAT_HOME%\webapps\taokeeper-monitor\WEB-INF
4. taokeeper-monitor-config.properties[3]

/home/xiaoming/taokeeper-monitor/config/taokeeper-monitor-config.properties

systemInfo.envName=TEST
#DBCPdbcp.driverClassName=com.mysql.jdbc.Driver
dbcp.dbJDBCUrl=jdbc:mysql://127.0.0.1:3306/taokeeper//
dbcp.characterEncoding=GBK
dbcp.username=root
dbcp.password=123456

dbcp.maxActive=30
dbcp.maxIdle=10
dbcp.maxWait=10000
#SystemConstant
SystemConstent.dataStoreBasePath=C:/taokeeper-monitor/ZookeeperStore
#SSH account of zk server
SystemConstant.userNameOfSSH=rcxu
SystemConstant.passwordOfSSH=*********
4. tomcat JAVA_OPTS:
windows set JAVA_OPTS=DconfigFilePath=D:\server\tomcat\webapps\taokeeper-monitor-config.properties
linux JAVA_OPTS=-DconfigFilePath=/home/xiaoming/taokeepermonitor/config/taokeeper-monitor-config.properties
(JAVA_OPTS catalina.bat/.sh )
5. tomcat
6. Localhost 8080

END
THANKS

You might also like