1、软件需求
•VMware Workstaton 12.0.0
•Putty
•FileZilla
•apache-tomcat-8.5.13.tar.gz
•jdk-8u121-linux-x64.tar.gz
•zookeeper-3.5.2tar.gz
•jstorm-2.1.1.zip
2、集群规划
•192.168.174.200 jstorm01
•192.168.174.201 jstorm02
•192.168.174.202 jstorm03
3、搭建步骤
3.1安装虚拟机软件
此处省略几百字,不会安装的可以参照网上的教程
3.2安装centos7系统
3.3.1 停止并关闭防火墙
systemctl stop frewalld.service
systemctl disable frewalld.service
3.3.2 服务器配置
为了方便操作,我们使用 putty 连接 master(192.168.174.200)进行操作
3.3.2.1 安装 ZIP 文件压缩解压缩工具
yum install zip unzip
3.3.2.2 安装 glibc.i686
yum install glibc.i686
3.3.3 上传相关软件
使用 Filezilla 工具将所需软件 apache-tomcat-8.5.13.tar.gz、jdk-8u121-linux-x64.tar.gz、jstorm-2.1.1.zip、zookeeper-3.5.2tar.gz 上传至虚拟机 jstorm01
3.3.4 安装 JDK
开始安装 jdk,按顺序依次执行以下命令:
echo “export LC_ALL=en_US.UTF-8” >> /etc/profile
source /etc/profile
cd /opt
tar -xvf jdk-8u121-linux-x64.tar.gz
3.3.4.1 配置 JDK 环境
cd /opt
echo ‘## java confguraton ’ >> /etc/profile
echo ‘export JAVA_HOME=/opt/jdk1.8.0_121’ >> /etc/profile
echo ‘export PATH= JAVA H OME/bin: PATH’ >> /etc/profile
echo ‘export CLASSPATH=.: JAVA H OME/lib/dt.jar: JAVA_HOME/lib/tools.jar’ >> /etc/profile
3.3.5 安装 zookeeper
按顺序依次执行以下命令:
cd /opt
tar -xvf zookeeper-3.5.2.tar
echo ‘# zookeeper confguraton ’ >> /etc/profile
echo ‘export ZOOKEEPER_HOME=/opt/zookeeper-3.5.2’ >> /etc/profile
echo ‘export PATH= ZOOKEEPER H OME/bin: PATH’ >> /etc/profile
echo ‘export CLASSPATH=.:$ZOOKEEPER_HOME/lib’ >> /etc/profile
source /etc/profile
3.3.5.1 创建 zookeeper 相关文件
建立 zookeeper 需要的相关目录
mkdir -p /home/jstorm/jstorm/zookeeper_data
chown -R jstorm:jstorm /home/jstorm/jstorm
3.3.5.2 修改 zookeeper 配置文件
备份 zookeeper 的配置文件
cp -f /opt/zookeeper-3.5.2/conf/zoo_sample.cfg /opt/zookeeper-3.5.2/conf/zoo_sample.cfg.bak
mv /opt/zookeeper-3.5.2/conf/zoo_sample.cfg /opt/zookeeper-3.5.2/conf/zoo.cfg
sed -i ‘s/dataDir=\/tmp\/zookeeper/dataDir=\/home\/jstorm\/jstorm\/zookeeper_data\//g’ /opt/zookeeper-3.5.2/conf/zoo.cfg
echo ‘# zookeeper cluster mathines’ >> /opt/zookeeper-3.5.2/conf/zoo.cfg
echo ‘server.1=192.168.174.200:2888:3888’ >> /opt/zookeeper-3.5.2/conf/zoo.cfg
echo ‘server.2=192.168.174.201:2888:3888’ >> /opt/zookeeper-3.5.2/conf/zoo.cfg
echo ‘server.3=192.168.174.202:2888:3888’ >> /opt/zookeeper-3.5.2/conf/zoo.cfg
3.3.6 安装 jstrom
cd /opt
unzip jstorm-2.1.1.zip -d /opt/
3.3.6.1配置 jstorm 环境
echo ‘# jstorm confguraton ’ >> /etc/profile
echo ‘export JSTORM_HOME=/opt/jstorm-2.1.1’ >> /etc/profile
echo ‘export PATH= JSTORM H OME/bin: PATH’ >> /etc/profile
source /etc/profile
3.3.6.2建立 jstorm 数据存放需要的文件
mkdir -p /home/jstorm/jstorm/jstorm_data
chown -R jstorm:jstorm /home/jstorm/jstorm
3.3.6.3修改 jstorm配置文件
配置$JSTORM_HOME/conf/storm.yaml
sed -i ‘/localhost”$/’d /opt/jstorm-2.1.1/conf/storm.yaml
sed -i /’storm.zookeeper.servers:/a\ - “192.168.174.200”’ /opt/jstorm-2.1.1/conf/storm.yaml
sed -i /’storm.zookeeper.servers:/a\ - “192.168.174.201”’ /opt/jstorm-2.1.1/conf/storm.yaml
sed -i /’storm.zookeeper.servers:/a\ - “192.168.174.202”’ /opt/jstorm-2.1.1/conf/storm.yaml
sed -i ‘s/%JSTORM_HOME%\/data/\/home\/jstorm\/jstorm\/jstorm_data/g’ /opt/jstorm-2.1.1/conf/storm.yaml
sed -i /’storm.zookeeper.root/a\ nimbus.host: “192.168.174.200”’ /opt/jstorm-2.1.1/conf/storm.yaml
3.3.7 安装 tomcat
cd /opt
tar -zxf apache-tomcat-8.5.13.tar.gz
cd /opt/apache-tomcat-8.5.13
chmod +x bin/*.sh
3.3.8建立到 jstorm UI 的软连接
cd /opt/apache-tomcat-8.5.13/webapps
cp /opt/jstorm-2.1.1/jstorm-ui-2.1.1.war /opt/apache-tomcat-8.5.13/webapps
mv ROOT ROOT.old
3.3.8 修改文件所属组
cd /opt
chown -R jstorm:jstorm apache-tomcat-8.5.13
chown -R jstorm:jstorm jstorm-2.1.1
chown -R jstorm:jstorm zookeeper-3.5.2
chown -R jstorm:jstorm /home/jstorm/jstorm
3.3.9编辑/etc/hostname文件
vi /etc/hostname
jstorm01
3.3.10编辑/etc/hosts文件
192.168.174.200 jstorm01
192.168.174.201 jstorm02
3.3.11创建.jstrom的文件夹(切换到jstorm用户)
su – jstorm
mkdir ~/.jstorm
cp -f /opt/jstorm-2.1.1/conf/storm.yaml ~/.jstorm
3.4 克隆机器
关闭机器,以 jstorm01 为蓝本克隆 jstorm02\jstorm03,以下为克隆 jstorm02 的操作步骤,克隆 jstorm03步骤类似
克隆完 jstorm02 和 jstorm03 之后的截图如下
3.5 编辑虚拟机设备
分别选中左边的 jstorm02 和 jstorm03,进行“编辑虚拟机设备”操作,以操作 jstorm02 为例
3.6 修改虚拟机配置
3.6.1 修改jstorm02
启动 jstorm02,修改网卡、hostname、host,具体步骤如下
1)vi /etc/hostname
jstorm02
2)vi /etc/sysconfig/network-scripts/ifcfg-ens32(不同机器的配置文件名可能不同)
修改之后重启机器。
3.6.2 修改jstorm03
启动 jstorm03,修改网卡、hostname、host,具体步骤如下
1)vi /etc/hostname
jstorm03
2)vi /etc/sysconfig/network-scripts/ifcfg-ens32(不同机器的配置文件名可能不同)
3.6.3 修改 jstorm01
启动 jstorm01
1)vi /etc/hostname
jstorm01
3.7 创建 zookeeper 所需的 ID 文件(jstorm用户操作)
为方便操作,用 putty 连接 jstrom01、jstorm02 和 jstorm03
为 zookeeper 创建 myid 文件,每个虚拟机都要操作
su – jstorm
jstorm01 机器上执行:
echo ‘1’ >> /home/jstorm/jstorm/zookeeper_data/myid
jstorm02 机器上执行:
echo ‘2’ >> /home/jstorm/jstorm/zookeeper_data/myid
jstorm03 机器上执行:
echo ‘3’ >> /home/jstorm/jstorm/zookeeper_data/myid
3.8 建立各机器 SSH 免密码(jstorm用户操作)
3.8.1 各机器都操作
建立 ssh 免密码登录,在三台虚拟机上分别以 jstorm 用户登录,进行如下操作:
mkdir /home/jstorm/.ssh
chmod -R 700 /home/jstorm/.ssh
cd .ssh
3.8.2 在 jstorm02 和 jstorm03 上操作
使用 jstorm 账户,在 jstorm02 和 jstorm03 上分别执行如下命令:
3.8.2.1 操作 jstorm02
cd .ssh
scp id_rsa.pub jstorm@jstorm01:/home/jstorm/.ssh/id_rsa.pub.jstorm02
3.8.2.2 操作 jstorm03
cd .ssh
scp id_rsa.pub jstorm@jstorm01:/home/jstorm/.ssh/id_rsa.pub.jstorm03
3.8.2.3 操作 jstorm01
使用 jstorm 账户在 jstorm01 虚拟机上进行操作
cd /home/jstorm/.ssh/
ll
cat id_rsa.pub >> authorized_keys
cat id_rsa.pub.jstorm02 >> authorized_keys
cat id_rsa.pub.jstorm03 >> authorized_keys
chmod 600 ~/.ssh/authorized_keys
将 jstorm01 虚拟机上的 authorized_keys 同步至 jstorm02 和 jstorm03
scp ~/.ssh/authorized_keys jstorm@jstorm02:/home/jstorm/.ssh/authorized_keys
scp ~/.ssh/authorized_keys jstorm@jstorm03:/home/jstorm/.ssh/authorized_keys
3.8.3 测试 ssh 免密码互通
Jstorm01 免密码访问 jstorm02 和 jstorm03
Jstorm02 免密码访问 jstorm01 和 jstorm03
Jstorm03 免密码访问 jstorm01 和 jstorm02
3.9 启动 zookeeper
使用 jstorm,在三台虚拟机上启动 zookeeper
cd /opt/zookeeper-3.5.2/bin
./zkServer.sh start
./zkServer.sh status
3.10 启动 jstorm
这时,我们可以启动 jstorm 了
3.10.1 操作 jstorm01
cd /opt/jstorm-2.1.1/bin/
./jstorm nimbus >/dev/null 2>&1 &
3.10.2 操作 jstorm02 和 jstorm03
cd /opt/jstorm-2.1.1/bin/
./jstorm supervisor >/dev/null 2>&1 &
3.10.3 查看运行状态
jps 查看运行查看运行状态
3.11 启动 jstorm UI
我们可以通过访问 jstorm UI 来查看具体信息
启动 jstorm01虚拟机的 tomcat
cd /opt/apache-tomcat-8.5.13/bin
./startup.sh
此时,我们通过访问 htp://192.168.174.200:8080 查看 jstorm 界面
奇怪,怎么没有看见页面呢?看一下tomcat日志吧
cd /opt/apache-tomcat-8.5.13/logs
8080端口被占用了,那就修改一下server.xml的端口吧,我改成了9000,你们随意!
vi /opt/apache-tomcat-8.5.13/conf/server.xml
再次启动tomcat,访问htp://192.168.174.200:9000