storm集群安装

1 环境

主机名ip地址
storm01172.16.120.181
storm02172.16.120.182
storm03172.16.120.183

mac os x固定vware虚拟机IP==sudo vi /Library/Preferences/VMware\ Fusion/vmnet8/dhcpd.conf== 在文件末尾添加

host storm01{
    hardware ethernet 00:50:56:28:1E:6A;
    fixed-address 172.16.120.181;
}
host storm02{
    hardware ethernet 00:0C:29:33:4D:15;
    fixed-address 172.16.120.182;
}
host storm03{
    hardware ethernet 00:0C:29:A2:C1:2B;
    fixed-address 172.16.120.183;
}

strom01为固定ip虚拟机的名称
hardware ethernet 硬件地址
fixed-address 固定ip地址
ip地址取值范围必须在hdcpd.conf给定的范围内,配置完成后重启vware。

配置/etc/hosts

172.16.120.181 storm01
172.16.120.182 storm02
172.16.120.183 storm03

设置主机名:

hostnamectl --static set-hostname  storm01
hostnamectl --static set-hostname  storm02
hostnamectl --static set-hostname  storm03

关闭防火墙和selinux

systemctl disable firewalld
systemctl stop firewalld
sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config

2 安装zookeeper

参考zookeeper安装文档

3 安装storm

3.1 下载并解压storm

wget http://mirror.bit.edu.cn/apache/storm/apache-storm-1.1.1/apache-storm-1.1.1.tar.gz
tar -zxvf apache-storm-1.1.1.tar.gz
mv apache-storm-1.1.1 /usr/local/

3.2 配置storm

vi /usr/local/apache-storm-1.1.1/conf/storm.yaml

配置内容如下:

## 配置Zookeeper地址(配置Zookeeper的主机名
## 注意: 如果Zookeeper集群使用的不是默认端口,那么还需要配置storm.zookeeper.port)
storm.zookeeper.servers:
    - "storm01"
    - "storm02"
    - "storm03"

## 配置nimbus.seeds:用于配置主控节点的地址,可以配置多个   
nimbus.seeds: ["storm01"]

## 配置supervisor.slots.ports,配置工作节点上的进程端口。
## 你配置一个端口,意味着工作节点上启动一个worker,在实际的生产环境中,
## 我们需要根据实际的物理配置以及每个节点上的负载情况来配置这个端口的数量。
supervisor.slots.ports:
    - 6700
    - 6701
    - 6702
    - 6703

3.3 复制到其他节点

storm02和strom03主机也是同样的配置。拷贝这台机器的storm包到strom02和strom03主机:

scp -r apache-storm-1.1.1 root@storm02:/usr/local/
scp -r apache-storm-1.1.1 root@storm03:/usr/local/

对于两台supervisor node,我们额外开启JMX支持,在配置文件中加入如下配置:

supervisor.childopts: -verbose:gc -XX:+PrintGCTimeStamps -XX:+PrintGCDetails -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.port=9998

9998就是用于通过JMX收集supervisior JVM指标的端口。

3.4 配置环境变量

vi ~/.bash_profile

export STORM_HOME=/usr/local/apache-storm-1.1.1
export PATH=$STORM_HOME/bin:$PATH

source ~/.bash_profile

3.5 启动

storm01节点启动nimbus和storm ui

nohup storm ui >/dev/null 2>&1 &
nohup storm nimbus >/dev/null 2>&1 &
nohup storm logviewer >/dev/null 2>&1 &

storm02和storm03主机启动supervisor节点:

nohup storm supervisor >/dev/null 2>&1 &

3.6 开机启动

3.6.1 strom ui

storm01节点启动storm ui

vi /usr/lib/systemd/system/storm-ui.service 

内容如下:

[Unit]
Description=Storm UI
After=network.target remote-fs.target nss-lookup.target
#Before=zookeeper.service

[Service]
#EnvironmentFile=/etc/sysconfig/storm
ExecStart=/usr/local/apache-storm-1.1.1/bin/storm  --config /usr/local/apache-storm-1.1.1/conf/storm.yaml ui
Restart=on-failure
StandardOutput=syslog
StandardError=syslog
SyslogIdentifier=storm-ui
SyslogLevel=debug
#SyslogLevelPrefix=true

[Install]
WantedBy=multi-user.target

3.6.2 strom nimbus

storm01节点启动nimbus

vi /usr/lib/systemd/system/storm-nimbus.service 

内容如下:

[Unit]
Description=Storm Nimbus
After=network.target remote-fs.target nss-lookup.target
#Before=zookeeper.service

[Service]
#EnvironmentFile=/etc/sysconfig/storm
ExecStart=/usr/local/apache-storm-1.1.1/bin/storm  --config /usr/local/apache-storm-1.1.1/conf/storm.yaml nimbus
Restart=on-failure
StandardOutput=syslog
StandardError=syslog
SyslogIdentifier=storm-nimbus
SyslogLevel=debug
#SyslogLevelPrefix=true

[Install]
WantedBy=multi-user.target

3.6.3 strom logviewer

storm01 storm02 storm03 节点启动logviewer

vi /usr/lib/systemd/system/storm-logviewer.service 

内容如下:

[Unit]
Description=Storm Logviewer
After=network.target

[Service]
#EnvironmentFile=/etc/sysconfig/storm
ExecStart=/usr/local/apache-storm-1.1.1/bin/storm  --config /usr/local/apache-storm-1.1.1/conf/storm.yaml logviewer
Restart=on-failure
StandardOutput=syslog
StandardError=syslog
SyslogIdentifier=storm-logviewer
SyslogLevel=debug
#SyslogLevelPrefix=true

[Install]
WantedBy=multi-user.target

3.6.4 strom supervisor

storm02、storm03节点启动supervisor

vi /usr/lib/systemd/system/storm-supervisor.service 

内容如下:

[Unit]
Description=Storm Supervisor
After=network.target remote-fs.target nss-lookup.target
#Before=zookeeper.service

[Service]
#EnvironmentFile=/etc/sysconfig/storm
ExecStart=/usr/local/apache-storm-1.1.1/bin/storm  --config /usr/local/apache-storm-1.1.1/conf/storm.yaml supervisor
Restart=on-failure
StandardOutput=syslog
StandardError=syslog
SyslogIdentifier=storm-supervisor
SyslogLevel=debug
#SyslogLevelPrefix=true

[Install]
WantedBy=multi-user.target

内容说明:

[Unit]:服务的说明
Description:描述服务
After:描述服务类别

[Service]服务运行参数的设置
Type=forking是后台运行的形式
ExecStart为服务的具体运行命令
ExecReload为重启命令
ExecStop为停止命令
PrivateTmp=True表示给服务分配独立的临时空间
注意:启动、重启、停止命令全部要求使用绝对路径

[Install]服务安装的相关设置,可设置为多用户

启动服务:

systemctl enable storm-ui
systemctl start storm-ui

systemctl enable storm-nimbus
systemctl start storm-nimbus

systemctl enable storm-logviewer
systemctl start storm-logviewer

systemctl enable storm-supervisor
systemctl start storm-supervisor

3.7 打开strom ui

访问ui页面: http://storm01:8080/

参考:
https://www.cnblogs.com/zhaojiankai/p/7257617.html

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值