Nginx 实现后端 tomcat 的负载均衡调度

 

#如有错误请告知

IP地址 主机名 服务 安装软件
10.0.0.27 proxy.magedu.org 调度 nginx
10.0.0.18 web1.magedu.org tomcat1 JDK8、Tomcat8
10.0.0.28 web2.magedu.org tomcat2 JDK8、Tomcat8
#只需在10.0.0.27的nginx主机上实现域名解析
vim /etc/hosts 
#添加以下
10.0.0.18 web1.magedu.org
10.0.0.28 web2.magedu.org

#tomcat1、2虚拟主机配置conf/server.xml
vim /usr/local/tomcat/conf/server.xml
<Engine name="Catalina" defaultHost="web1.magedu.org">  #修改这行
#添加以下两行
    <Host name="web1.magedu.org" appBase="/data/webapps1" unpackWARs="true" autoDeploy="true"> 
    </Host>
#tomcat1、2虚拟主机创建jsp测试文件
mkdir -pv /data/webapps1/ROOT
vim /data/webapps1/ROOT/index.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"
  pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
  <meta charset="utf-8">
  <title>jsp例子</title>
</head>
<body>
后面的内容是服务器端动态生成字符串,最后拼接在一起
<h1>webapps1</h1>
<div>SessionID = <span style="color:blue"><%=session.getId() %></span><div>
<%=request.getRequestURL()%>
</body>
</html>
chown -R tomcat.tomcat /data/webapps1

#10.0.0.27 Nginx 实现后端 tomcat 的负载均衡和动静分离
vim /apps/nginx/conf/nginx.conf
worker_processes  2;
worker_cpu_affinity 00000001 00000010;
worker_rlimit_nofile 65536;

events {
    worker_connections  10240;
}
#在http块中加以下内容,注意名称不要用下划线
http {
    upstream tomcat-server {
       #ip_hash; 				# 先禁用看看轮询,之后开启开黏性
       #hash $cookie_JSESSIONID 		# 先禁用看看轮询,之后开启开黏性
       server web1.magedu.org:8080;
       server web2.magedu.org:8080;
    }
  .......
  .......
    server {
        listen       80;
        listen       [::]:80 default_server;
	server_name  localhost;
	root	     /apps/nginx/html;
    #
        location ~* \.jsp$ {
	    proxy_pass http://tomcat-server;
	}
......
......

    }

}
pid /apps/nginx/run/nginx.pid;


#浏览器访问 proxy.magedu.org/index.html 或者 访问 proxy.magedu.org/index.jsp

 

上一篇:Magedu - M46 - 线下练习题


下一篇:Linux学习-第16周