mesos上安装storm

美人岛,美丽海岛风景

1.基本说明

  如果只用一句话来描述storm的话,可能会是这样:分布式实时计算系统。按照storm作者的说法,storm对于实时计算的意义类似于hadoop对于批处理的意义。我们都知道,根据google mapreduce来实现的hadoop为我们提供了map, reduce原语,使我们的批处理程序变得非常地简单和优美。同样,storm也为实时计算提供了一些简单优美的原语。

  相信看了上面的话你应该对storm是什么有了大概的了解,即

  (1)分布式系统,类似hadoop

   (2) 针对实时数据的流计算框架

更多资料请参考如下网站:

  1.关于storm的详细介绍 http://www.searchtb.com/2012/09/introduction-to-storm.html

  2.storm官网:https://github.com/nathanmarz/storm/wiki

  3.storm-mesos官网:https://github.com/nathanmarz/storm-mesos

说明:基于mesos安装假设你已经安装并且成功运行了mesos

    mesos安装请参考我的博文《在mesos上安装hadoop》

2.基本依赖安装

2.1 zookeeper(运行storm前先开启)

单独的安装可以看我的博文:《zookeeper快速安装》

也可以使用Hbase自带的zookeeper也可以

2.2 Zeromq

wget http://download.zeromq.org/zeromq-2.1.7.tar.gz
tar -xzf zeromq-2.1..tar.gz
cd zeromq-2.1.
./configure
make
sudo make install

如果安装过程提示缺少依赖,则安装缺少的依赖。

yum install uuid*

yum install  e2fsprogs*

2.3 python

如果按照我之前的环境搭建了,这个是肯定安装好了,没有请自行yum

yum install python*

2.4 jzmq

git clone https://github.com/nathanmarz/jzmq.git
cd jzmq
./autogen.sh
./configure
make
sudo make install

3.安装和配置storm

3.1 下载解压

wget https://github.com/downloads/nathanmarz/storm-mesos/storm-mesos-0.0.1-SNAPSHOT.tgz

tar -zxvf  storm-mesos-0.0.-SNAPSHOT.tgz

3.2 配置storm.yaml

cd storm-mesos-0.0.-SNAPSHOT/conf

vi storm.yaml

storm.yaml内容如下

java.library.path: "/home/hadoop/storm-mesos-0.0.1-SNAPSHOT/lib:/home/hadoop/storm-mesos-0.0.1-SNAPSHOT/native:/home/hadoop/mesos/lib"
mesos.master.url: "192.168.4.100:5050"
mesos.executor.uri: "/home/hadoop/storm-mesos-0.0.1-repack.tgz"
storm.zookeeper.servers:
- "192.168.4.101"
- "192.168.4.102"
- "192.168.4.103"
nimbus.host: "localhost" storm.local.dir: "/home/hadoop/storm-mesos-0.0.1-SNAPSHOT/storm-local-dir" ui.port: "8088"

以上参数的含义见官网解释:

  1. mesos.executor.uri: Once you fill in the configs and repack the distribution, you need to place the distribution somewhere where Mesos executors can find it. Typically this is on HDFS, and this config is the location of where you put the distibution.
  2. mesos.master.url: URL for the Mesos master.
  3. java.library.path: Needs the location of the ZeroMQ libs and the Mesos native libraries. The Storm/Mesos distribution comes with the native ZeroMQ libraries in the "native" folder (for Linux). This config is typically set to "native:{location of mesos native libs}"
  4. storm.zookeeper.servers: The location of the Zookeeper servers to be used by the Storm master.
  5. nimbus.host: The hostname of where you run Nimbus.

4.安装lein

Leiningen是一个Clojure项目管理工具。由于运行例子用到的storm-starter需要。

官网:https://github.com/technomancy/leiningen

4.1 下载脚本文件安装

wget https://raw.github.com/technomancy/leiningen/preview/bin/lein

mv lein /usr/bin

非root执行以下命令开始下载安装

lein

执行lein后效果如下

4.2 验证

lein repl

发现可以进入

quit退出

5.安装storm-starter

在mesos上安装storm,并且执行wordcount测试程序的更多相关文章

  1. 如何在Linux上安装Storm

    Storm是开源的分布式实时计算系统,能够让数据流处理变得简单.可靠,也因此在大数据领域有广泛的实际 应用.下面介绍一下如何在Linux系统上安装Storm.根据Storm官网介绍,安装Storm软件 ...

  2. IDEA上安装Scala环境执行测试

    1.安装scala IDEA下载Scala插件 IDEA->setting->Plugin->搜索Scala->选择Scala,然后, 2.删除火狐软件 sudo apt-ge ...

  3. ubuntu上安装apache2+mysql+php5-fpm(PHP5 - FastCGI Process Manager)

    1: 安装mysql apt-get install mysql-server mysql-client 安装过程中会被问到设置mysql root的密码     New password for t ...

  4. CentOS上安装Hadoop2.7,添加数据节点,运行wordcount

    安装hadoop的步骤比较繁琐,但是并不难. 在CentOS上安装Hadoop2.7 1. 安装 CentOS,注:图形界面并无必要 2. 在CentOS里设置静态IP,手工编辑如下4个文件 /etc ...

  5. 让spark运行在mesos上 -- 分布式计算系统spark学习(五)

    mesos集群部署参见上篇. 运行在mesos上面和 spark standalone模式的区别是: 1)stand alone 需要自己启动spark master 需要自己启动spark slav ...

  6. STORM_0002_在做好的zookeeper集群上搭建storm的开发环境

    参考文献http://www.cnblogs.com/panfeng412/archive/2012/11/30/how-to-install-and-deploy-storm-cluster.htm ...

  7. 在centos7上安装部署hadoop2.7.3和spark2.0.0

    一.安装装备 下载安装包: vmware workstations pro 12 三台centos7.1 mini 虚拟机 网络配置NAT网络如下: 二.创建hadoop用户和hadoop用户组 1. ...

  8. 《Spark 官方文档》在Mesos上运行Spark

    本文转自:http://ifeve.com/spark-mesos-spark/ 在Mesos上运行Spark Spark可以在由Apache Mesos 管理的硬件集群中运行. 在Mesos集群中使 ...

  9. Mac安装 Storm 小结

    Strom 安装&部署 本地执行:Storm Topology是可进行本地运行的, 必须在发布前进行本地测试, 以确保代码本身业务逻辑没有问题( Windows也可执行, 但是由于权限等原因, ...

随机推荐

  1. Java IO学习笔记

    Java流的分类,一般可按以下方式分: 按方向分,分为输入流,输出流. 按类型分,分为字节流和字符流. 2.1字节流是通过字节来读取数据 2.2字符流是通过字符来读取数据 按操作方式分,分为节点流和过 ...

  2. android 中uri.parse()用法

    android 中uri.parse()用法 1,调web浏览器 Uri myBlogUri = Uri.parse("http://xxxxx.com"); returnIt = ...

  3. 简单的实现QQ通信功能(二)

    第二部分:功能需求以及大体思路 一:功能需求: 1. 角色:登录用户. 2. 登录: (1)检查用户名和密码是否正确,正确登录成功,否则提醒用户名或密码错误. (2)登录时可以选择登录状态,送入数据库 ...

  4. Qt Quick 简单教程 - 1 (代码备忘)

    qmlscene 未安装 由于出现上面的情况,我开始转战Windows 下学习,昨天安装好了Qt Sdk了,哟吼吼吼. mail.qml内容: import QtQuick 2.3 import Qt ...

  5. JavaScript入门(7)

    一.什么是函数 函数:把完成特定功能的代码放到一个函数里,直接调用这个函数,就省去重复输入大量代码的麻烦 函数的作用:写一次代码,然后反复地重用这个代码 Eg: 求多组数的和,不使用函数 { var ...

  6. Java 链式编程

    这里来做一个Java 链式编程的例子,基本就是每次返回一个对象本身,这样就能够去调用对象的方法和属性. package com.sun; public class Demo05 { /** * @pa ...

  7. sql: 生日三个月内有效

    DECLARE @birthday datetime,@stat datetime,@end datetime,@statbirthday datetime,@endbirthday datetime ...

  8. MVC小系列(八)【改变Areas的FindView顺序】

    MVC小系列(八)[改变Areas的FindView顺序] 一般项目比较大的话,会根据模块建立Areas,这样结构清晰,也有利于路由的部署, 1 Areas下有自己的_LayOut模板,而如果希望所有 ...

  9. A题笔记(12)

    No.1466  代码:https://code.csdn.net/snippets/192091 No.1202  代码:https://code.csdn.net/snippets/192110 ...

  10. OC - 5.内存管理

    一.引用计数器 1> 栈和堆 栈 ① 主要存储局部变量 ② 内存自动回收 堆 ① 主要存储需要动态分配内存的变量 ② 需要手动回收内存,是OC内存管理的对象 2> 简介 作用 ① 表示对象 ...