Linux操作系统 Nginx负载均衡Tomcat服务器

简介: Docker在Linux操作系统上通过Nginx对多台Tomcat服务器实现负载均衡

Docker部署Nginx详细步骤之前的文章有,请参考之前的文章呦~

这里就说一下docker运行nginx的命令:

docker run -d -p 80:80 --name nginx nginx

Docker部署Tomcat详细步骤之前的文章有,请参考之前的文章哟~

这里就说一下docker运行tomcat的命令:

docker run -d -p 8081:8080 --name tomcat8081 tomcat
docker run -d -p 8082:8080 --name tomcat8082 tomcat

使用Docker命令进入tomcat8080容进入/usr/local/tomcat/webapps目录结构下,创建index.html并写入唯一标识8080,同理可得,进入tomcat8081容器,执行同样的操作。

[root@VM-4-9-centos conf]# docker exec -it tomcat8080 /bin/bash
root@3febc79a7600:/usr/local/tomcat# ls
BUILDING.txt  CONTRIBUTING.md  LICENSE    NOTICE    README.md  RELEASE-NOTES  RUNNING.txt  bin  conf  lib  logs  native-jni-lib  temp  webapps  webappsnull  work
root@3febc79a7600:/usr/local/tomcat# cd webapps
root@3febc79a7600:/usr/local/tomcat/webapps# ls
ROOT  docs  examples  host-manager  manager
root@3febc79a7600:/usr/local/tomcat/webapps# cd ROOT/
root@3febc79a7600:/usr/local/tomcat/webapps/ROOT# ls
RELEASE-NOTES.txt  WEB-INF  asf-logo-wide.svg  bg-button.png  bg-middle.png  bg-nav.png  bg-upper.png  favicon.ico  index.html    index.jsp  tomcat.css  tomcat.svg
root@3febc79a7600:/usr/local/tomcat/webapps/ROOT# cat index.html 
8080
root@3febc79a7600:/usr/local/tomcat/webapps/ROOT#

执行结果:
image.png

image.png

同理操作tomcat8081容器。。。。

进入Nginx目录下,修改Nginx.conf的配置文件,设置负载均衡的代理

user  nginx;
worker_processes  auto;

error_log  /var/log/nginx/error.log notice;
pid        /var/run/nginx.pid;


events {
   
   
    worker_connections  1024;
}


http {
   
   
    include       /etc/nginx/mime.types;
    default_type  application/octet-stream;

    log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
                      '$status $body_bytes_sent "$http_referer" '
                      '"$http_user_agent" "$http_x_forwarded_for"';

    access_log  /var/log/nginx/access.log  main;

    sendfile        on;
    #tcp_nopush     on;

    keepalive_timeout  65;

    #gzip  on;

    include /etc/nginx/conf.d/*.conf;

    # 配置tomcat的俩台代理IP地址
    upstream myServers {
   
   
        server X.X.X.X:8080;
        server X.X.X.X:8081;
    }

    server{
   
   
         listen 80;
        server_name X.X.X.X;
        location /{
   
   
            proxy_pass http://myServers;
        }
    }


}

保存完Nginx.conf文件后,重新启动Nginx服务器,然后进行访问。

docker restart nginx

访问我们IP地址,实现负载均衡的效果,访问我们的8080,8081的端口。

image.png

相关实践学习
SLB负载均衡实践
本场景通过使用阿里云负载均衡 SLB 以及对负载均衡 SLB 后端服务器 ECS 的权重进行修改,快速解决服务器响应速度慢的问题
负载均衡入门与产品使用指南
负载均衡(Server Load Balancer)是对多台云服务器进行流量分发的负载均衡服务,可以通过流量分发扩展应用系统对外的服务能力,通过消除单点故障提升应用系统的可用性。 本课程主要介绍负载均衡的相关技术以及阿里云负载均衡产品的使用方法。
相关文章
|
2月前
|
负载均衡 算法 搜索推荐
Nginx 常用的负载均衡算法
【10月更文挑战第17天】在实际应用中,我们需要根据具体的情况来选择合适的负载均衡算法。同时,还可以结合其他的优化措施,如服务器健康检查、动态调整权重等,来进一步提高负载均衡的效果和系统的稳定性。
123 59
|
18天前
|
运维 Prometheus 监控
如何在测试环境中保持操作系统、浏览器版本和服务器配置的稳定性和一致性?
如何在测试环境中保持操作系统、浏览器版本和服务器配置的稳定性和一致性?
|
28天前
|
人工智能 安全 Linux
|
1月前
|
负载均衡 算法 应用服务中间件
Nginx 常用的负载均衡算法
【10月更文挑战第22天】不同的负载均衡算法各有特点和适用场景。在实际应用中,需要根据具体的业务需求、服务器性能和网络环境等因素来选择合适的算法。
40 3
|
2月前
|
负载均衡 监控 应用服务中间件
除了 Nginx,还有以下一些常见的负载均衡工具
【10月更文挑战第17天】这些负载均衡工具各有特点和优势,在不同的应用场景中发挥着重要作用。选择合适的负载均衡工具需要综合考虑性能、功能、稳定性、成本等因素。
|
2月前
|
弹性计算 开发框架 .NET
阿里云服务器购买教程及云服务器地域、实例、操作系统、带宽等参数选择指南
对于初次购买阿里云服务器的用户来说,想使用阿里云服务器搭建网站或者运行APP、小程序等项目,第一步就是要先购买阿里云服务器,下面小编以图文形式给大家介绍一下阿里云服务器的购买流程,以及购买过程中如何云服务器地域、实例、带宽等关键配置和选择这些参数的一些注意事项,以供参考。
|
2月前
|
负载均衡 应用服务中间件 nginx
Nginx的6大负载均衡策略及权重轮询手写配置
【10月更文挑战第9天】 Nginx是一款高性能的HTTP服务器和反向代理服务器,它在处理大量并发请求时表现出色。Nginx的负载均衡功能可以将请求分发到多个服务器,提高网站的吞吐量和可靠性。以下是Nginx支持的6大负载均衡策略:
170 7
|
2月前
|
负载均衡 算法 Java
腾讯面试:说说6大Nginx负载均衡?手写一下权重轮询策略?
尼恩,一位资深架构师,分享了关于负载均衡及其策略的深入解析,特别是基于权重的负载均衡策略。文章不仅介绍了Nginx的五大负载均衡策略,如轮询、加权轮询、IP哈希、最少连接数等,还提供了手写加权轮询算法的Java实现示例。通过这些内容,尼恩帮助读者系统化理解负载均衡技术,提升面试竞争力,实现技术上的“肌肉展示”。此外,他还提供了丰富的技术资料和面试指导,助力求职者在大厂面试中脱颖而出。
腾讯面试:说说6大Nginx负载均衡?手写一下权重轮询策略?
|
2月前
|
缓存 负载均衡 算法
nginx学习:配置文件详解,负载均衡三种算法学习,上接nginx实操篇
Nginx 是一款高性能的 HTTP 和反向代理服务器,也是一个通用的 TCP/UDP 代理服务器,以及一个邮件代理服务器和通用的 HTTP 缓存服务器。
78 0
nginx学习:配置文件详解,负载均衡三种算法学习,上接nginx实操篇
|
2月前
|
弹性计算 关系型数据库 MySQL
CentOS 7.x操作系统的ECS云服务器上搭建WordPress网站
CentOS 7.x操作系统的ECS云服务器上搭建WordPress网站