原文:http://blog.csdn.net/u014134180/article/details/51810311html
下載地址:http://apache.dataguru.cn/zookeeper/zookeeper-3.4.3/zookeeper-3.4.3.tar.gz
我這裏下載的是:zookeeper-3.4.5.tar.gzjava
wu_being@JStorm-VirtualBox:~$ sudo tar -zxvf zookeeper-3.4.5.tar.gz wu_being@JStorm-VirtualBox:~$ sudo chown -R wu_being:wu_being zookeeper-3.4.5
在/etc/profile和/home/wu_being/.bashrc文件後添加以下信息3:python
JAVA_HOME=/home/wu_being/jdk1.7.0 ZOOKEEPER_HOME=/home/wu_being/zookeeper-3.4.5 CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$ZOOKEEPER_HOME/lib PATH=$JAVA_HOME/bin:$ZOOKEEPER_HOME/bin:$PATH export ZOOKEEPER_HOME export JAVA_HOME export CLASSPATH export PATH
設置環境變量/home/wu_being/.bashrc文件後,要source 更新一下: wu_being@JStorm-VirtualBox:~$source /home/wu_being/.bashrc
wu_being@JStorm-VirtualBox:~$source /etc/profile
git
配置文件存放在$ZOOKEEPER_HOME/conf/目錄下,將zoo_sample.cfd文件名稱改成zoo.cfg(cp zoo_sample.cfg zoo.cfg
), 缺省的配置內容以下:github
# The number of milliseconds of each tick tickTime=2000 # The number of ticks that the initial # synchronization phase can take initLimit=10 # The number of ticks that can pass between # sending a request and getting an acknowledgement syncLimit=5 # the directory where the snapshot is stored. # do not use /tmp for storage, /tmp here is just # example sakes. #####這是我修改後的 dataDir=/home/wu_being/zookeeper-3.4.5/data # the port at which the clients will connect clientPort=2181 # # Be sure to read the maintenance section of the # administrator guide before turning on autopurge. # # http://zookeeper.apache.org/doc/current/zookeeperAdmin.html#sc_maintenance # # The number of snapshots to retain in dataDir #autopurge.snapRetainCount=3 # Purge task interval in hours # Set to "0" to disable auto purge feature #autopurge.purgeInterval=1
配置說明:
tickTime:這個時間是做爲 Zookeeper 服務器之間或客戶端與服務器之間維持心跳的時間間隔,也就是每一個 tickTime 時間就會發送一個心跳。
dataDir:顧名思義就是 Zookeeper 保存數據的目錄,默認狀況下,Zookeeper 將寫數據的日誌文件也保存在這個目錄裏。
clientPort:這個端口就是客戶端鏈接 Zookeeper 服務器的端口,Zookeeper 會監聽這個端口,接受客戶端的訪問請求。
web
當這些配置項配置好後,你如今就能夠啓動zookeeper了:apache
wu_being@JStorm-VirtualBox:~/ netstat -at|grep 2181 #查看zookeeper端口 wu_being@JStorm-VirtualBox:~/ netstat -nat #查看端口信息 wu_being@JStorm-VirtualBox:~/zookeeper-3.4.5/bin$ ./zkServer.sh start #啓動 wu_being@JStorm-VirtualBox:~/zookeeper-3.4.5/bin$ jps #查看啓動的服務名稱 wu_being@JStorm-VirtualBox:~/zookeeper-3.4.5/bin$ ./zkServer.sh stop #關閉
注:jps命令是Java jdk中的,啓動zkServer也是要先配製好Java jdk,否則啓動成功也是假現象的!!!瀏覽器
啓動後要檢查 Zookeeper 是否已經在服務,能夠經過 netstat -at|grep 2181
命令查看是否有 clientPort 端口號在監聽服務。並在zookeeper-3.4.5生成data文件夾,data文件夾version-2文件夾和zookeeper_server.pid文件。tomcat
-s $HOME/.pythonbrew/etc/bashrc && source $HOME/.pythonbrew/etc/bashrc pythonbrew install 2.6.7 pythonbrew switch 2.6.7
注意,若是當前系統是64位系統,則須要下載64位JDK,若是是32爲系統,則下載32位JDKruby
假設以jstorm-0.9.6.3.zip爲例
unzip jstorm-2.1.1.zip vi ~/.bashrc export JSTORM_HOME=/home/wu_being/jstorm-2.1.1 export PATH=$PATH:$JSTORM_HOME/bin
注意:要wu_being@JStorm-VirtualBox:~$ source .bashrc
配置項:
1. storm.zookeeper.servers: 表示zookeeper 的地址, 2. nimbus.host: 表示nimbus的地址 3. storm.zookeeper.root: 表示JStorm在zookeeper中的根目錄,當多個JStorm共享一個zookeeper時,須要設置該選項,默認即爲「/jstorm」 4. storm.local.dir: 表示JStorm臨時數據存放目錄,須要保證JStorm程序對該目錄有寫權限 5. java.library.path: Zeromq 和java zeromq library的安裝目錄,默認"/usr/local/lib:/opt/local/lib:/usr/lib" 6. supervisor.slots.ports: 表示Supervisor 提供的端口Slot列表,注意不要和其餘端口發生衝突,默認是68xx,而Storm的是67xx 7. topology.enable.classloader: false, 默認關閉classloader,若是應用的jar與JStorm的依賴的jar發生衝突,好比應用使用thrift9,但jstorm使用thrift7時,就須要打開classloader。建議在集羣級別上默認關閉,在具體須要隔離的topology上打開這個選項。
########### These MUST be filled in for a storm configuration storm.zookeeper.servers: - "172.17.21.33" storm.zookeeper.root: "/jstorm" nimbus.host: "172.17.21.33" nimbus.host.start.supervisor: false nimbus.childopts: "-Xmx256m" supervisor.childopts: "-Xmx256m" worker.childopts: "-Xmx128m" storm.local.dir: "%JSTORM_HOME%/data" supervisor.slots.ports: - 6800 - 6801 - 6802 - 6803
#mkdir ~/.jstorm #cp -f $JSTORM_HOME/conf/storm.yaml ~/.jstorm
必須使用tomcat 7.0 或以上版本, 注意不要忘記拷貝 ~/.jstorm/storm.yaml
Web UI 能夠和Nimbus不在同一個節點
mkdir ~/.jstorm cp -f $JSTORM_HOME/conf/storm.yaml ~/.jstorm tar -xzf apache-tomcat-7.0.70.tar.gz ### cd apache-tomcat-7.0.70 cd webapps cp $JSTORM_HOME/jstorm-ui-2.1.1.war ./ mv ROOT ROOT.old ### ln -s jstorm-ui-2.1.1 ROOT ### cd ../bin ./startup.sh #####
注意:
.jstorm/storm.yaml
文件,並啓動zookeeper,最好先啓動nimbus和supervisor服務器。nohup jstorm nimbus &
, 查看$JSTORM_HOME/logs/nimbus.log檢查有無錯誤nohup jstorm supervisor &
, 查看$JSTORM_HOME/logs/supervisor.log檢查有無錯誤