【准备】
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 root@192.168.246.130:/usr/local
scp -r ./Python2.7 root@192.168.246.131:/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 机器。
来源:CSDN
作者:LSSSSSS
链接:https://blog.csdn.net/LSSSSSS/article/details/104168244