您的位置:首页 > 编程语言 > Python开发

storm集群安装及zk集群安装

2012-07-09 15:02 225 查看
1 zk集群安装:

1)下载zk(zookeeper-3.3.3.tar.gz)

        2)配置:

tickTime=2000   

dataDir=/tmp/zookeeper

clientPort=2181

initLimit=10

syncLimit=5

server.1=【host1】:2555:3555

server.2=【host2】:2556:3556

        3)在dataDir目录中配置myid文件:

vim /tmp/zookeeper/myid (host1)   

cat 1>/tmp/zookeeper/myid

vim /tmp/zookeeper/myid(host2)

cat 2>/tmp/zookeeper/myid

        4) 启动 zk ./zkServer.sh start

   storm集群安装:

在nimbus和worker机器上安装依赖

接下来你需要在nimbus和worker机器上安装storm依赖。依赖包括:

  1. ZeroMQ 2.1.7

  2. JZMQ

  3. Java 6

  4. Python 2.6.6

  5. unzip

这些版本的依赖和storm一起已经测试过。Storm与不同版本的JAVA或Python搭配时,有可能不能工作。

安装ZeroMQ 或 JZMQ时,遇到问题看Installing native dependencies.

下载并解压Storm到Nimbus和Worker机器

接下来,下载Storm并解压压缩包到Nimbus和每一台worker机器。下载地址看这里

添加必要的配置到storm.yaml文件

Storm发行包包含一个conf/storm.yaml文件,用来配置Storm程序。你能从这里看到默认配置值。

Storm.yaml覆盖defaults.yaml中的所有默认配置。这里是一些关于集群的必选配置。

1)storm.zookeeper.servers:这是一个为Storm集群配置的Zookeeper集群的主机列表。它应该像这样:

storm.zookeeper.servers:
- "111.222.333.444"
- "555.666.777.888"


如果你的Zookeeper集群使用不同于默认的端口,你应该设置storm.zookeeper.port。

2)storm.local.dir:Nimbus和Supervisor守护程序需要一个本地磁盘目录存储小量状态(像jars,confs,其它)。你应该在每台机器都创建这些目录,赋予足够权限,并且在配置中设置目录位置。例如:

storm.local.dir: "/mnt/storm"


3)java.library.path:这是Storm使用的本地库(ZeroMQ和JZMQ)载入路径。大多数安装,默认路径"/usr/local/lib:/opt/local/lib:/usr/lib"就行,所以你可能不需要配置它。

4)nimbus.host:Worker节点需要知道哪个机器是Master,以便下载topology jars和confs。例如:

nimbus.host: "111.222.333.44"


5)supervisor.slots.ports: 每一台worker机器,你用这个配置来指定多少workers运行在那台机。每个worker使用单一端口接收消息,并且这个设置定义哪个商品是打开的且可以使用。如果你定义5个端口,那么Storm将在这台机分配5个worker运行。如果你定义3个端口,Storm将仅运行3个worker。默认情况,这个设置是配置4个worker运行在端口6700, 6701, 6702, 和 6703。例如:



supervisor.slots.ports:
- 6700
- 6701
- 6702
- 6703




启动Storm

最后一步,启动Storm相关守护程序。运行supervision下的每一个守护程序是特别关键的一点。Storm是一个快速失败(fail-fast)的系统,这意味着这些进程随时都可能因发生错误而停止。由于Storm的设计,所以它随时停止都是安全的,当进程重新启动时正确的恢复。这是为什么Storm保持进程无状态的原因-- 如果Nimbus或supervisors重新启动,正在运行的topologies是不受影响的。下面是如何运行storm守护程序:

1)Nimbus

在master机器的supervision下运行命令”bin/storm nimbus”

2)Supervisor

在每个worker机器的supervision下运行命令”bin/storm supervisor”。Supervisor守护程序负责starting 和 stopping 那台机上的worker进程。

3)UI

运行supervision下的命令”bin/storm ui”来运行Storm UI(你能从浏览器访问一个站点,它提供集群和topologies的诊断信息)。在你的浏览器中输入” http://{nimbus host}:8080”访问UI。

守护程序把日志记录在每一个解压的storm下的 logs/目录。

   
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息