1.安裝Tomcat並配置啟動 2.Tomcat部署項目 網市場 1.配置server.xml文件 ,新增在 engline內 2.創建站點目錄,上傳源碼包 3.使用mvn編譯 4.Nginx配置反向代理 5.重啟Tomcat服務 6.配置功能變數名稱解析 7.安裝圖解: 8.部署多節點組建集群 9.接入負 ...
1.安裝Tomcat並配置啟動
1.yum安裝maven和java:
[root@web01 ~]# yum install java maven -y
2.二進位安裝tomcat
[root@web01 ~]# mkdir /soft && cd /soft
[root@web01 soft]# wget http://mirrors.tuna.tsinghua.edu.cn/apache/tomcat/tomcat-9/v9.0.26/bin/apache-tomcat-9.0.26.tar.gz
[root@web01 soft]# tar xf apache-tomcat-9.0.26.tar.gz
[root@web01 soft]# ln -s /soft/apache-tomcat-9.0.26 /soft/tomcat
[root@web01 soft]# /soft/tomcat/bin/startup.sh
[root@web01 soft]# netstat -lntp|grep java
tcp6 0 0 :::8009 :::* LISTEN 8500/java
tcp6 0 0 :::8080 :::* LISTEN 8500/java
tcp6 0 0 127.0.0.1:8005 :::* LISTEN 8500/java
2.Tomcat部署項目--->>網市場
1.配置server.xml文件 ,新增在 engline內
<Host name="cms.cheng.com" appBase="/code/cms"
unpackWARs="true" autoDeploy="true">
<Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
prefix="cms_access_log" suffix=".txt"
pattern="%h %l %u %t "%r" %s %b" />
2.創建站點目錄,上傳源碼包
[root@web01 ~]# mkdir /code/cms
[root@web01 ~]# cd /code/cms/
[root@web01 cms]# rz mail_osc-wangmarket-master.zip
[root@web01 cms]# unzip mail_osc-wangmarket-master.zip
3.使用mvn編譯
[root@web01 cms]# cd wangmarket/
[root@web01 wangmarket]# mvn clean package -Dmaven.skip.test=true
[root@web01 wangmarket]# cp target/wangmarket.war /code/cms/
[root@web01 cms]# mv wangmarket.war ROOT.war
4.Nginx配置反向代理
[root@web01 conf.d]# cat cms.cheng.com.conf
server {
listen 80;
server_name cms.cheng.com;
location / {
proxy_pass http://127.0.0.1:8080;
proxy_set_header Host $http_host;
}
}
[root@web01 conf.d]# nginx -t
[root@web01 conf.d]# systemctl restart nginx
5.重啟Tomcat服務
[root@web01 cms]# /soft/tomcat/bin/shutdown.sh && /soft/tomcat/bin/startup.sh && tail -f /soft/tomcat/logs/catalina.out
6.配置功能變數名稱解析
cms.cheng.com 10.0.0.7
7.安裝圖解:
8.部署多節點組建集群
[root@web01 cms]# scp -rp /code [email protected]:/
[root@web01 cms]# scp -rp /soft [email protected]:/
[root@web02 soft]# rm -rf tomcat/
[root@web02 soft]# ln -s /soft/apache-tomcat-9.0.26 /soft/tomcat
[root@web01 cms]# scp -rp /etc/nginx/conf.d/cms.cheng.com.conf [email protected]:/etc/nginx/conf.d/
[root@web02 soft]# nginx -t
[root@web02 soft]# systemctl restart nginx
[root@web02 soft]# yum install java -y
[root@web02 soft]# /soft/tomcat/bin/startup.sh
測試:
cms.cheng.com 10.0.0.8
9.接入負載均衡
[root@lb01 conf.d]# cat proxy_cms.cheng.com.conf
upstream cms {
server 172.16.1.7:8080;
server 172.16.1.8:8080;
}
server {
listen 80;
server_name cms.cheng.com;
location / {
proxy_pass http://cms;
include proxy_params;
}
}
[root@lb01 conf.d]# nginx -t
[root@lb01 conf.d]# systemctl restart nginx
10.通過瀏覽器訪問發現無法登陸
11.Nginx+Tomcat集群會話共用 redis
1.下載TomcatClusterRedisSessionManager (所有web集群都需要操作)
[root@web01 ~]# unzip tomcat-cluster-redis-session-manager.zip
[root@web01 ~]# cd tomcat-cluster-redis-session-manager/
1.拷貝jar包
[root@web01 tomcat-cluster-redis-session-manager]# cp lib/* /soft/tomcat/lib/
2拷貝tomcat連接redis配置文件
[root@web01 tomcat-cluster-redis-session-manager]# cp conf/redis-data-cache.properties /soft/tomcat/conf/
3修改redis-data-cache.properties
[root@web01 tomcat-cluster-redis-session-manager]# vim /soft/tomcat/conf/redis-data-
redis.hosts=172.16.1.52:6379
4.添加如下兩行至tomcat/conf/context.xml
[root@web01 ~]# vim /soft/tomcat/conf/context.xml
<Context>
.....
<Valve className="tomcat.request.session.redis.SessionHandlerValve" />
<Manager className="tomcat.request.session.redis.SessionManager" />
....
</Context>
5.修改tomcat/conf/web.xml 配置文件session的超時時間 ,單位是分鐘
<session-config>
<session-timeout>60</session-timeout> #根據情況調整
</session-config>
12.安裝redis,當然也可以自行搭建redis集群,anyway
[root@redis ~]# yum install redis -y
[root@redis ~]# cat /etc/redis.conf
...
bind 172.16.1.51 172.16.1.52
requirepass 123456 #如果不需要密碼,則不要配置
...
[root@redis ~]# systemctl start redis
[root@redis ~]# systemctl enable redis
13.重啟多台機器的Tomcat
[root@web01 ~]# /soft/tomcat/bin/shutdown.sh
[root@web01 ~]# /soft/tomcat/bin/startup.sh
14.在172.16.1.51的資料庫上,創建一個wangmarket的庫,配置授權訪問用戶
[root@db01 ~]# mysql -uroot -p000000
MariaDB [(none)]> create database wangmarket charset utf8;
MariaDB [(none)]> grant all privileges on *.* to 'all'@'%' identified by '000000';
MariaDB [(none)]> flush privileges;