Zookeeper ZooKeeper是一个分布式的,开放源码的分布式应用程序协调服务,是Google的Chubby一个开源的实现,是Hadoop和Hbase的重要组件。它是一个为分布式应用提供一致性服务的软件,提供的功能包括:配置维护、域名服务、分布式同步、组服务等。 ZooKeeper的目标就是封装好复杂易出错的关键服务,将简单易用的接口和性能高效、功能稳定的系统提供给用户。 ZooKeeper包含一个简单的原语集,提供Java和C的接口。 ZooKeeper代码版本中,提供了分布式独享锁、选举、队列的接口,代码在zookeeper-3.4.8\src\recipes。其中分布锁和队列有Java和C两个版本,选举只有Java版本。html
Zookeeper安装 下载后将conf/zoo_sample.cfg修改成zoo.cfg,修改其中内容 配置文件简单解析 1tickTime:这个时间是做为 Zookeeper 服务器之间或客户端与服务器之间维持心跳的时间间隔,也就是每一个 tickTime 时间就会发送一个心跳。 二、dataDir:顾名思义就是 Zookeeper 保存数据的目录,默认状况下,Zookeeper 将写数据的日志文件也保存在这个目录里。 三、dataLogDir:顾名思义就是 Zookeeper 保存日志文件的目录 四、clientPort:这个端口就是客户端链接 Zookeeper 服务器的端口,Zookeeper 会监听这个端口,接受客户端的访问请求。 如下目录使用反斜杠 tickTime=2000 dataDir=D:/ubuntu-storm/workspace/zookeeper/data dataLogDir=D:/ubuntu-storm/workspace/zookeeper/logs clientPort=2181java
启动zookeeper 进入到其bin目录,而且启动zkServer.cmd,这个脚本中会启动一个java进程。处于监听状态。 启动后使用系统jps命令能够看到QuorumPeerMain的进程。Jps –l –v 启动客户端链接zkCli.cmd 127.0.0.1:2181 链接成功便可python
退出时ctrl+c或quit Zookeeper能够配置伪集群,参考 https://www.cnblogs.com/cheyunhua/p/8595448.htmlshell
storm配置 配置storm的conf/storm.yaml • zk集群地址 • storm.zookeeper.servers: • - "127.0.0.1" • Nimbus and Supervisor须要的本地状态等信息存储的目录 、每一个目录都不一样,此处为反斜杠 storm.local.dir: " D/ubuntu-storm/workspace/stormlocal/data " • Nimbus master机器地址,用于toplogy jars和配置信息的分发 nimbus.seeds: ["127.0.0.1"] 增长ui端口 Ui.port: 9999ubuntu
每一个机器节点工做的woker的端口,每一个supervisor或nimbus能够区分开,配置不一样worker的端口 supervisor.slots.ports: - 8700 - 8701 - 8702浏览器
尝试启动 参考https://blog.csdn.net/caridle/article/details/76412083 报错参考http://www.javashuo.com/article/p-xvkqkviq-hp.html 启动zookeeper服务,运行zkServer.cmd。依次执行下列命令, cmd bin\storm nimbus 启动失败、建议用Powershell storm.ps1 script替代启动 启动master上的nimbus storm.ps1 nimbus 启动各个supervisor storm.ps1 supervisor 启动UI监控 storm.ps1 ui 在浏览器打开ui,127.0.0.1:9999/iindex.html 能够看到stormUI,启动成功服务器
选用python脚本启动 bin\storm.py nimbus bin\storm.py supervisor bin\storm.py ui分布式
执行任务 上传本身的容许的storm jar到master上,在UI中查看监控执行状况 bin\storm jar allmycode.jar org.me.MyTopology arg1 arg2 arg3oop