jdk安装
zookeeper安装
安装准备
安装cmake autoconf automake libtool等工具;
rpm -qf /usr/bin/autoconf
rpm -e --nodeps autoconf-2.63
wget ftp://ftp.gnu.org/gnu/autoconf/autoconf-2.68.tar.gz
tar -zxvf autoconf-2.68.tar.gz
cd autoconf-2.68
./configure --prefix=/usr/
make && make install
安装unzip
安装git
yum install -y git.x86_64
安装ZMQ
git clone https://github.com/zeromq/libzmq
cd libzmq
./autogen.sh && ./configure && make -j 4
make check && make install && ldconfig
如果安装过程报错uuid找不到,则通过如下的包安装uuid库:
yum install e2fsprogsl -b current
yum install e2fsprogs-devel -b current
安装JZMQ
git clone https://github.com/nathanmarz/jzmq.git
cd jzmq
./autogen.sh
./configure
make
make install
storm安装
Storm集群也依赖Zookeeper集群,要保证Zookeeper集群正常运行。Storm的安装配置比较简单,我们仍然使用下面3台机器搭建:
10.40.10.246 dbtest1
10.40.10.247 dbtest2
10.40.10.248 dbtest3
首先,在dbtest1节点上,执行如下命令安装:
cd /opt/software
wget http://mirror.bit.edu.cn/apache/storm/apache-storm-1.0.6/apache-storm-1.0.6.tar.gz
tar -zxvf apache-storm-1.0.6.tar.gz -C /opt/apps
ln -s /opt/apps/apache-storm-1.0.6 /opt/apps/storm
然后,修改配置文件conf/storm.yaml
,内容如下所示:注意要空一个
storm.zookeeper.servers:
- "dbtest1"
- "dbtest2"
- "dbtest3"
nimbus.seeds: ["dbtest1"]
storm.zookeeper.port: 2181
supervisor.slots.ports:
- 6700
- 6701
- 6702
- 6703
- 6704
- 6705
- 6706
- 6707
storm.local.dir: "/tmp/storm"
配置解释:
1. storm.zookeeper.servers表示配置Zookeeper集群地址。注意,如果zookeeper集群中使用的不是默认端口,则还需要配置storm.zookeeper.port.
2. nimbus.seeds表示配置主控节点,可以配置多个。
将配置好的安装文件,分发到其他节点上:
scp -r /opt/apps/apache-storm-1.0.6/ dbtest2:/opt/apps/
scp -r /opt/apps/apache-storm-1.0.6/ dbtest3:/opt/apps/
对于两台supervisor node,我们额外开启JMX支持,在配置文件conf/storm.yaml
中加入如下配置:
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
最后,在h2、h3节点上配置,执行如下命令:
cd /opt/apps/
ln -s /opt/apps/apache-storm-1.0.6 /opt/apps/storm
Storm集群的主节点为Nimbus,从节点为Supervisor,我们需要在dbtest1上启动Nimbus服务,在从节点dbtest2、dbtest3上启动Supervisor服务:
bin/storm nimbus &
bin/storm supervisor &
为了方便监控,可以启动Storm UI,可以从Web页面上监控Storm Topology的运行状态,例如在dbtest2上启动:
bin/storm ui &
这样可以通过访问http://dbtest2:8080/来查看Topology的运行状况。