负载均衡:是一种计算机技术,用来在多个计算机(计算机集群)、网络连接、CPU、磁盘驱动器或其他资源中分配负载,以达到最优化资源使用、最大化吞吐率、最小化响应时间、同时避免过载的目的。负载均衡器通常位于应用程序前端,接受并分配传入的请求。通过使用算法来确定分配请求的最佳方式,负载均衡器可以防止任何一个资源过载或失效而导致应用程序的性能下降或停止响应。负载均衡可以通过多种方式实现,例如基于轮询、基于最少连接数、基于IP散列等算法来分配请求。
1、创建tomcat1容器
docker run -d -p 8080:8080 --name t1 --privileged=true -v /tomcat/webapps:/usr/local/tomcat/webapps tomcat:8.0
2、切换路径
cd /tomcat/webapps/
3、创建目录
mkdir yqz
4、切换路径
cd yqz/
5、编译文件
vim index.jsp
<%@ page language="java" contentType="text/html; charset=utf-8"
pageEncoding="utf-8"%>
<%@ page import="java.net.*"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<link rel="stylesheet" href="style.css"/>
<title>Insert title here</title>
</head>
<body>
<h2 class="box">欢迎来到湖南益阳</h2>
<%
InetAddress addr = InetAddress.getLocalHost();
%>
<%=addr.getHostAddress().toString() %>
</body>
</html>
6、创建tomcat2容器,继承tomcat1容器的数据卷
docker run -d -p 8081:8080 --name t2 --privileged=true --volumes-from t1 tomcat:8.0
7、创建nginx容器,指定conf.d文件夹,用来添加负载均衡
docker run -d -p 80:80 --name n1 --privileged=true -v /nginx/conf:/etc/nginx/conf.d nginx
8、修改nginx配置文件信息,添加负载均衡器
vim /nginx/conf/nginx.conf
upstream tomcats {
server 192.168.31.135:8080 weight=3;
server 192.168.31.135:8081 weight=2;
}server {
listen 80;
server_name 192.168.31.135;
location / {
proxy_pass http://tomcats;
}
}
9、需要重启nginx容器
docker restart n1
10、在浏览器上输入地址,检查是否配置正确
http://你自己的ip地址/文件路径名称