02_Storm集群部署
1. 部署前的硬件及软件检查
硬件要求
1)storm集群部署包括zookeeper部署,而zookeeper集群最小为3台机器
2)storm的计算过程都在内存中完成,因此内存要尽量大
3)storm少部分数据在本地(topology提交会有本地目录,storm.local.dir/nimbus/inbox目录下),使用系统盘即可,不需要额外添加磁盘
软件要求
storm通过java编写,因此依赖于Java,同时还在少数情况下需要使用python(一般linux自带)
要提前保证java和python软件在待部署机器或虚拟机上的安装
集群部署注意事项
1)storm版本选择
* 不能太老(功能,性能)
* 该版本的参考资料必须足够多
* 最好不使用最新的版本(稳定性验证不够)
2. Storm集群部署
zookeeper的部署,请参考本博客的zookeeper系列,这里不在赘述
Storm集群部署
1)上传安装包到待部署节点,解压并得到安装目录
以我的为例,安装包上传到3个待部署节点的/usr/local/src/目录,解压后得到storm安装目录,同时修改安装目录名为storm-0.9.3
[/usr/local/src]chmod apache-storm-0.9..tar.gz
[/usr/local/src]tar -xzvf apache-storm-0.9..tar.gz
[/usr/local/src]mv apache-storm-0.9. storm-0.9.
2) 修改storm配置文件storm.yaml
任选1个节点,进入storm安装目录下的conf目录,找到配置文件storm.yaml
[/usr/local/src]cd storm-0.9./conf
[/usr/local/src]vim storm.yaml
将配置文件中的一些注释符号#删除,配置如下信息
*storm.zookeeper.servers, zookeeper服务器地址,通过hostname配置
*nimbus.host, nimbus部署在哪一台机器上,通过hostname配置
*storm.local.dir, storm存储临时文件及nimbus上存放上传的任务jar包的目录,storm启动会自动创建该目录
*supervisor.slots.ports, supervisor节点能够运行的worker进程数,每个进程占用1个port
将该节点的配置文件保存,通过SCP分发到其他节点
[conf]scp –rp storm.yaml root@slave1:/usr/local/src/storm-0.9./conf/
[conf]scp –rp storm.yaml root@slave2:/usr/local/src/storm-0.9./conf/
3) Storm环境变量配置
复制storm安装目录路径,在/etc/profile尾部增加如下内容(所有集群节点都要配置环境变量)
# STORM HOME and PATH modify
export STORM_HOME=/usr/local/src/storm-0.9.
export PATH=$PATH:$STORM_HOME/bin
在所有集群节点上,使配置文件生效
# source /etc/profile
4) 启动nimbus及storm ui(网页形式的UI页面)
在storm-0.9.3/bin/目录下创建start.sh启动脚本(和supervisor的启动脚本不同),并填入如下内容
storm logviewer >dev/null 2>&1 & //ui页面上显示可滚动的log日志
给脚本增加执行权限, 并执行
# chomd start.sh
# ./start.sh
5) 启动supervisor节点
在storm-0.9.3/bin/目录下创建start.sh启动脚本(和supervisor的启动脚本不同),并填入如下内容
storm logviewer >dev/null 2>&1 & //ui页面上显示可滚动的log日志
给脚本增加执行权限, 并执行
# chomd start.sh
# ./start.sh
6) 查看各个节点上的storm进程
Nimbus节点
core为storm ui进程
Supervisor节点
7) 查看storm UI监控页面,部署完成
http://主节点ip:8080/
02_Storm集群部署的更多相关文章
- Quartz.net持久化与集群部署开发详解
序言 我前边有几篇文章有介绍过quartz的基本使用语法与类库.但是他的执行计划都是被写在本地的xml文件中.无法做集群部署,我让它看起来脆弱不堪,那是我的罪过. 但是quart.net是经过许多大项 ...
- Openfire 集群部署和负载均衡方案
Openfire 集群部署和负载均衡方案 一. 概述 Openfire是在即时通讯中广泛使用的XMPP协议通讯服务器,本方案采用Openfire的Hazelcast插件进行集群部署,采用Hapro ...
- 基于Tomcat的Solr3.5集群部署
基于Tomcat的Solr3.5集群部署 一.准备工作 1.1 保证SOLR库文件版本相同 保证SOLR的lib文件版本,slf4j-log4j12-1.6.1.jar slf4j-jdk14-1.6 ...
- jstorm集群部署
jstorm集群部署下载 Install JStorm Take jstorm-0.9.6.zip as an example unzip jstorm-0.9.6.1.zip vi ~/.bashr ...
- CAS 集群部署session共享配置
背景 前段时间,项目计划搞独立的登录鉴权中心,由于单独开发一套稳定的登录.鉴权代码,工作量大,最终的方案是对开源鉴权中心CAS(Central Authentication Service)作适配修改 ...
- Windows下ELK环境搭建(单机多节点集群部署)
1.背景 日志主要包括系统日志.应用程序日志和安全日志.系统运维和开发人员可以通过日志了解服务器软硬件信息.检查配置过程中的错误及错误发生的原因.经常分析日志可以了解服务器的负荷,性能安全性,从而及时 ...
- 理解 OpenStack + Ceph (1):Ceph + OpenStack 集群部署和配置
本系列文章会深入研究 Ceph 以及 Ceph 和 OpenStack 的集成: (1)安装和部署 (2)Ceph RBD 接口和工具 (3)Ceph 物理和逻辑结构 (4)Ceph 的基础数据结构 ...
- HBase集成Zookeeper集群部署
大数据集群为了保证故障转移,一般通过zookeeper来整体协调管理,当节点数大于等于6个时推荐使用,接下来描述一下Hbase集群部署在zookeeper上的过程: 安装Hbase之前首先系统应该做通 ...
- SolrCloud-5.2.1 集群部署及测试
一. 说明 Solr5内置了Jetty服务,所以不用安装部署到Tomcat了,网上部署Tomcat的资料太泛滥了. 部署前的准备工作: 1. 将各主机IP配置为静态IP(保证各主机可以正常通信,为避免 ...
随机推荐
- Java SAX handle xml
https://www.journaldev.com/1198/java-sax-parser-example Java SAX Parser Example SAX Parser in java ...
- 搭建wordpress
https://www.themepark.com.cn/xcjxgwordpressdzdyglyd.html
- return的结果
return只会返回第一个,接下去的不会再返回 所以return放在for里面用的话,即使循环好几次,但是除了循环的第一个,后面循环出来的结果都作废
- sqlserver表结构查询语句
SELECT syscolumns.name,systypes.name,syscolumns.isnullable,syscolumns.length FROM syscolumns, systyp ...
- PL/SQL Developer 登录 Oracle 12c和Win10下安装Oracle 11g
安装了Oracle 12c 后使用PL/SQL Developer怎么也不能连接到Oracle 12c.网上找一下,按照fcflying所说的操作成功了,所以做个笔记: 1)安装Oracle 12c ...
- loadrunner:设置检查点的几种方法
判断操作是否成功,检查点是必不可少的.loadrunner中可以设置文本检查点和图片检查点,下面记录一下loadrunner设置检查点的几种方法. 前言:在回放脚本时,必须确定run-time set ...
- mysql更新子查询中的内容
UPDATE t_finance_certify_copy c SET c.biz_type=2,c.sub_biz_type=18WHERE c.finance_certify_id IN(SELE ...
- 一个url加载的全过程
最近在进行前端面试方面的一些准备,遇到了一个经典前端问题,一个url从输入到页面加载中间到底发生了什么,以前也认真想过这个问题,但是当时回答的都不全面,现在来好好总结一下: 总体来说分为以下六个步骤: ...
- Topic与Queue
总结自:https://blog.csdn.net/qq_21033663/article/details/52458305 队列(Queue)和主题(Topic)是JMS支持的两种消息传递模型: 1 ...
- Swift进阶之路(一)——单例模式、属性传值、代理传值、闭包传值
一.单例模式 单例模式是设计模式中最简单的一种,甚至有些模式大师都不称其为模式,称其为一种实现技巧,因为设计模式讲究对象之间的关系的抽象,而单例模式只有自己一个对象. 关于单例,有三个重要的准则需要牢 ...