storm集群的安装和部署
2015-08-18 15:23
417 查看
Storm 是一个开源的、大数据处理系统,与其他系统不同,它旨在用于分布式实时处理且与语言无关。
Storm 实现的一些特征决定了它的性能和可靠性的。Storm 使用 ZeroMQ 传送消息,这就消除了中间的排队过程,使得消息能够直接在任务自身之间流动。在消息的背后,是一种用于序列化和反序列化 Storm 的原语类型的自动化且高效的机制。
Storm 的一个最有趣的地方是它注重容错和管理。Storm 实现了有保障的消息处理,所以每个元组都会通过该拓扑结构进行全面处理;如果发现一个元组还未处理,它会自动从喷嘴处重放。Storm 还实现了任务级的故障检测,在一个任务发生故障时,消息会自动重新分配以快速重新开始处理。Storm 包含比 Hadoop 更智能的处理管理,流程会由监管员来进行管理,以确保资源得到充分使用。
下面介绍一下storme的安装和部署,需要完成以下步骤:
1.依赖库的安装,包括Python、jdk;
2.zookeeper集群的安装;
3.下载并解压storm的安装包;
4.修改storm的配置文件storm.yaml;
5.启动storm集群各节点的进程。
检查jdk是否安装:
下载后可以通过Winscp拷贝到linux的环境下,然后解压:
这里注意,配置的时候,每一个配置项的值前面需要空一个空格,不然启动storm的时候要报错。
下面解释各配置项的含义:
storm.zookeeper.servers: storm集群各节点的ip地址;
nimbus.host:整个storm集群主控节点的ip,这个ip用于访问集群的ui;
storm.local.dir:用于nimbus和supervisor进程存储少量状态,如jars、confs等的本地磁盘目录,需要提前创建该目录并给以足够的访问权限;
storm.zookeeper.port:zookeeper集群的监测的端口号,这个如果不配置,就会使用默认的端口号;
supervisor.slots.ports: 每个Supervisor工作节点可以运行的worker数量。每个worker占用一个单独的端口用于接收消息,该配置选项即用于定义哪些端口是可被worker使用的;
ui.port:访问ui的端口号。
2.启动其他的工作节点:
3.在主控节点所在机子上启动ui进程:
整个集群都启动完毕后,打开浏览器监测集群是否部署成功:http://172.17.6.142:8081
Storm 实现的一些特征决定了它的性能和可靠性的。Storm 使用 ZeroMQ 传送消息,这就消除了中间的排队过程,使得消息能够直接在任务自身之间流动。在消息的背后,是一种用于序列化和反序列化 Storm 的原语类型的自动化且高效的机制。
Storm 的一个最有趣的地方是它注重容错和管理。Storm 实现了有保障的消息处理,所以每个元组都会通过该拓扑结构进行全面处理;如果发现一个元组还未处理,它会自动从喷嘴处重放。Storm 还实现了任务级的故障检测,在一个任务发生故障时,消息会自动重新分配以快速重新开始处理。Storm 包含比 Hadoop 更智能的处理管理,流程会由监管员来进行管理,以确保资源得到充分使用。
下面介绍一下storme的安装和部署,需要完成以下步骤:
1.依赖库的安装,包括Python、jdk;
2.zookeeper集群的安装;
3.下载并解压storm的安装包;
4.修改storm的配置文件storm.yaml;
5.启动storm集群各节点的进程。
第一步:检查依赖库是否已安装(Python、jdk)
检查Python是否安装:[root@logsrv02 /]# python Python 2.6.6 (r266:84292, Nov 22 2013, 12:16:22) [GCC 4.4.7 20120313 (Red Hat 4.4.7-4)] on linux2 Type "help", "copyright", "credits" or "license" for more information. >>>
检查jdk是否安装:
[root@logsrv02 /]# java -version java version "1.6.0_45" Java(TM) SE Runtime Environment (build 1.6.0_45-b06) Java HotSpot(TM) 64-Bit Server VM (build 20.45-b01, mixed mode)
第二步:zookeeper集群的安装
详情可以参考:/article/3638856.html第三步:下载并解压storm的安装包
下载地址:http://storm.apache.org/downloads.html下载后可以通过Winscp拷贝到linux的环境下,然后解压:
tar zxvf apache-storm-0.9.2-incubating.tar.gz
第四步:修改storm的配置文件storm.yaml
进入到storm的配置文件 /apache-storm-0.9.2-incubating/conf/:storm.zookeeper.servers: - "172.17.6.148" - "172.17.6.142" - "172.17.6.149" nimbus.host: "172.17.6.142" storm.local.dir: "/home/storm-data" storm.zookeeper.port: 2181 supervisor.slots.ports: - 6700 - 6701 - 6702 - 6703 ui.port: 8081
这里注意,配置的时候,每一个配置项的值前面需要空一个空格,不然启动storm的时候要报错。
下面解释各配置项的含义:
storm.zookeeper.servers: storm集群各节点的ip地址;
nimbus.host:整个storm集群主控节点的ip,这个ip用于访问集群的ui;
storm.local.dir:用于nimbus和supervisor进程存储少量状态,如jars、confs等的本地磁盘目录,需要提前创建该目录并给以足够的访问权限;
storm.zookeeper.port:zookeeper集群的监测的端口号,这个如果不配置,就会使用默认的端口号;
supervisor.slots.ports: 每个Supervisor工作节点可以运行的worker数量。每个worker占用一个单独的端口用于接收消息,该配置选项即用于定义哪些端口是可被worker使用的;
ui.port:访问ui的端口号。
第五步:启动storm各节点的后台进程
1.启动集群的主控节点:cd /usr/local/apache-storm-0.9.2-incubating/ bin/storm nimbus
2.启动其他的工作节点:
bin/storm supervisor
3.在主控节点所在机子上启动ui进程:
bin/storm ui
整个集群都启动完毕后,打开浏览器监测集群是否部署成功:http://172.17.6.142:8081
相关文章推荐
- 端口镜像和链路汇聚
- c#基础之数组
- 如何查看存储过程中动态生成的sql
- 解决用VideoView 播放一些视频无法播放问题
- 回文数猜想
- freeSwitch1.7+vBilling centos6.6 mini install
- window.onresize(当你改变窗口大小的时候会触发这个事件)
- SurfaceView和View区别总结
- 比较简单和理解的下拉框联动实现
- git的使用
- LINQ To SQL 语法及实例大全【转】
- [Java] public, private, protected
- PhantomJS linux系统下安装步骤及使用方法(网页截屏功能)
- c#基础之数组
- oc 中的.m和.mm文件区别
- android 一个公共的适配器,简化适配器代码
- 读Effective Objective C总结(一)
- Mysql分表分区
- 利用openssl_random_pseudo_bytes和base64_encode函数来生成随机字符串
- [POJ 1410] Intersection(线段与矩形交)