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創建虛擬機系統
3.2安裝centos7系統
3.3配置虛擬機
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=
echo ‘export CLASSPATH=.:
source /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=
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
修改 zookeeper 數據文件的位置
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=
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
ln -s jstorm-ui-2.1.1 ROOT
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
192.168.174.202 jstorm03
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
ssh-keygen -t rsa
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
more catalina.2017-04-18.log
8080端口被佔用了,那就修改一下server.xml的端口吧,我改成了9000,你們隨意!
vi /opt/apache-tomcat-8.5.13/conf/server.xml
再次啓動tomcat,訪問htp://192.168.174.200:9000