storm部署文档

背景

这篇笔记原来是记录在印象笔记中的,没有发布到博客中,这次我重新整理一下发布上来,希望给读者以参考。


Storm的部署手册

Zookeepr的部署

  1. 首先下载安装包:apache-zookeeper-3.5.7-bin.tar.gz

  2. 下载完毕后,放到/usr/local下,并使用tar -zxvf 命令解压

  3. 在 /etc/profile 增加环境变量

  4. 在${ZOOKEEPER_HOME}下增加两个目录dataDir和dataLogDir

  5. 修改 conf/zoo_simple 为 zoo.cfg

  6. vim conf/zoo.cfg 主要目的有两个

  • 增加对应配置项

  • 把定时清理日志的注释打开 :客户端在与zookeeper交互过程中会产生非常多的日志,而且zookeeper也会将内存中的数据作为snapshot保存下来,这些数据是不会被自动删除的,这样磁盘中这样的数据就会越来越多。不过可以通过这两个参数来设置,让zookeeper自动删除数据。

    • autopurge.snapRetainCount:设置保留多少个snapshot,之前的则删除

    • autopurge.purgeInterval:设置多少小时清理一次

  1. 使用 ZkServer.sh start 启动服务即可。

Storm的部署

  1. 官网下载storm,并解压到/usr/local

  2. 修改配置文件storm.yaml

  1. 替换worker.xml为自己项目的配置文件

  2. 利用脚本启动

#!/bin/bash

# start zookeeper
zkServer.sh start

nohup /usr/local/apache-storm-1.2.3/bin/storm nimbus &

nohup /usr/local/apache-storm-1.2.3/bin/storm supervisor &

nohup /usr/local/apache-storm-1.2.3/bin/storm ui &
  1. 提交任务
#!/bin/bash

storm jar ~/Downloads/stormfortest-1.0-SNAPSHOT.jar cn.net.icomp.stormspring.StartStorm startstorm

部署要点

  1. 注意日志量

    • 业务日志量:warn级别,其他为info;调试的时候,可以用ui直接修改日志级别
    • gc日志量:storm默认启动参数为 保存最近10个gc文件
  2. Zookeeper Nimbus 和 supervisor守护进程,使用daemontools,自动检测启动

  3. arthas监控工具

  4. storm核心守护线程的自动恢复工具,详情见这篇博客的最后。

    工作日记-storm集群业务崩溃和解决方案

原文地址:https://www.cnblogs.com/ging/p/13804012.html