Linux 下 tomcat基於nginx做負載均衡
測試目的:在一臺裝有nginx服務器上訪問nginx這臺的ip地址,刷新一次就會顯示後端三臺不同的tomcat服務器的測試頁。
測試環境:三臺centos 6.8
一臺 centos 7.3
軟件版本: nginx 1.12.1
tomcat 8
軟件部署的話 就不操作了 之前已經部署好了的,不會的話 看我之前的博客裏都有。
nginx 安裝
http://dklwj.blog.51cto.com/9199080/1949570
tomcat 安裝:
http://dklwj.blog.51cto.com/9199080/1955403
在三臺tomcat上做些修改
1、把/usr/local/tomcat/webapps下原有的東西都刪了除ROOT目錄留著,不過ROOT目錄下的東西可以清空然後把咱自己用到的測試頁及所需用到的文件佳放進去。
[[email protected] ROOT]# ls
classes index.jsp lib META-INF WEB-INF --這幾個文件的話是java必須有的文件
然後編輯index.jsp文件,後面兩個的話 從第一個配置好的服務器拷貝過去 修改下裏頭的標題這裏的話 我就用A、B、C 來代替三臺服務器頁面的測試標題。然後保存退出即可。
[[email protected] ROOT]# vim index.jsp
<%@ page language="java" %>
<html>
<head>
<title>tomcatB</title>
</head>
<body>
<h1><font color="blue"> tomcatB.dklwj.com</font></h1>
<table align="centre" border="1">
<tr>
<td>Session ID</td>
<% session.setAttribute("dklwj.com","dklwj.com"); %>
<td> <%= session.getId() %></td>
</tr>
<tr>
<td>Created on </td>
<td><%= session.getCreationTime() %></td>
</tr>
</table>
</body>
</html>
啟動tomcat
[[email protected] ~]$ /usr/local/tomcat/bin/startup.sh
Using CATALINA_BASE: /usr/local/tomcat
Using CATALINA_HOME: /usr/local/tomcat
Using CATALINA_TMPDIR: /usr/local/tomcat/temp
Using JRE_HOME: /usr/local/jdk
Using CLASSPATH: /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar
Tomcat started.
用ss -tnl看下端口是否被監聽
[[email protected] ~]# ss -tnl
State Recv-Q Send-Q Local Address:Port Peer Address:Port
LISTEN 0 1 ::ffff:127.0.0.1:8005 :::*
LISTEN 0 100 :::8009 :::*
LISTEN 0 100 :::8080 :::*
LISTEN 0 128 :::22 :::*
LISTEN 0 128 *:22 *:*
其它兩臺tomcat配置一樣這裏就忽略了。
配置nginx服務器
[[email protected] ~]# cd /etc/nginx/
[[email protected] nginx]# vim nginx.conf
在http配置欄下 增加以下一段
upstream tcsrvs {
server 192.168.2.32:8080;
server 192.168.2.38:8080;
server 192.168.2.39:8080;
}
在server配置裏頭加上,然後保持退出;
server {
listen 80;
server_name localhost;
#charset koi8-r;
#access_log logs/host.access.log main;
location / {
root html;
index index.html index.htm;
proxy_pass http://tcsrvs;
}
用nginx -t 檢查配置文件是否報錯。
[[email protected] nginx]# nginx -t
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful
[[email protected] nginx]#
然後瀏覽器驗證:一刷新就跳到其它兩臺上去,說明測試成功了。
有些地方有問題的,還請各位大佬指出來!萬分感謝!!
Linux 下 tomcat基於nginx做負載均衡