Storm学习笔记(4)- Storm架构及部署 **

Storm架构详解

在这里插入图片描述
Storm架构
  类似于Hadoop的架构,主从(Master/Slave)
  Nimbus: 主
    集群的主节点,负责任务(task)的指派和分发、资源的分配
  Supervisor: 从
    可以启动多个Worker,具体几个呢?可以通过配置来指定(后面笔记整理)
    一个Topo可以运行在多个Worker之上,也可以通过配置来指定
    集群的从节点,(负责干活的),负责执行任务的具体部分
    启动和停止自己管理的Worker进程
  无状态,在他们上面的信息(元数据)会存储在ZK中
  Worker: 运行具体组件逻辑(Spout/Bolt)的进程
  
  task:
    Spout和Bolt
    Worker中每一个Spout和Bolt的线程称为一个Task
  executor: spout和bolt可能会共享一个线程
(并行度笔记会有对worker、task、executor的整理)

架构图解
在这里插入图片描述

Storm单机部署

官方链接
http://storm.apache.org/releases/1.2.2/Setting-up-a-Storm-cluster.html

Storm部署的前置条件
  jdk7+
  python2.6.6+(python3.x也是可以的;但是有些测试用例是会出错的)
Storm部署
  下载
  解压到~/app
  添加到系统环境变量:~/.bash_profile

    export STORM_HOME=/home/hadoop/app/apache-storm-1.1.1
    export PATH=$STORM_HOME/bin:$PATH
    使其生效: source ~/.bash_profile

目录结构
   bin
   examples
   conf
   lib

Storm启动

	$STORM_HOME/bin/storm   如何使用  执行storm就能看到很多详细的命令
		dev-zookeeper  启动zk(storm自带zk)
			storm dev-zookeeper  -->前台启动
			nohup sh storm dev-zookeeper & -->后台启动
			jps : dev_zookeeper
		nimbus  启动主节点
			nohup sh storm nimbus &
		supervisor 启动从节点
			nohup sh storm supervisor &
		ui  启动UI界面
			nohup sh storm ui &  //默认8080端口
		logviewer 启动日志查看服务
			nohup sh storm logviewer &

storm的ui
在这里插入图片描述
supervisor 启动后
在这里插入图片描述

注意事项
1) 为什么是4个slot (默认)
2) 为什么有2个Nimbus(1.X之后就解决了单点故障问题;所以会默认有两个nimbus)

改写Storm作业并提交到Storm单节点集群运行

官方链接:
http://storm.apache.org/releases/1.2.2/Running-topologies-on-a-production-cluster.html

主要是main方法里的

import org.apache.storm.Config;
import org.apache.storm.LocalCluster;
import org.apache.storm.StormSubmitter;
import org.apache.storm.generated.AlreadyAliveException;
import org.apache.storm.generated.AuthorizationException;
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值