1.环境准备
- 操作系统: CentOS7.0
- Zookeeper版本:zookeeper-3.4.10
- Storm版本:apache-storm-1.1.0
- JDK版本:jdk1.8.0_77
- Python版本:
- 集群配置如下:
# | os | hostname | ip | software | notes |
---|---|---|---|---|---|
1 | CentOS7 | apollo.dt.com | 192.168.56.181 | 1.zookeeper2.storm | master |
2 | CentOS7 | artemis.dt.com | 192.168.56.182 | 1.zookeeper2.storm | worker |
3 | CentOS7 | uranus.dt.com | 192.168.56.183 | 1.zookeeper2.storm | worker |
2.前提条件
2.1.安装配置JDK1.8
CentOS7 安装JDK1.8
2.2.安装配置Zookeeper集群
CentOS7安装配置zookeeper集群
3.下载Apache Storm
[[email protected] ~]# wget https://mirrors.tuna.tsinghua.edu.cn/apache/storm/apache-storm-1.1.0/apache-storm-1.1.0.tar.gz
4. 安装Storm
4.1.安装依赖库
[[email protected] ~]# yum install libtool -y [[email protected] ~]# yum -y install gcc [[email protected] ~]# yum -y install gcc-c++ [[email protected] ~]# yum -y install make [[email protected] ~]# yum -y install uuid-devel [[email protected] ~]# yum -y install libuuid-devel [[email protected] ~]# yum -y install e2fsprogs-devel
4.2.下载libsodium
[[email protected] dtadmin]# wget https://download.libsodium.org/libsodium/releases/libsodium-1.0.10.tar.gz #解压 [[email protected] dtadmin]# tar -zxvf libsodium-1.0.10.tar.gz #移到目录/opt/下 [[email protected] dtadmin]# mv libsodium-1.0.10 /opt/libsodium-1.0.10 #进入到目录 [[email protected]pollo dtadmin]# cd /opt/libsodium-1.0.10 #编译 [[email protected] libsodium-1.0.10]# ./autogen.sh [[email protected] libsodium-1.0.10]# ./configure [[email protected] libsodium-1.0.10]# make [[email protected] libsodium-1.0.10]# make install
4.3.ZeroMQ
官网下载ZeroMQ
#解压 [[email protected] dtadmin]# tar -xvf zeromq-4.2.1.tar #移到目录/opt/zeromq下 [[email protected] dtadmin]# mv zeromq-4.2.1 /opt/zeromq #进入目录/opt/zeromq [[email protected] dtadmin]# cd /opt/zeromq/ #编译安装 [[email protected] zeromq]# ./autogen.sh [[email protected] zeromq]# ./configure PKG_CONFIG_PATH="/usr/local/lib/pkgconfig" [[email protected] zeromq]# make [[email protected] zeromq]# make install
4.4 jzmq
#如果没有安装git [[email protected] zeromq]# yum -y install git #git clone jzmq [[email protected] zeromq]# git clone git://github.com/zeromq/jzmq.git #移动jzmq到/opt/jzmq下 [[email protected] zeromq]# mv jzmq /opt/jzmq #进入目录jzmq/jzmq-jni [[email protected] zeromq]# cd /opt/jzmq/jzmq-jni #编译 [[email protected] jzmq-jni]# ./autogen.sh [[email protected] jzmq-jni]# ./configure
4.4.解压storm到/opt/storm/下
#解压 [[email protected] dtadmin]# tar -zxvf apache-storm-1.1.0.tar.gz #移到/opt/storm下 [[email protected] dtadmin]# mv apache-storm-1.1.0 /opt/storm
5.配置环境变量
[[email protected] dtadmin]# vim /etc/profile #添加以下配置 # storm-1.1.0 export STORM_HOME=/opt/storm export PATH=$PATH:$STORM_HOME/bin #使修改生效 [[email protected] dtadmin]# source /etc/profile #验证 [[email protected] dtadmin]# echo $STORM_HOME /opt/storm
6.修改配置文件
6.1.配置storm.yaml
#进入$STORM_HOME目录 [[email protected] storm]# cd $STORM_HOME #创建目录 [[email protected] storm]# mkdir -p data #进入配置文件目录 [[email protected] storm]# cd $STORM_HOME/conf #修改配置文件storm.yaml [[email protected] conf]# vim storm.yaml #修改的配置项如下 storm.zookeeper.servers: - "192.168.56.181" - "192.168.56.182" - "192.168.56.183" nimbus.seeds: ["192.168.56.181"] storm.local.dir: "/opt/storm/data"
6.2 配置文件验证可以通过YAML Lint
把storm.yaml配置文件中的内容拷贝到YAML Lint框中验证,如下图所示:
6.3.配置项说明
- storm.zookeeper.servers:表示zookeeper的集群地址,如果Zookeeper集群使用的不是默认端口,那么还需要配置storm.zookeeper.port
- storm.zookeeper.port: Zookeeper集群的端口号
- storm.local.dir: 用于配置Storm存储少量文件的路径
- nimbus.seeds: 用于配置主控节点的地址,可以配置多个
7.拷贝文件到其余工作节点
* 注:在拷贝文件前,2~5的所有步骤都要在从机上完成。*
#拷贝到服务器artemis.dt.com上 [[email protected] opt]# scp -r storm/ artemis.dt.com:/opt/ #拷贝到服务器uranus.dt.com上 [[email protected] opt]# scp -r storm/ uranus.dt.com:/opt/
8.启动Storm
8.1. 启动主控节点
[[email protected] opt]# nohup $STORM_HOME/bin/storm nimbus &
8.2.启动工作节点
[[email protected] dtadmin]# nohup $STORM_HOME/bin/storm supervisor & [[email protected] dtadmin]# nohup $STORM_HOME/bin/storm supervisor &
8.3.启动管理页面
#主控节点上运行 [[email protected] ~]# nohup $STORM_HOME/bin/storm ui &
精彩评论