@huyl08
2016-06-22T07:46:22.000000Z
字数 4485
阅读 1400
storm supervisor zookeepr kafka pssh
本手册使用PSSH分发安装,在中心机上安装pssh
pssh -i -h stormlist 'systemctl stop firewalld.service'pssh -i -h stormlist 'systemctl disable firewalld.service'pssh -i -h stormlist 'systemctl stop iptables.service'pssh -i -h stormlist 'systemctl disable iptables.service'
有NTP Server服务的需要进行卸载,防止异常
# vi $ZOOKEEPER_HOME/conf/zoo.cfgtickTime=2000initLimit=10syncLimit=5clientPort=2181dataDir=/home/storm/tmp/zookeeperautopurge.purgeInterval=24autopurge.snapRetainCount=5server.4=storm-4:2888:3888server.5=storm-5:2888:3888server.24=storm-24:2888:3888server.25=storm-25:2888:3888
# vi $ZOOKEEPER_HOME/bin/zkEnv.shexport JAVA_HOME=/usr/java/jdk1.8.0_91
server.properties
producer.properties
consumer.properties
conf/storm_env.ini
JAVA_HOME:/usr/java/jdk1.8.0_91
conf/storm.yaml
pscp -h stormlist -r /home/storm/static /home/storm/pscp -h stormlist -r /home/storm/conf.d /home/storm/pscp -h stormlist -r /home/storm/zookeeper-3.4.7 /home/storm/pscp -h stormlist -r /home/storm/kafka_2.11-0.8.2.2 /home/storm/pscp -h stormlist -r /home/storm/apache-storm-0.10.0 /home/storm/
环境变量已经按照相关应用程序全部放在用户目录/home/storm下准备了ENV_STORM_SUFFIX文件
# ENV_STORM_SUFFIXexport JAVA_HOME=/usr/java/jdk1.8.0_91export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jarexport PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATHexport ZOOKEEPER_HOME=/home/storm/zookeeper-3.4.7export PATH=$ZOOKEEPER_HOME/bin:$PATHexport KAFKA_HOME=/home/storm/kafka_2.11-0.8.2.2export PATH=$KAFKA_HOME/bin:$PATHexport STORM_HOME=/home/storm/apache-storm-0.10.0export PATH=$STORM_HOME/bin:$PATH
之后通过pssh分发ENV_STORM_SUFFIX到各个机器,并将ENV_STORM_SUFFIX 追加到各机器 /etc/profile,并使之生效
pscp -h stormlist ENV_STORM_SUFFIX /home/storm/pssh -i -h stormlist 'cat /home/storm/ENV_STORM_SUFFIX >> /etc/profile'pssh -i -h stormlist 'source /etc/profile'
pssh -i -h stormlist 'mkdir /home/storm/tmp'pssh -i -h stormlist 'mkdir /home/storm/tmp/supervisord-log'pssh -i -h stormlist 'mkdir /home/storm/tmp/zookeeper'pssh -i -h stormlist 'mkdir /home/storm/tmp/kafka-logs'pssh -i -h stormlist 'mkdir /home/storm/tmp/storm'
echo 'server.id' > /home/storm/tmp/zookeeper/myid
# 启动ZK Serverpssh -i -h stormlist '/home/storm/zookeeper-3.4.7/bin/zkServer.sh start'# 检查每个ZK Server的状态pssh -i -h stormlist '/home/storm/zookeeper-3.4.7/bin/zkServer.sh status'
以下为正常集群的输出
[1] 12:38:43 [SUCCESS] 10.212.129.4
Mode: follower
Stderr: ZooKeeper JMX enabled by default
Using config: /home/storm/zookeeper-3.4.7/bin/../conf/zoo.cfg
[2] 12:38:43 [SUCCESS] 10.212.129.5
Mode: follower
Stderr: ZooKeeper JMX enabled by default
Using config: /home/storm/zookeeper-3.4.7/bin/../conf/zoo.cfg
[3] 12:38:43 [SUCCESS] 10.212.129.25
Mode: leader
Stderr: ZooKeeper JMX enabled by default
Using config: /home/storm/zookeeper-3.4.7/bin/../conf/zoo.cfg
[4] 12:38:43 [SUCCESS] 10.212.129.24
Mode: follower
Stderr: ZooKeeper JMX enabled by default
Using config: /home/storm/zookeeper-3.4.7/bin/../conf/zoo.cfg
# zkCli.shcreate /kafka ""
pssh -i -h stormlist '/home/storm/kafka_2.11-0.8.2.2/bin/kafka-server-start.sh /home/storm/kafka_2.11-0.8.2.2/config/server.properties'
pssh -i -h stormlist 'cd /home/storm/supervisor-offline; tar -xzf meld3-0.6.5.tar.gz; tar -xzf supervisor-3.2.0.tar.gz; tar -xzf elementtree-1.2.6-20050316.tar.gz;'
pssh -i -h stormlist 'cd /home/storm/supervisor-offline/pysetuptools-7.0/ ; /usr/bin/python setup.py install ;'pssh -i -h stormlist 'cd /home/storm/supervisor-offline/elementtree-1.2.6-20050316 ; /usr/bin/python setup.py install ;'pssh -i -h stormlist 'cd /home/storm/supervisor-offline/meld3-0.6.5 ; /usr/bin/python setup.py install ;'pssh -i -h stormlist 'cd /home/storm/supervisor-offline/supervisor-3.2.0 ; /usr/bin/python setup.py install;'
/etc/init.d/supervisor
#!/bin/sh# /etc/init.d/supervisor## Supervisor is a client/server system that# allows its users to monitor and control a# number of processes on UNIX-like operating# systems.## chkconfig: 2345 20 80# description: Supervisor Server# processname: supervisor# Source init functions. /etc/rc.d/init.d/functionsprog="supervisord"exec_prefix="${prefix}"prog_bin="/usr/bin/supervisord"PIDFILE="/tmp/supervisord.pid"start(){echo -n $"Starting $prog: "daemon $prog_bin -c /etc/supervisord.conf --pidfile $PIDFILE[ -f $PIDFILE ] && success $"$prog startup" || failure $"$prog startup"echo}stop(){echo -n $"Shutting down $prog: "[ -f $PIDFILE ] && killproc $prog || success $"$prog shutdown"echo}case "$1" instart)start;;stop)stop;;status)status $prog;;restart)stopstart;;*)echo "Usage: $0 {start|stop|restart|status}";;esac
设置开机启动
chkconfig --add supervisorchkconfig supervisor onservice supervisor start