Storm 集群部署第一个Demo

【准备】
1:虚拟机奇数台(3)
2:java环境(java1.7)
3:python环境(python2.7)
4:zookeeper集群环境(投票机制,所以需要奇数台机器)

【python安装】

python2.7.tgz包 百度网盘地址:

https://pan.baidu.com/s/117zozMdipzvZhnMm9A5CNA

#准备tar包
python2.7.tgz包

#解压
    tar -xzvf Python2.7.tgz

#复制至其他两个节点
    scp -r ./Python2.7 [email protected]:/usr/local
    scp -r ./Python2.7 [email protected]:/usr/local


#进入python目录
    cd Python2.7

#编译
    ./configure --prefix=/usr/local

#make
    make && make install

#进入/usr/local/bin目录
    cd /usr/local/bin    (你会看到编译的python执行文件)



#建立2.7软连接
    ln -s /usr/local/bin/python2.7 /usr/bin/python

#测试版本
    python --version

【zookeeper安装】
请查看zookeeper安装:https://blog.csdn.net/LSSSSSS/article/details/98396358

【storm安装】

#准备storm-0.9.2.tar.gz
    http://apache.mirrors.pair.com/storm/apache-storm-0.9.2-incubating/
 
  或百度网盘地址:https://pan.baidu.com/s/17a1g0QLk58v4KS9LdudfhA
下载后重命名 为 storm-0.9.2.tar.gz
#解压
    
    tar -xzvf storm-0.9.2.tar.gz

#配置
    cd /storm-0.9.2/conf
    vim storm.yaml

#配置项【注意,在配置是,首行留空格符,冒号后面留空格】
    storm.zookeeper.servers:
         - "192.168.246.128"
         - "192.168.246.130"
         - "192.168.246.131"
    storm.zookeeper.port: 2181
    storm.local.dir: "/usr/local/DataStorm"
    nimbus.host: "192.168.246.128"
    ui.port: 18080
    supervisor.slots.ports:
           - 6700
           - 6701
           - 6702
           - 6703

#配置STROM_HOME
    vim /etc/profile

  export STORM_HOME=/usr/local/storm-0.92
 export PATH=$PATH:$ZOOKEEPER_HOME/bin:$JAVA_HOME/bin:$M2_HOME/bin:$CATALINA_HOME/bin:$STORM_HOME/bin



#测试
    storm version

#启动ui
    storm ui & 或者 storm ui > /dev/null 2>&1 &

#启动nimbus(在nimbus节点机器上)
    storm nimbus & 或者storm nimbus > /dev/null 2>&1 &

#启动supervisor(在supervisor节点机器上)
    storm supervisor &  或者  storm supervisor > /dev/null 2>&1 &
#注意:如果不是第一次启动nimbus 和 supervisor ,则清理掉/storm-0.9.2/conf/storm.yaml 文件中
配置的storm.local.dir: "/usr/local/DataStorm" 目录下的数据,否则 supervisor 启动不起来,具体原因未知。
#查看任务节点
    storm list &

#查看线程 
    jps

环境变量截图如下:

每台机器 /storm-0.9.2/conf/storm.yaml 文件配置如下

提交 写好的测试代码 maven打成的jar包,后面PWTopoloyg1 是带main方法的 topology 类。

storm01.jar 在百度网盘:链接:https://pan.baidu.com/s/1X7VVESG-pnD7toDUrPLIig 
提取码:a35z

storm01 源代码百度网盘:链接:https://pan.baidu.com/s/1Fh7v0MPoL41Mvho8DrG-rg 
提取码:0946

然后访问storm UI 可以看到任务

storm01 代码的业务就是像 /user/local/temp 文件夹下创建一个txt文件 写数据

有可能 131 IP 被分配处理 spout , 130 被分配 处理 bolt

spout 是数据源,bolt是处理业务,所以像txt文件写数据的是 130 机器。

发布了46 篇原创文章 · 获赞 15 · 访问量 13万+

猜你喜欢

转载自blog.csdn.net/LSSSSSS/article/details/104168244
今日推荐