nginx配置多个tomcat负载均衡
nginx(1.15.x): http://nginx.org/en/download....
tomcat(8.5.x): https://tomcat.apache.org/dow...
不会安装nginx请我的另一个文章:Centos 7 安装Nginx-yum方式
1. 配置多个tomcat
这里介绍是一台服务器配置多个tomcat,更改端口的方法。如果是多台服务器各配一个tomcat,那可以直接使用默认的配置。
1.1 复制多个
复制多个tomcat。假定下载解压后的tomcat为apache-tomcat-8.5.8,建议复制并更改名称为.
- apache-tomcat-8.5.8-9081
- apache-tomcat-8.5.8-9082
- apache-tomcat-8.5.8-9083
在linux不会复制?查一下cp
命令的使用
1.2 配置端口
修改每个tomcat里面的配置文件。如apache-tomcat-8.5.8-9081/conf/server.xml,修改 3个地方 的端口号。
8443端口,若有需要再进行修改。
apache-tomcat-8.5.8-9081
<?xml version="1.0" encoding="UTF-8"?> <!-- 1 默认8005改成8006 --> <Server port="8006" shutdown="SHUTDOWN"> <!-- 2 Http默认8080 改成9081 --> <Connector port="9081" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" /> <!-- 3 AJP默认8009 改成8010 --> <Connector port="8010" protocol="AJP/1.3" redirectPort="8443" />
apache-tomcat-8.5.8-9082
<?xml version="1.0" encoding="UTF-8"?> <!-- 1 默认8005改成8007 --> <Server port="8007" shutdown="SHUTDOWN"> <!-- 2 Http默认8080 改成9082 --> <Connector port="9082" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" /> <!-- 3 AJP默认8009 改成8011 --> <Connector port="8011" protocol="AJP/1.3" redirectPort="8443" />
apache-tomcat-8.5.8-9083
<?xml version="1.0" encoding="UTF-8"?> <!-- 1 默认8005改成8008 --> <Server port="8008" shutdown="SHUTDOWN"> <!-- 2 Http默认8080 改成9083 --> <Connector port="9083" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" /> <!-- 3 AJP默认8009 改成8011 --> <Connector port="8011" protocol="AJP/1.3" redirectPort="8443" />
1.3 运行3个tomcat
# 进入tomcat目录 cd /相对路径/apache-tomcat-8.5.8-9081 # 运行tomcat /bin/startup.sh
其他2个tomcat同理运行。
运行成功后,可以试访问浏览器来测试(测试时建议完成步骤1.4),访问地址记得加上对应的端口号。
如果服务器在阿里云 腾讯云的服务商,记得开启防火墙和设置安全组的策略
也可以配置完nginx再进行测试。因为不需要配置端口(9081/9082/9083)的防火墙和设置安全组的策略,由于通过nginx进行反向代理了,默认使用80端口
1.4 修改默认的页面(可选)
由于3个tomcat的默认界面是一样的,所以最好修改的默认界面信息,以便能区别当前访问的是哪个tomcat。
cd /相对路径/apache-tomcat-8.5.8-9081/webapps/ROOT/index.jsp # 在index.jsp <body>标签加上标记信息:<h1>我是tomcat-9081</h1> # apache-tomcat-8.5.8-8082和apache-tomcat-8.5.8-9083同理
2. 配置Nginx
2.1 修改conf
进入nginx目录,通常在/usr/local/nginx/conf
(若没有,那你要看看自己安装去哪了,- _ -! )
编辑nginx.conf文件
vi nginx.conf
# 按下面进行增加和编辑,完成后 :wq 保存。不会使用 vi/ vim。你应该上网搜搜。 http { # 省略代码.... # 增加 upstream, 名称为 serverlist upstream serverlist{ server localhost:9081 weight=1; # weigh表示权重,越大访问的机率越多 server localhost:9082 weight=1; server localhost:9083 weight=1; } # 编辑 server { listen 80; server_name www.yourdomian.com; location / { # 这里使用定义 serverlist proxy_pass http://serverlist; }
2.2 重启nginx
/usr/local/nginx/sbin/nginx -s reload # yum安装的nginx, 你也可以使用 systemctl reload nginx 进行重启
现在就可以通过你的域名进行访问了。多次刷新就可以看到网站显示是哪个tomcat的内容。