Storm1.1.3 HA集群部署

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/bigtree_3721/article/details/81676362

 

storm在1.0及其以后版本,支持nimbus高可用(HA)。本文以storm1.1.3为例子来详细演示如何安装storm HA。

http://storm.apache.org/index.html

http://storm.apache.org/downloads.html

下载地址  http://archive.apache.org/dist/storm/apache-storm-1.1.3/apache-storm-1.1.3.tar.gz

  • 集群部署设计

Nimbus    :192.168.175.141(active), 192.168.175.142(standby)
Supervisor:192.168.175.141, 192.168.175.142, 192.168.175.143
  • Storm安装配置过程

先决条件

 1.安装依赖包

在安装storm前,根据下面的官方文档描述,必须先安装下面的支撑软件包。

/******

Install dependencies on Nimbus and worker machines

Next you need to install Storm's dependencies on Nimbus and the worker machines. These are:

  1. Java 7+ (Apache Storm 1.x is tested through travis ci against both java 7 and java 8 JDKs)
  2. Python 2.6.6 (Python 3.x should work too, but is not tested as part of our CI enviornment)

These are the versions of the dependencies that have been tested with Storm. Storm may or may not work with different versions of Java and/or Python.

****/

详见:http://storm.apache.org/releases/current/Setting-up-a-Storm-cluster.html

2.关闭防火墙

systemctl status firewalld
systemctl stop firewalld

3.各个主机时间必须一致

  可以手工或者用ntpdate来修改时间。自己去度娘一下就可以搞定

1 解压/重命名

tar -zxf /home/apps/apache-storm-1.1.3.tar.gz

mv apache-storm-1.1.3 storm

2 配置环境变量

#storm_env
export STORM_HOME=/home/apps/storm
export PATH=$PATH:$STORM_HOME/bin

3 hosts配置

一定要在/etc/hosts文件中配置ip地址与主机名的映射关系
如:192.168.175.141 mini01

4 配置storm.yaml

进入storm/conf目录,修改storm.yaml配置文件为如下内容

# zookeeper ip
 storm.zookeeper.servers:
     - "mini05"
     - "mini06"
     - "mini07"
 storm.zookeeper.port: 2181
 storm.zookeeper.root: "/storm"
 
#Nimbus H/A
 nimbus.seeds: ["mini01", "mini02"]
 
#Nimbus dir
 storm.local.dir: "/home/apps/storm/tmp"
 
#supervisor worker port, 4 workers example
 supervisor.slots.ports:
    - 6700
    - 6701
    - 6702
    - 6703

绝大多数配置信息都是使用默认值,具体参考:
https://github.com/apache/storm/blob/v1.1.3/conf/defaults.yaml

5 拷贝到其他节点

scp -r /home/apps/storm @mini02:/home/apps/
scp -r /home/apps/storm @mini03:/home/apps/

6 启动

按nimbus、supervisor的分布情况启动storm进程

1) mini01上启动nimbus、supervisor、ui
nohup storm nimbus >/dev/null 2>&1 &
nohup storm supervisor >/dev/null 2>&1 &
nohup storm ui >/dev/null 2>&1 &
 
2) mini02启动nimbus、supervisor、ui
nohup storm nimbus >/dev/null 2>&1 &
nohup storm supervisor >/dev/null 2>&1 &
nohup storm ui >/dev/null 2>&1 &
 
 
3) mini03启动supervisor
nohup storm supervisor >/dev/null 2>&1 &

7 验证

http://mini01:8080/

8.如何执行应用程序

在  apache/apache-storm-1.1.3/examples下面有很多例子程序供你学习。

执行Storm的示例程序WordCountTopology。
$ cd apache/apache-storm-1.1.3/examples/ storm-starter/
$ storm jar storm-starter-topologies-1.1.3.jarstorm.starter.WordCountTopology wordcount
备注:此命令的作用是用storm将这个jar包发送给storm去执行,后面的wordcount是定义的topology名称。
10、停止拓扑任务wordcount。
$ storm deactivate wordcount

其它相关文章

1. Strom nimbus HA summary http://www.nilday.com/strom-nimbus-ha-summary/

2.   时间不同步造成UI问题。http://www.cnblogs.com/zlslch/p/6885771.html

3. storm ABC

 http://www.aboutyun.com/thread-7394-1-1.html

https://blog.csdn.net/weiyongle1996/article/details/77142245?utm_source=gold_browser_extension

猜你喜欢

转载自blog.csdn.net/bigtree_3721/article/details/81676362