`

Storm的安装部署

 
阅读更多
自己读了原文根据自己的理解翻译了一部分,先放上来保存。(主要是自己看,也希望对别人有一点点儿用)。

安装步骤:
1. 下载一个发布版本(这里用的是storm-0.6.0),解压到一个目录下,将bin目录添加到系统的PATH环境中。
2. 为了可以在一个远程的集群上启动和停止topologies, 通过~/.storm/storm.yaml文件来配置cluster (后面会进一步说明) 。

开发环境介绍:
Storm有两种操作模式:本地模式和远程模式。本地模式下topologies的开发、测试运行可以在一台本地机器上完成,远程模式需要将topologies提交到cluster完成执行。
我们来快速的了解下本机机器和cluster的关系。一个cluster由一个被称作“Nimbus”的主节点所管理。本地机器通过Nimbus将代码(或者jar包)和topologies提交到cluster来执行的,Nimbus来托管这些代码并分配一些works来运行你的topology。本地机器通过一个storm的控制台来和Nimbus通信,这个storm控制台仅仅用于远程模式(本地模式的开发和测试不用它)。

本地客户端安装:
如果你想将topologies通过本地提交到cluster,需要先安装Strom的本地客户端程序。从https://github.com/nathanmarz/storm/downloads下载并解压到你机器上某个目录下,将解压后的bin目录添加到系统PATH中,并且确保bin/storm下面的script可以执行(有执行的权限等)。
安装本地客户端程序只是为了和远程的cluster进行交互。对于本地模式下topologies的代码开发、测试,建议你使用maven来管理,在maven中包含对Strom的依赖。

安装过程:
1) 安装leiningen.下载该脚本https://raw.github.com/technomancy/leiningen/stable/bin/lein,加入PATH环境,并确保能运行。
2) 使用git将storm-deploy下载下来。
3) 运行 lein deps
4) 创建一个文件 ~/.pallet/config.clj,来配置AWS上的示例,内容如下:
(defpallet
  :services
  {
   :default {
             :blobstore-provider "aws-s3"
             :provider "aws-ec2"
             :environment {:user {:username "storm"
                                  :private-key-path "$YOUR_PRIVATE_KEY_PATH$"
                                  :public-key-path "$YOUR_PUBLIC_KEY_PATH$"}
                           :aws-user-id "$YOUR_USER_ID$"}
             :identity "$YOUR_AWS_ACCESS_KEY$"
             :credential "$YOUR_AWS_ACCESS_KEY_SECRET$"
             :jclouds.regions "$YOUR_AWS_REGION$"
             }
    })

配置说明:
A. 在每个节点上设置生成ssh公、私钥,公钥的路径必须是私钥路径+ “.pub”。在Linux上,还需要一个null护照。
B. aws-user-id:可以在你帐户(Git?)的管理页面找到。它是一个数字序列,将它放到上面这个配置文件中。
C. Identity: AWS的访问key。
D. Credential:AWS访问key的密码。
5) 修改conf/clusters.yaml。可以修改zookeeper nodes 和 supervisor nodes的数量通过修改zookeeper.count 或者supervisor.count。可以通过修改supervisor.spot.price来启动supervisor nodes的spot实例
6) (可选项)cluster的一些用户配置项通过修改conf/storm.yaml来完成,比如:超时时间、客户注册序列..

启动clusters:
执行命令:
lein run :deploy --start --name mycluster --release {release version}

--name 参数用来给cluster指定一个名字,然后根据这个名字连接或者停掉它。省略的话,默认为“dev”。
--release参数标识当前使用的版本,缺省为主分支版本,强烈建议加上。
这个过程会设置Zookeeper,设置Nimbus,在端口8080启动Storm UI,在Nimbus端口3772上启动DRPC服务,设置Supervious,设置安全许可,并且将你的机器连接到cluster。

停止clusters:
lein run :deploy --stop --name mycluster


连接cluster:
lein run :deploy --attach --name mycluster

连接前需要:
1. 将Nimbus的地址写入到~/.storm/storm.yaml中,这样客户端才指定要连接的cluster是哪一个(例如:nimbus.host: "123.45.678.890"  )。
2. 可以访问Nimbus的守护进程提供的Thrift端口(用来提交topologies)(thrift是一个软件框架,用来进行可扩展且跨语言的服务的开发。)
3. 可以访问Storm UI在Nimbus的8080端口
4. 可以访问Ganglia在Nimbus的80端口。

获取cluster nodes的ip:
lein run :deploy --ips --name mycluster


Ganglia
可以通过浏览器来访问:
http://{nimbus ip}/ganglia/index.php
分享到:
评论

相关推荐

    storm组件安装部署.doc

    【Storm组件安装部署】 Storm是一个开源的分布式实时流计算框架,它被广泛应用于实时日志分析、个性化推荐、实时监控等多个领域。这个文档主要聚焦于如何在单机环境下部署和运行Storm,尤其针对CentOS 6.4系统,...

    Storm集群安装部署步骤

    Storm集群安装部署步骤,一步一步记录了作者亲自实践部署的过程,包括遇到的错误解决办法

    storm集群部署和配置过程详解

    Storm集群的部署和配置是构建实时大数据处理系统的关键步骤,本文将详细讲解这一过程。Storm是一个分布式实时计算系统,能够处理大规模数据流,确保每个事件都得到正确的处理。以下是搭建Storm集群的详细步骤: 1. ...

    storm1.1.0版本单节点部署

    Storm 1.1.0 单节点部署指南 Apache Storm 是一个开源的分布式实时计算系统,它能够处理大规模的数据流并进行实时分析。在单节点部署中,所有的 Storm 组件,包括 Nimbus、Supervisor 和 UI,都将运行在同一台机器...

    storm部署(包括所有依赖rpm包、集群搭建详解)

    首先,Storm部署前需要准备的依赖RPM包主要包括Java开发环境(JDK)、Zookeeper、Nimbus、Supervisor和UI等组件。JDK是运行Storm的基础,确保安装了JDK 8或更高版本。Zookeeper是一个分布式协调服务,用于管理Storm...

    Storm实战培训教程.pptx

    5. Storm安装部署: - 安装Storm通常涉及下载最新稳定版本的Storm发行包,配置环境变量,然后启动Nimbus、Supervisor和服务监控工具Zookeeper。 - 部署时,需要考虑集群规模、硬件配置和网络环境,以满足实时处理...

    storm集群部署文档

    ### Storm集群部署知识点 #### 一、Storm集群简介 Apache Storm 是一款开源的分布式实时计算系统,它提供了简单而强大的API来处理无限的数据流。Storm的设计使其能够支持各种类型的流处理应用,包括实时分析、在线...

    02_流式计算基础_第1天(Storm集群部署、单词计数、Stream Grouping).docx

    02_流式计算基础_第1天 (Storm集群部署、单词计数、Stream Grouping).docx

    storm集群部署手册

    ### storm集群部署手册知识点梳理 #### 一、安装虚拟机 **知识点1:虚拟机软件与操作系统准备** - **软件需求:** - VMware Workstation 12:虚拟机管理软件。 - CentOS-6.5-x86_64-bin-DVD1.iso:64位操作系统...

    Storm集群部署详细手册.docx

    Storm集群部署详细手册.docxStorm集群部署详细手册.docx

    storm部署详细步骤.txt

    storm部署详细步骤

    细细品味Storm_Storm简介及安装

    ### Storm简介及安装知识点梳理 #### 一、Storm简介 **Storm** 是一款由BackType公司开发的分布式实时计算系统,后被Twitter收购并开源。它主要用于处理大规模的数据流,能够简单、高效、可靠地处理实时数据。...

    zk-kafka-redis-storm安装

    在"zk-kafka-redis-storm安装"过程中,首先需要安装Zookeeper,确保集群的协调和数据一致性。接着是Kafka的部署,设置好broker配置、创建主题并配置消费者和生产者。安装Redis时要注意选择合适的版本,配置网络参数...

    storm1.2.1-单机部署,运行自己开发的jar

    总结,Apache Storm 1.2.1单机部署涉及以下步骤:安装JDK、下载并解压Storm、配置环境变量、启动Nimbus和Supervisor服务、编写和打包拓扑代码、提交拓扑到Storm集群以及监控和管理拓扑。通过这个过程,你可以在本地...

    storm0.9x安装所需所有包(全)

    5. **示例代码**:可能包含一些示例拓扑,帮助初学者理解如何构建和部署Storm应用。 6. **文档**:可能包括官方文档、API参考和用户指南,帮助用户更好地理解和使用Storm。 安装和配置Storm时,你需要: 1. 安装...

    传智播客Storm项目实战课程 Storm的集群搭建实战 Storm项目学习视频教程

    01-storm简介 02-storm部署-1 03-storm部署-2 04-storm部署概念 05-streamgrouping 06-storm组件生命周期 07-storm可靠性1 08-storm可靠性2

    storm 流式处理 安装软件(包括zookeeper,jzmq,zeroMQ,storm)

    - 实践部署和监控Storm集群,了解如何调整参数优化性能。 - 探索Storm与其他技术(如Kafka、Hadoop等)的集成,实现数据管道的构建。 总之,Storm流式处理框架结合Zookeeper的协调能力与ZeroMQ的高效通信,为实时...

    Docker在Ubuntu16.04上安装和部署Apache Storm

    本资源为大数据开发的教程类型文档,文档详细描述了Docker在Ubuntu16.04上安装和部署Apache Storm。图文并茂,步骤清晰,含命令,说明,截图等。

Global site tag (gtag.js) - Google Analytics