掌握聚合最新动态了解行业最新趋势
API接口,开发服务,免费咨询服务

快速搭建Storm集群环境

前言


Storm 是一个分布式计算框架,适用于大规模数据的实时计算。

对于分布式技术的学习,可能首先让人头大的就是集群环境的搭建,如何快速的搭建集群环境,让我们可以马上开始实践呢?

下面就介绍下使用官方 Storm Docker 镜像搭建集群,迅速在本机运行起来。

前提条件


  • 安装 Docker

Docker的安装非常简单,到官网下载适合自己操作系统的版本,然后安装即可。

有 Windows、Linux、Mac 多个版本,所以各自的安装过程就不介绍了,下面是说明文档的地址:

https://docs.docker.com/
  • 配置 Docker 加速器

由于 Docker 服务器在国外,国内下载镜像的速度很慢,前些天 Docker 和阿里云合作了,以后下载速度会比较快,但目前还是需要配置加速器。

好用的加速器例如阿里云、DaoCloud,我用的是阿里云,地址:

https://dev.aliyun.com

登录进去后里面有加速器的配置方法。

  • 下载 Storm

下载地址:

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

选择当前最新的 1.0.2 版本。 

Storm本地模式


使用 Storm 的官方镜像及其简单,对于普通的本地模式,无需安装配置,直接就可以运行 Storm 程序。

Storm 下的 examples/storm-starter目录,是一个示例项目,其中就有打好的jar包,在这个目录下执行下面的命令运行这个示例程序:

docker run -it -v storm-starter-topologies-1.0.2.jar:/topology.jar storm:1.0.2 storm jar /topology.jar org.apache.storm.starter.ExclamationTopology

含义:使用 storm:1.0.2这个镜像运行一个storm环境,并执行 storm-starter-topologies-1.0.2.jar 中的 org.apache.storm.starter.ExclamationTopology

命令执行后,会先下载镜像 storm:1.0.2,然后就可以看到程序的执行结果,这样就相当于同时完成了环境搭建和helloworld程序的执行

最小化集群搭建


本地模式已经可以满足学习需求,如果想更加真实一些,可以搭建一个简单的集群环境。

Storm 是依赖 ZooKeeper 的,使用需要先安装 ZooKeeper,也同样使用 Docker 镜像,非常方便,执行命令:

docker run -d --restart always --name some-zookeeper zookeeper:3.4

Storm 主要分为两种组件:Nimbus、Supervisor,分别安装。

安装并启动 Nimbus :

docker run -d --restart always --name some-nimbus --link some-zookeeper:zookeeper storm:1.0.2 storm nimbus

运行 storm:1.0.2 容器,并连接 zookeeper 容器,容器启动后执行命令 storm nimbus

安装并启动 Supervisor :

docker run -d --restart always --name supervisor --link some-zookeeper:zookeeper --link some-nimbus:nimbus storm:1.0.2 storm supervisor

和上一个命令一样,只是变成执行 storm supervisor

一个精简的集群环境就搭建完成了,在集群中运行一个示例程序测试一下,examples/storm-starter目录下执行:

docker run --link some-nimbus:nimbus -it --rm -v storm-starter-topologies-1.0.2.jar:/topology.jar storm:1.0.2 storm jar /topology.jar org.apache.storm.starter.WordCountTopology topology

小结


在安装好 Docker 并配置好加速器后,这个过程大概在10来分钟,非常方便。

本文目的是引导大家使用 Docker,希望可以触类旁通,在实践其他技术时能够快速起步,节省一些宝贵时间。

性能与架构.jpg

原文来自:性能与架构

声明:所有来源为“聚合数据”的内容信息,未经本网许可,不得转载!如对内容有异议或投诉,请与我们联系。邮箱:marketing@think-land.com

  • 营运车判定查询

    输入车牌号码或车架号,判定是否属于营运车辆。

    输入车牌号码或车架号,判定是否属于营运车辆。

  • 名下车辆数量查询

    根据身份证号码/统一社会信用代码查询名下车辆数量。

    根据身份证号码/统一社会信用代码查询名下车辆数量。

  • 车辆理赔情况查询

    根据身份证号码/社会统一信用代码/车架号/车牌号,查询车辆是否有理赔情况。

    根据身份证号码/社会统一信用代码/车架号/车牌号,查询车辆是否有理赔情况。

  • 车辆过户次数查询

    根据身份证号码/社会统一信用代码/车牌号/车架号,查询车辆的过户次数信息。

    根据身份证号码/社会统一信用代码/车牌号/车架号,查询车辆的过户次数信息。

  • 风险人员分值

    根据姓名和身份证查询风险人员分值。

    根据姓名和身份证查询风险人员分值。

0512-88869195
数 据 驱 动 未 来
Data Drives The Future