[关闭]
@huyl08 2016-06-22T07:46:22.000000Z 字数 4485 阅读 1301

浮动车Storm平台安装

storm supervisor zookeepr kafka pssh


本手册使用PSSH分发安装,在中心机上安装pssh

修改主机名称

SSH免密码配置

关闭防火墙

  1. pssh -i -h stormlist 'systemctl stop firewalld.service'
  2. pssh -i -h stormlist 'systemctl disable firewalld.service'
  3. pssh -i -h stormlist 'systemctl stop iptables.service'
  4. pssh -i -h stormlist 'systemctl disable iptables.service'

时间同步设置

有NTP Server服务的需要进行卸载,防止异常

Zookeeper配置zoo.cfg

  1. # vi $ZOOKEEPER_HOME/conf/zoo.cfg
  2. tickTime=2000
  3. initLimit=10
  4. syncLimit=5
  5. clientPort=2181
  6. dataDir=/home/storm/tmp/zookeeper
  7. autopurge.purgeInterval=24
  8. autopurge.snapRetainCount=5
  9. server.4=storm-4:2888:3888
  10. server.5=storm-5:2888:3888
  11. server.24=storm-24:2888:3888
  12. server.25=storm-25:2888:3888

Zookeeper运行环境修改JAVA_HOME

  1. # vi $ZOOKEEPER_HOME/bin/zkEnv.sh
  2. export JAVA_HOME=/usr/java/jdk1.8.0_91

修改Kafka配置

server.properties

producer.properties

consumer.properties

修改Storm配置

conf/storm_env.ini

  1. JAVA_HOME:/usr/java/jdk1.8.0_91

conf/storm.yaml

分发静态数据和应用程序

  1. pscp -h stormlist -r /home/storm/static /home/storm/
  2. pscp -h stormlist -r /home/storm/conf.d /home/storm/
  3. pscp -h stormlist -r /home/storm/zookeeper-3.4.7 /home/storm/
  4. pscp -h stormlist -r /home/storm/kafka_2.11-0.8.2.2 /home/storm/
  5. pscp -h stormlist -r /home/storm/apache-storm-0.10.0 /home/storm/

环境变量配置

环境变量已经按照相关应用程序全部放在用户目录/home/storm下准备了ENV_STORM_SUFFIX文件

  1. # ENV_STORM_SUFFIX
  2. export JAVA_HOME=/usr/java/jdk1.8.0_91
  3. export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
  4. export PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH
  5. export ZOOKEEPER_HOME=/home/storm/zookeeper-3.4.7
  6. export PATH=$ZOOKEEPER_HOME/bin:$PATH
  7. export KAFKA_HOME=/home/storm/kafka_2.11-0.8.2.2
  8. export PATH=$KAFKA_HOME/bin:$PATH
  9. export STORM_HOME=/home/storm/apache-storm-0.10.0
  10. export PATH=$STORM_HOME/bin:$PATH

之后通过pssh分发ENV_STORM_SUFFIX到各个机器,并将ENV_STORM_SUFFIX 追加到各机器 /etc/profile,并使之生效

  1. pscp -h stormlist ENV_STORM_SUFFIX /home/storm/
  2. pssh -i -h stormlist 'cat /home/storm/ENV_STORM_SUFFIX >> /etc/profile'
  3. pssh -i -h stormlist 'source /etc/profile'

创建程序状态数据保存目录

  1. pssh -i -h stormlist 'mkdir /home/storm/tmp'
  2. pssh -i -h stormlist 'mkdir /home/storm/tmp/supervisord-log'
  3. pssh -i -h stormlist 'mkdir /home/storm/tmp/zookeeper'
  4. pssh -i -h stormlist 'mkdir /home/storm/tmp/kafka-logs'
  5. pssh -i -h stormlist 'mkdir /home/storm/tmp/storm'

Zookeeper添加myid

  1. echo 'server.id' > /home/storm/tmp/zookeeper/myid

以storm用户启动Zookeeper

  1. # 启动ZK Server
  2. pssh -i -h stormlist '/home/storm/zookeeper-3.4.7/bin/zkServer.sh start'
  3. # 检查每个ZK Server的状态
  4. 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

创建Kafka的ZNode

  1. # zkCli.sh
  2. create /kafka ""

启动Kafka集群

  1. 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'

解压Supervisor相关包

  1. 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;'

安装Supervisor依赖包

  1. pssh -i -h stormlist 'cd /home/storm/supervisor-offline/pysetuptools-7.0/ ; /usr/bin/python setup.py install ;'
  2. pssh -i -h stormlist 'cd /home/storm/supervisor-offline/elementtree-1.2.6-20050316 ; /usr/bin/python setup.py install ;'
  3. pssh -i -h stormlist 'cd /home/storm/supervisor-offline/meld3-0.6.5 ; /usr/bin/python setup.py install ;'
  4. pssh -i -h stormlist 'cd /home/storm/supervisor-offline/supervisor-3.2.0 ; /usr/bin/python setup.py install;'

制作Supervisor启动脚本,设置开机启动

/etc/init.d/supervisor

  1. #!/bin/sh
  2. # /etc/init.d/supervisor
  3. #
  4. # Supervisor is a client/server system that
  5. # allows its users to monitor and control a
  6. # number of processes on UNIX-like operating
  7. # systems.
  8. #
  9. # chkconfig: 2345 20 80
  10. # description: Supervisor Server
  11. # processname: supervisor
  12. # Source init functions
  13. . /etc/rc.d/init.d/functions
  14. prog="supervisord"
  15. exec_prefix="${prefix}"
  16. prog_bin="/usr/bin/supervisord"
  17. PIDFILE="/tmp/supervisord.pid"
  18. start()
  19. {
  20. echo -n $"Starting $prog: "
  21. daemon $prog_bin -c /etc/supervisord.conf --pidfile $PIDFILE
  22. [ -f $PIDFILE ] && success $"$prog startup" || failure $"$prog startup"
  23. echo
  24. }
  25. stop()
  26. {
  27. echo -n $"Shutting down $prog: "
  28. [ -f $PIDFILE ] && killproc $prog || success $"$prog shutdown"
  29. echo
  30. }
  31. case "$1" in
  32. start)
  33. start
  34. ;;
  35. stop)
  36. stop
  37. ;;
  38. status)
  39. status $prog
  40. ;;
  41. restart)
  42. stop
  43. start
  44. ;;
  45. *)
  46. echo "Usage: $0 {start|stop|restart|status}"
  47. ;;
  48. esac

设置开机启动

  1. chkconfig --add supervisor
  2. chkconfig supervisor on
  3. service supervisor start
添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注