备注——使用:

1、单机版本:

启动zkServer、nimbus、supervisor、ui服务:

 zkServer.sh start
zkServer.sh status #查看zkserver是否成功启动 (bin/zkCli.sh启动java客户端测试zookeeper服务是否可用) storm nimbus&
storm supervisor&
storm ui&

通过http://UI_Server:8080可以打开Storm Web UI看看Storm集群的状态。

在命令窗口输入: jps  可以查看各个进程的运行状态:

 Jps  对应的进程是  Java jps
core 对应的进程是 Storm UI
nimbus 对应的进程是 Storm nimbus
supervisor 对应的进程是 Storm supervisor
QuorumPeerMain 对应的进程是 zkServer.sh
worker 对应的线程是 Storm main函数里面的设置项

2、集群版本:

 安装所需的工具软件;
修改zookeeper的配置文件(zookeeper/conf/zoo.cfg)
修改storm的配置文件(storm/conf/storm.yaml); 注:如果使用的几台机器是有别名的,一定要在每一台机器上都做好所有机器的host,修改vim /etc/hosts 将每一台机器的别名都配置到hosts文件上。

将此台nimbus电脑上的 zookeeper 和 storm 文件夹 复制到其他的电脑对应的文件夹下。就可以以下命令来启动从属节点上的storm:

 zkServer.sh start
zkServer.sh status #查看zkserver是否成功启动 storm supervisor&
storm ui&

需要注意的是:其他电脑/opt/zookeeper/myid 文件里的数字要和zoo.cfg文件里server编号对应

zoo.cfg文件里:

 server.1=172.16.0.235:4887:5887 #第一个节点地址
server.2=172.16.0.233:4887:5887 #第二个节点地址

注:改好zoo.cfg文件后,记得在dataDir  = /opt/zookeeper目录下创建myid文件,从1开始,每个服务器加1就行。

附注环境搭建参考链接:

storm环境搭建(前言)

官方手册:Setting Up a Development Environment

徐明明博客:Twitter Storm: 配置开发环境 、Twitter Storm: Maven配置

storm集群整体部署:http://www.cnblogs.com/tovin/p/3966570.html(简单明了)

twitter storm安装和storm-start的本地运行

Storm集群安装部署步骤【详细版】

Twitter Storm安装配置(单机版)笔记

Twitter Storm安装配置(集群)笔记

storm安装笔记以及提交拓扑任务

具体的搭建步骤如下:

Ubuntu14.04安装配置jdk1.8.0_31

  • 第一步:下载jdk-8u31-linux-x64.tar.gz 

     wget -c http://download.oracle.com/otn-pub/java/jdk/8u31-b13/jdk-8u31-linux-x64.tar.gz
    
    (注:建议迅雷下载好后,直接拷贝到Linux系统上)
  • 第二步:解压、安装

     sudo mkdir /usr/lib/jvm
    sudo tar zxvf jdk-8u31-linux-x64.tar.gz -C /usr/lib/jvm
  • 第三步:修改环境变量

     sudo gedit /etc/profile 

    添加

     #set java environment
    export JAVA_HOME=/usr/lib/jvm/jdk1.8.0_31
    export JRE_HOME=${JAVA_HOME}/jre
    export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
    export PATH=${JAVA_HOME}/bin:$PATH

    保存退出即可。

  • 第四步:配置默认jdk版本   (which java 检查)
    为了将我们安装的jdk设置为默认jdk版本,还要进行如下工作:
    执行代码:

     sudo update-alternatives --install /usr/lib/java java /usr/lib/jvm/jdk1.8.0_31/bin/java 300
    sudo update-alternatives --install /usr/lib/javac javac /usr/lib/jvm/jdk1.8.0_31/bin/javac 300 

    执行代码:

     sudo update-alternatives --config java

    系统会列出各种jdk版本,如下所示:

     There is only one alternatives in link group java (providing /usr/bin/java): /usr/lib/jvm/jdk1.8.0_31/bin/java
    Nothing to configure

    (注:如果是第一次安装jdk,可以跳过此过程)

  • 第五步:测试

     java -version 

    显示以下信息,说明已经配置成功

     java version "1.8.0_31"
    java(TM) SE Runtime Envirment (build 1.8.0_31-b13)
    java HotSpot(TM) 64-Bit Server VM (build 25.31-b07,mixed mode)

Ubuntu14.04下ZooKeeper-3.4.6的安装与配置(单机版)

  • 第一步:下载ZooKeeper的安装包

    链接地址为:http://mirror.bit.edu.cn/apache/zookeeper/
  • 第二步:解压ZooKeeper安装包

     sudo tar -zxvf zookeeper-3.4.6.tar.gz
    chown -R mqx:mqx zookeeper-3.4.6
  • 第三步:设置环境变量

     #set zookeeper environment
    export ZOOKEEPER=/home/hadoop/zookeeper-3.4.6
    export PATH=$PATH:$ZOOKKEEPER/bin 
  • 第四步:配置
    配置文件位置:/home/hadoop/zookeeper-3.4.6/conf,将zoo_sample.cfd文件名称改为zoo.cfg, 缺省的配置内容如下:(单机版不用配置zoo.cfg文件)

     # The number of milliseconds of each tick
    tickTime=2000
    # The number of ticks that the initial
    # synchronization phase can take
    initLimit=10
    # The number of ticks that can pass between
    # sending a request and getting an acknowledgement
    syncLimit=5
    # the directory where the snapshot is stored.
    # do not use /tmp for storage, /tmp here is just
    # example sakes.
    dataDir=/tmp/zookeeper
    # the port at which the clients will connect
    clientPort=2181
    # the maximum number of client connections.
    # increase this if you need to handle more clients
    #maxClientCnxns=60
    #
    # Be sure to read the maintenance section of the
    # administrator guide before turning on autopurge.
    #
    # http://zookeeper.apache.org/doc/current/zookeeperAdmin.html#sc_maintenance
    #
    # The number of snapshots to retain in dataDir
    #autopurge.snapRetainCount=3
    # Purge task interval in hours
    # Set to "0" to disable auto purge feature
    #autopurge.purgeInterval=1
    配置说明:
    tickTime:这个时间是作为 Zookeeper 服务器之间或客户端与服务器之间维持心跳的时间间隔,也就是每个 tickTime 时间就会发送一个心跳。
    dataDir:顾名思义就是 Zookeeper 保存数据的目录,默认情况下,Zookeeper 将写数据的日志文件也保存在这个目录里。可以是任意目录。
    clientPort:这个端口就是客户端连接 Zookeeper 服务器的端口,Zookeeper 会监听这个端口,接受客户端的访问请求。 
  • 第五步:启动ZooKeeper

     运行脚本:在/bin目录下
    ./zkServer.sh start # 启动
    ./zkServer.sh status # 查看状态
    ./zkServer.sh stop # 关闭

    注:bin/zkCli.sh启动java客户端测试zookeeper服务是否可用

Ubuntu14.04下apache-storm-0.9.2的安装与配置(单机版)

    • 第一步:下载apache-storm-0.9.2-incubating.tar.gz 的安装包

      链接地址为:http://www.apache.org/dyn/closer.cgi/storm/apache-storm-0.9.2-incubating/apache-storm-0.9.2-incubating.tar.gz
    • 第二步:解压storm安装包

       sudo tar -zxvf apache-storm-0.9.2-incubating.tar.gz 
    • 第三步:设置环境变量
      修改/etc/profile,在文件中加入:

       #set storm environment
      export STORM=/home/mqx/storm/apache-storm-0.9.2-incubating
      export PATH=$PATH:$STORM/bin 
      保存退出后,执行source /etc/profile使其立刻生效
    • 第四步:配置

      创建一个storm的本地数据目录
       mkdir -p /var/tmp/storm/workdir/
      修改storm下/config/storm.yaml文件,如下所示:
       ########### These MUST be filled in for a storm configuration
      storm.zookeeper.servers:
      - "localhost"
      # - "server2"
      #
      storm.zookeeper.port: 2181
      nimbus.host: "mqx"
      supervisor.slots.ports:
      - 6700
      - 6701
      - 6702
      - 6703
      storm.local.dir: "var/tmp/storm/workdir"
      注意:在每个配置项前面必须留有空格,冒号后面也要加空格,否则会无法识别。
      i.nimbus.host: "mqx"是nimbus的IP或hostname;
      storm.local.dir: "var/tmp/storm/workdir" 表示storm需要用到的本地目录;
      storm.zookeeper.servers表示哪几台机器是zookeeper服务器;
      storm.zookeeper.port表示zookeeper的端口号,这里一定要与zookeeper配置的端口号一致,否则会出现通信错误,切记切记。
      ii. supervisor.slots.ports 表示supervisor节点的槽数,就是最多可以跑几个worker进程;是配置slot的ip地址,配了几个地址,就有几个slot,即几个worker。每个worker占用一个单独的端口用于接收消息。如果尝试提交的topology所声明的worker数超过当前可用的slot,该topology提交会失败。 
    • 第五步:启动

       在storm的bin目录下执行:
      ./storm nimbus #启动nimbus
      ./storm ui #启动ui
      ./storm supervisor#启动supervisor  附:
      提交拓扑命令:storm jar stormDemo.jar com.storm.example.SimpleTopology test1
      ——(stormDemo.jar是包含Topology实现代码的jar包;com.storm.SimpleTopology的main方法是Topology的入口;test1为参数)
      杀死拓扑命令: storm kill test1
      ——(test1是Topology的任务名称)

storm环境搭建的更多相关文章

  1. 《OD大数据实战》环境整理

    一.关机后服务重新启动 1. 启动hadoop服务 sbin/hadoop-daemon.sh start namenode sbin/hadoop-daemon.sh start datanode ...

  2. 《OD大数据实战》Hive环境搭建

    一.搭建hadoop环境 <OD大数据实战>hadoop伪分布式环境搭建 二.Hive环境搭建 1. 准备安装文件 下载地址: http://archive.cloudera.com/cd ...

  3. 《OD大数据实战》HDFS入门实例

    一.环境搭建 1.  下载安装配置 <OD大数据实战>Hadoop伪分布式环境搭建 2. Hadoop配置信息 1)${HADOOP_HOME}/libexec:存储hadoop的默认环境 ...

  4. 《OD大数据实战》驴妈妈旅游网大型离线数据电商分析平台

    一.环境搭建 1. <OD大数据实战>Hadoop伪分布式环境搭建 2. <OD大数据实战>Hive环境搭建 3. <OD大数据实战>Sqoop入门实例 4. &l ...

  5. 《OD大数据实战》Storm环境搭建

    一.环境搭建 1. 下载 http://www.apache.org/dyn/closer.lua/storm/apache-storm-0.9.6/apache-storm-0.9.6.tar.gz ...

  6. 《OD大数据实战》Hue环境搭建

    官网: http://archive.cloudera.com/cdh5/cdh/5/hue-3.7.0-cdh5.3.6/ 一.Hue环境搭建 1. 下载 http://archive.cloude ...

  7. 《OD大数据实战》Hadoop伪分布式环境搭建

    一.安装并配置Linux 8. 使用当前root用户创建文件夹,并给/opt/下的所有文件夹及文件赋予775权限,修改用户组为当前用户 mkdir -p /opt/modules mkdir -p / ...

  8. 《OD大数据实战》MongoDB环境搭建

    一.MongonDB环境搭建 1. 下载 https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-3.0.6.tgz 2. 解压 tar -zxvf ...

  9. 《OD大数据实战》HBase环境搭建

    一.环境搭建 1. 下载 hbase-0.98.6-cdh5.3.6.tar.gz 2. 解压 tar -zxvf hbase-0.98.6-cdh5.3.6.tar.gz -C /opt/modul ...

  10. 《OD大数据实战》Oozie环境搭建

    一.Oozie环境搭建 1. 下载oozie-4.0.0-cdh5.3.6.tar.gz 下载地址:http://archive.cloudera.com/cdh5/cdh/5/ 2. 解压 tar ...

随机推荐

  1. Timer1控件的属性

  2. python下的MySQLdb使用

    下载安装MySQLdb <1>linux版本 http://sourceforge.net/projects/mysql-python/ 下载,在安装是要先安装setuptools,然后在 ...

  3. Java for LeetCode 164 Maximum Gap

    Given an unsorted array, find the maximum difference between the successive elements in its sorted f ...

  4. codeforces A. Strange Addition 解题报告

    题目链接:http://codeforces.com/problemset/problem/305/A 题目意思:给出一个序列,需要从中选择一些数,这些数需要满足:任意的两个数中每一位至少有一个数满足 ...

  5. block引发的陷阱

    block在项目的开发中使用时非常频繁的,苹果官方也极力推荐使用block.其实,究其本质,block就是指向结构体的指针(可利用运行时机制查看底层生成的c代码).然而在使用block时会存在很多陷阱 ...

  6. GLSL

    变量修饰符 修饰符给出了变量的特殊含义,GLSL中有如下修饰符: ·const – 声明一个编译期常量. ·attribute– 随不同顶点变化的全局变量,由OpenGL应用程序传给顶点shader. ...

  7. Vigenère 密码(luogu 1079)

    题目描述 16 世纪法国外交家 Blaise de Vigenère 设计了一种多表密码加密算法――Vigenère 密 码.Vigenère 密码的加密解密算法简单易用,且破译难度比较高,曾在美国南 ...

  8. MVC自带的校验

    一.添加控制器Home和Model数据 public class UserInfo { public int Id { get; set; } [Display(Name="用户名" ...

  9. HTTP协议的几个概念

    http://www.rupeng.com/favicon.ico 可获取当前图标favicon.ico服务器是指定文件名,不能更改一.HTTP协议的几个概念1.连接(Connection):浏览器和 ...

  10. ImageView中XML属性src和background的区别

    background会根据ImageView组件给定的长宽进行拉伸,而src就存放的是原图的大小,不会进行拉伸. src是图片内容(前景),bg是背景,可以同时使用. 此外:scaleType只对sr ...