使用Docker快速部署Storm环境

Storm的部署虽然不是特别麻烦,但是在生产环境中,为了提高部署效率,方便管理维护,使用Docker来统一管理部署是一个不错的选择。下面是我开源的一个新的项目,一个配置好了storm与mono环境的Docker镜像编排:storm-mono-docker

这个项目得益于https://github.com/ptgoetz/storm-vagranthttps://github.com/wurstmeister/storm-docker;在此感谢他们的付出!
项目使用的Docker镜像托管在 https://index.docker.io

准备工作

使用

首先将命令行目录切换到刚刚克隆下来的git项目目录;

通过以下命令启动集群:

docker-compose up -d
  • 你也可以使用 docker-compose up 命令来将结果输出到当前命令行界面,但是在你结束它之前无法进行任何其它操作,而一旦命令行退出,所有的容器都将停止。而 docker-compose up -d 将在后台启动所有容器。

停止这个集群的所有容器:

docker-compose stop

容器一旦停止,下次直接启动将无法正常链接容器,导致storm运行异常,你可以在结束后使用以下命令结束和移除所有的Docker缓存:

docker kill $(docker ps -q) ; docker rm $(docker ps -a -q)

增加更多的supervisors:

docker-compose scale supervisor=4

使用以下命令删除所有的镜像文件(小心,这会让你下一次启动时花费更多时间下载容器,仅在不想继续使用时执行):

docker rmi $(docker images -q -a)

重新构建和更新

你可以在修改Dockerfile后使用以下命令来重新构建镜像:rebuild.sh ;

使用以下命令来更新镜像到最新版本:refresh.sh 。

问与答

如何访问Storm UI来查看运行状况?

在docker-compose.yml中有下面这段配置:

ui:
  image: ziyunhx/storm-ui
      ports:
        - "49080:8080"

它告诉我们将Docker镜像的8080端口映射到了主机的49080,因此你可以通过访问 http://localhost:49080 来访问。如果你使用 boot2docker ,你可以通过以下命令得到虚拟机的IP:

$ boot2docker ip
The VM‘s Host only interface IP address is: 192.168.59.103

返回的结果就是你的IP,本例中可以通过 http://192.168.59.103:49080 来访问。

如何部署提交一个topology?

如果 nimbus 的IP与端口不是默认的,你需要指定它们后来提交,本例中可以使用以下命令:

storm jar target/your-topology-fat-jar.jar com.your.package.AndTopology topology-name -c nimbus.host=192.168.59.103 -c nimbus.thrift.port=49627

如果上述命令没有起作用,你可以在本地的Storm配置文件(storm.yaml)配置以下项:

nimbus.host: "192.168.59.103"
nimbus.thrift.port: 49627

然后执行以下命令提交:

storm jar target/your-topology-fat-jar.jar com.your.package.AndTopology topology-name

如何连接我的容器?

通过使用 docker-compose ps 找到你希望连接的容器的ssh端口,然后通过ssh连接:

$ ssh [email protected]`boot2docker ip` -p $CONTAINER_PORT

密码是 ‘ziyunhxpass’ (位于:https://registry.hub.docker.com/u/ziyunhx/base/dockerfile/)。

本文来自 The NewIdea,作者 Carey Tzou 。
首发地址:http://www.tnidea.com/deploy-storm-by-docker.html
未经授权,拒绝任何全文及摘要转载!

时间: 2024-08-01 06:30:26

使用Docker快速部署Storm环境的相关文章

利用Docker快速部署Oracle环境

工作中需要频繁使用Oracle环境,但是每次搭建起来比较消耗时间,本想通过虚拟机模板的方式来快速安装oracle vm,但是每次改ip等环境也很耗时,因此想到docker中有没有已经做好的images,这样就能快速获得Oracle环境. [email protected] rac1:docker search oracle INDEX NAME DESCRIPTION STARS OFFICIAL AUTOMATED docker.io docker.io/wnameless/oracle-xe

docker 快速部署nacos注册中心

docker 快速部署nacos注册中心 拉去并启动docker-compose 服务 # git 拉去相关文件 git clone https://github.com/nacos-group/nacos-docker.git # 进入文件夹 cd nacos-docker/example # 运行docker-compose 服务 docker-compose -f standalone-mysql.yaml up # 关闭 容器服务命令 docker-compose -f standalo

运维人员的解放----Docker快速部署

Docker是一个用了一种新颖方式实现的超轻量虚拟机,在实现的原理和应用上还是和VM有巨大差别,专业的叫法是应用容器(Application Container).(我个人还是喜欢称虚拟机) Docker应用容器相对于 VM 有以下几个优点: 启动速度快,容器通常在一秒内可以启动,而 VM 通常要更久 资源利用率高,一台普通PC 可以跑上千个容器,你跑上千个 VM 试试 性能开销小, VM 通常需要额外的 CPU 和内存来完成 OS 的功能,这一部分占据了额外的资源 因为VM 的 Hypervi

docker快速部署DNS,实现快速上线

```# 概念 Docker 是一个开源的应用容器引擎,Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级.可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化.这里我将使用docker容器快速部署DNS域名解析服务器,并实现快速上线 # 环境介绍 1. DNS服务器主机:172.18.0.2 域名:dns.jkyst.xyz 2. 客户端机器:172.18.0.3 域名:client1.jkyst.xyz 3. 客户端机器:172.18.0.4 域名:clie

docker快速部署sql server 2017开发版

安装sql server开发环境太麻烦?通过docker快速搭建也可以完成,一串指令搞定. Download SQL Server Management Studio (SSMS) https://docs.microsoft.com/en-us/sql/ssms/download-sql-server-management-studio-ssms https://download.microsoft.com/download/3/C/7/3C77BAD3-4E0F-4C6B-84DD-4279

Docker 快速部署Zabbix-server

玩Docker有段时间了,最近需要多个地方快速部署zabbix监控,所以使用docker可以快速部署,省去繁琐的安装过程. 组成:mysql //可以使用现成的mysql或者自行docker搭建zabbix-server-mysql //zabbix-server后台程序zabbix-web-nginx-mysql //zabbix-server前台web程序,包含phpzabbix-agent //zabbix客户端 #安装mysql--省略-- #安装zabbix-server-mysql后

使用Docker 快速部署 gitlab

安装 gitlab gitlab 是深受企业用户喜爱的基于 git 的代码管理系统.本文使用 Docker 方式安装 gitlab:这是一种快速高效的部署方式,相对于传统方式,这种部署可以有效的节省时间和过程. 环境:Ubuntu 16.04,虚机内存/CPU/存储请根据实际使用情况配置,一般4C/8G/200G足够 安装 docker: 18.06.1-ce 准备启动脚本 $ cat > gitlab-setup.sh << EOF #!/bin/bash # 注意:设置 gitlab

如何利用 docker 快速部署 Mysql 服务

docker 基础教程不再多说,这里只着重讲如何使用 docker 部署 mysql 服务 docker 拉取 访问 dockerhub,搜索关键词 mysql,我这里选择 mysql-server,然后执行拉取命令,注意可以选择tag版本,默认是latest. docker pull mysql/mysql-server:tag 等待拉取完成即可. docker Mysql-server 启动与配置 docker 部署的优势就在于其快速便捷,下面就进行几项步骤: 启动 docker 该容器命名

kubernetes之使用docker快速部署harbor

harbor Habor是由VMWare中国团队开源的容器镜像仓库.事实上,Habor是在Docker Registry上进行了相应的企业级扩展,从而获得了更加广泛的应用,这些新的企业级特性包括:管理用户界面,基于角色的访问控制 ,水平扩展,同步,AD/LDAP集成以及审计日志等 安装步骤 一. 手动部署 下载最新的docker-compose二进制文件 curl -L https://github.com/docker/compose/releases/download/1.23.1/dock