搭建storm集群
系统centos7
1、安装Java jdk 1.7
2、安装zookeeper 3.4.8
3、安装Python2.7X
4、安装storm0.9
5、安装git
6、安装maven
所有安装包,等会我会打包上传,地址会放到最后,大家需要可以下载
1、安装jdk很简单
下载jdk压缩包
解压压缩包 ,我的安装目录是/software/
在etc/profile中加入环境变量
JAVA_HOME=/software/jdk1.7.0_80
PATH=$JAVA_HOME//bin:$PATH
CLASSPATH=$JAVA_HOME/jre/lib/ext:$JAVA_HOME/lib.tools.jar
验证是否安装成功
[root@slave2 software]# java -version
java version "1.7.0_80"
Java(TM) SE Runtime Environment (build 1.7.0_80-b15)
Java HotSpot(TM) 64-Bit Server VM (build 24.80-b11, mixed mode)
[root@slave2 software]# javac -version
javac 1.7.0_80
[root@slave2 software]#
2、安装zookeeper集群
下载解压,同样我的安装目录是/software/
准备工作,准备三台机子,我的都是centos7,分别获取IP地址,然后设置主机名
在/etc/hostname中修改为你的主机名
我的分别改为了
192.168.52.142主机名为centos
192.168.52.145主机名为slave1
192.168.52.146主机名为slave2
分别每台机子的/etc/hosts中加入
192.168.52.142 centos
192.168.52.145 slave1
192.168.52.146 slave2
进入zookeeper安装目录的conf下
创建zoo.cfg配置文件
可以复制zoo_sample.cfg得到zoo.cfg
编辑这个文件
tickTime=2000
initLimit=10
syncLimit=5
dataDir=/software/zookeeper-3.4.8/data
clientPort=2181
server.1=centos:8880:7770
server.2=slave1:8881:7771
server.3=slave2:8882:7772
创建zookeeper存放数据的目录 /software/zookeeper-3.4.8/data目录
进入 /software/zookeeper-3.4.8目录,创建
mkdir data
把刚刚安装的zookeeper-3.4.8复制到另外两台机子的/software/下
scp -rp zookeeper-3.4.8 root@slave1:/software
scp -rp zookeeper-3.4.8 root@slave1:/software
分别在三台机子的/software/zookeeper-3.4.8/data下创建myid文件
其中192.168.52.142机子的myid文件内容为1
其中192.168.52.145机子的myid文件内容为2
其中192.168.52.146机子的myid文件内容为3
这是对应上面配置文件的server.X
server.1=centos:8880:7770
server.2=slave1:8881:7771
server.3=slave2:8882:7772
zookeeper配置解释:
- tickTime:这个时间是作为 Zookeeper 服务器之间或客户端与服务器之间维持心跳的时间间隔,也就是每个 tickTime 时间就会发送一个心跳。
- dataDir:顾名思义就是 Zookeeper 保存数据的目录,默认情况下,Zookeeper 将写数据的日志文件也保存在这个目录里。
- clientPort:这个端口就是客户端连接 Zookeeper 服务器的端口,Zookeeper 会监听这个端口,接受客户端的访问请求。
- initLimit:这个配置项是用来配置 Zookeeper 接受客户端(这里所说的客户端不是用户连接 Zookeeper 服务器的客户端,而是 Zookeeper 服务器集群中连接到 Leader 的 Follower 服务器)初始化连接时最长能忍受多少个心跳时间间隔数。当已经超过 10 个心跳的时间(也就是 tickTime)长度后 Zookeeper 服务器还没有收到客户端的返回信息,那么表明这个客户端连接失败。总的时间长度就是 5*