一、集群storm准备
1、首先准备三个linux虚拟机。如何安装linux这里就不解释了。可以百度一下。
2、在每个linux虚拟机上安装jdk8,我觉得8版本比较好,稳定一些。
(1)、安装jdk8之前,先检查一下linux是否有自带的jdk版本,输入命令:java -version,一般安装有图形界面的linux都有自带的jdk。默认使用jdk如下图:
默认是openjdk,这不是我们要的版本。
(2)、下载jdk8。linux 能够联网,使用 wget 下载,下载的是 linux 版本的 jdk。
例如:wget
http://219.238.7.73/files/216300000A20F295/download.oracle.com/otn/java/jdk/8u121-b13/e9 e7ea248e2c4826b92b3f075a80e441/jdk-8u121-linux-x64.tar.gz
下载到指定文件,比如我下载到soft文件夹(这个文件夹自己建立,mkdir soft就可以创建)。在这soft文件下里输入解压命令:tar -zxvf jdk-8u121-linux-x64.tar.gz -C /usr/local/ ,这条命令的意思是将jdk文件解压到/usr/local/目录,至于要解压到那个目录下看自己随意。
(3)、在/etc目录下的profile文件最后加上以下配置: 通过vim或者vi打开profile文件。
export JAVA_HOME=/usr/local/jdk1.8.0_121 export
PATH=$JAVA_HOME/bin:$PATH export
CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JAVA_HOME/jre/lib/rt.jar
(4)、profile 文件修改成,执行 source /etc/profile 让上面的配置生效 。
source 命令通常用于重新执行刚修改的初始化文件,使之立即生效,而不必注销并重新登录。
语法:source 文件名
例如:source /etc/profile
(5)、检查配置是否生效:再次执行 java -version 检查是否配置成功
如下图:由原来的openjdk变成了java version “1.8.0_121”
其他两个linux虚拟机也是这样配置。
2、zookeeper集群
(1)、给三台虚拟机的主机设置别名:修改三台虚拟机etc目录下的hosts文件。
设置别名后面好操作。
(2)、下载zookeeper,放到soft文件中,然后通过解压命令:tar -zxvf zookeeper-3.4.10.tar.gz -C /usr/local/
(3)、配置zookeeper的的conf文件的zoo_sample.cfg文件
首先进入local文件夹的zookeeper文件中,打开conf文件,使用cp命令复制zoo_sample.cfg文件为zoo.cfg,命令如下:cp zoo_sample.cfg zoo.cfg即可。
(4)、使用vi或者vim打开zoo.cfg,配置zoo.cfg文件:
在zoo.cfg文件中的末尾加这三个配置。记住三个虚拟机的zookeeper都要配置
(5)、在/usr/local/zookeeper-3.4.10下创建data文件夹(mkdir data即可创建)
在打开conf文件夹中配置zoo.cfg文件,配置zoo.cfg文件中的dataDir路径:
同上三个虚拟机也创建data文件并且配置dataDir路径。
(6)、在刚才创建的data文件夹中创建myid文件 vi或者vim命令创建:
vi myid即可,在myid中输入对应的数字:
server.1对应k1主机,那么对应k1主机中的zookeeper中data文件夹中的myid写1 保存即可。
其他两个主机同理也要创建data并且创建myid文件,写对应的数字保存即可。
我这里上图myid文件写着 2 表示对应的主机是k2。注意myid中的数字一定要跟单对应的主机相对应,不然zookeeper启动会失败。
在这里zookeeper集群配置就完成了。
(7)、启动zookeeper,三台虚拟机的都要启动。启动zookeeper之前一定先检查三台虚拟机的防火墙状态,要是开着要把它关掉,不然集群zookeeper启动失败。
查看防火墙状态:systemctl status firewalld
让防火墙可用:systemctl enable firewalld
让防火墙不可用:systemctl disable firewalld
开启防火墙:systemctl start firewalld
禁用防火墙:systemctl stop firewalld
防火墙关掉之后进入zookeeper文件中的bin文件夹中输入以下命令启动zookeeper:./zkServer.sh start &
启动zookeeper命令:./zkServer.sh start &
关闭zookeeper命令:./zkServer.sh stop &
查看zookeeper状态:./zkServer.sh status &
三台虚拟机的zookeeper都要启动。
三台启动之后使用:分别在三台zookeeper中使用./zkServer.sh status &命令查看状态
上图为follower状态表示从zookeeper
上图为leader状态表示为主zookeeper
会有两台从一台主,都启动之后在安装storm。
二、集群安装storm
1、下载storm 到soft文件夹中官方网址:http://storm.apache.org/
解压storm文件到local文价夹中使用tar -zxvf storm文件名解压。
三台虚拟机都要安装storm。
2、配置storm目录下conf文件夹中的storm.yaml文件
使用vi或者vim打开storm.yaml文件,加以下配置
![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/875fea1c3e88bfd142f9e0c5271fedd4.png#pic_center)
上面是三台虚拟机的storm的配置。
贴上配置,要使用的话粘贴后复制修改成自己的即可。
storm.zookeeper.servers:
- “192.168.253.137”
- “192.168.253.133”
- “192.168.253.132”
设置主节点的主机名
nimbus.seeds: [“192.168.253.137”]
设置Storm的数据存储路径
storm.local.dir: “/usr/local/storm/data”
设置Worker的端口号
supervisor.slots.ports:
- 6700
- 6701
- 6702
- 6703
supervisor.childopts: “-Xms512m”
worker.childopts: “-Xmx1024m -Xms512m -Xmn200m -XX:SurvivorRatio=5”
nimbus.childopts: “-Xms512m”
storm.local.hostname: “k1”
storm.zookeeper.session.timeout: 60000
storm.zookeeper.connection.timeout: 60000
topology.acker.executors: 0
supervisor.worker.timeout.secs: 600
3、配置 storm.local.dir: “/usr/local/storm/data”。在storm中创建data文件即可。
创建data后配置storm.yaml文件中的torm.local.dir: 。三台虚拟机的storm都要配置。
4、启动storm集群。
(1)后台启动nimbus
分别进入三台虚拟机的storm文件夹中使用命令:bin/storm nimbus &
(2)后台启动supervisor
再分别进入三台虚拟机的storm文件夹中使用命令:bin/storm supervisor &
(3)启动Storm ui
最后进入主storm文件中使用命令:bin/storm ui &
5、在浏览器中查看storm的启动状态
输入以下网址:http://192.168.253.137:8080/(注:自己的就输入自己的IP地址)
上图为启动成功。
注意:防火墙一定要关掉!!!!
后续~~~~~~~更新