Docker和Nginx实现一个简单的负载均衡

当前使用centos7系统

1、安装nginx

参考http://blog.whsir.com/post-2078.html

2、docker拉取nginx镜像

docker pull nginx

3、创建两个目录

mkdir -p /data/demo1mkdir -p /data/demo2

分别在两个目录下创建两个index.html,demo1下index.html内容为this is demo1,demo2下index.html内容为this is demo2
4、通过docker运行两个nginx的容器,并将目录映射到刚刚创建的目录中

容器中80端口映射到8081

docker run --name nginx-demo1 -d -p 8081:80 -v /data/demo1:/usr/share/nginx/html nginx

容器中80端口映射到8082

docker run --name nginx-demo2 -d -p 8082:80 -v /data/demo2:/usr/share/nginx/html nginx

5、修改当前主机nginx配置文件,设置upstream

http {......upstream whsirserver {server 192.168.0.80:8081 weight=1;server 192.168.0.80:8082 weight=1;}server {......location / {proxy_set_header Host $host;proxy_set_header X-Real-IP $remote_addr;proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;proxy_pass http://whsirserver;}......}......}

6、保存退出重启nginx

nginx -tsystemctl restart nginx

7、验证
此时浏览器输入当前IP或者域名,刷新页面时,就会看到this is demo1和this is demo2内容是来回切换的,即表示nginx负载均衡配置成功

时间: 2024-10-10 03:40:24

Docker和Nginx实现一个简单的负载均衡的相关文章

nginx+iis实现简单的负载均衡_nginx

最近在研究分布式系统架构方面的知识,包括负载均衡,数据库读写分离,分布式缓存redis等.本篇先从负载均衡服务架构入手,关于负载均衡百度百科的定义如下:负载均衡,英文名称为Load Balance,其意思就是分摊到多个操作单元上进行执行,例如Web服务器.FTP服务器.企业关键应用服务器和其它关键任务服务器等,从而共同完成工作任务. 我的解释:一项任务交由一个开发人员处理总会有上限处理能力,这时可以考虑增加开发人员来共同处理这项任务,多人处理同一项任务时就会涉及到调度问题,即任务分配,这和多线程

Linux环境下Nginx 通过upstream如何配置负载均衡以及实现

一,服务器准备情况,四台: 1,前段服务器: 192.168.1.112  hosts定向测试域名nginx.21yunwei.com 192.168.1.113 备用前端服务器. 后端web服务器池web_pools: 192.168.1.102 192.168.1.103 2,环境:统一centos 6 前端服务器安装nginx.环境安装这里就不写了,可以参考文章<linux下如何安装nginx环境配置>部署nginx环境. 后端web服务器 池统一安装apache:yum install

Nginx+Keepalived实现Web服务器负载均衡

说明: 操作系统:CentOS 5.X 64位 Web服务器:192.168.21.127.192.168.21.128 站点:bbs.111cn.net和sns.111cn.net部署在两台Web服务器上 实现目的: 增加两台服务器(主主模式),通过Nginx+Keepalived实现Web服务器负载均衡 架构规划: Nginx服务器:192.168.21.129.192.168.21.130 虚拟服务器(VIP):192.168.21.252.192.168.21.253 部署完成之后: 1

使用Nginx反向代理实现简单的负载均衡

Nginx反向代理的原理优点: 反向代理可以简单的理解为:代理服务器来接收internet上的服务器请求,然后将请求转发给内部的服务器上,然后将结果返回给internet上请求的客户端,所以代理服务器对外表现出来的只是一台服务器.反向代理服务器也称为Web服务器加速,针对web服务器提供加速功能.他作为代理服务器,并不针对浏览器用户,而是针对一台或者多台特定的web服务器.可以缓存web的页面,降低web服务器的访问量,从而来降低web服务器的负载,实施反向代理,只要将反向代理设备放置在一台或多

nginx 详解反向代理负载均衡

什么是反向代理负载均衡 使用代理服务器可以将请求转发给内部的Web服务器,使用这种加速模式显然可以提升静态网页的访问速度.因此也可以考虑使用这种技术,让代理服务器将请求 均匀转发给多台内部Web服务器之一上,从而达到负载均衡的目的.这种代理方式与普通的代理方式有所不同,标准代理方式是客户使用代理访问多个外部Web 服务器,而这种代理方式是多个客户使用它访问内部Web服务器,因此也被称为反向代理模式. 实现这个反向代理能力并不能算是一个特别复杂的任务,但是在负载均衡中要求特别高的效率,这样实现起来

Nginx + Tomcat 动静分离实现负载均衡(转)

0.前期准备 使用Debian环境.安装Nginx(默认安装),一个web项目,安装tomcat(默认安装)等. 1.一份Nginx.conf配置文件 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61

Nginx实现网站多机负载均衡配置方法

Nginx的高并发特性就不用多说了,单机静态并发能承受大压力测试,但并不代表在搭载后端的情况下依然保持高并发,因为后端动态处理才是并发瓶颈.nginx作者初衷是为邮件提供多机反向代理,而这特性也正好能用在其他网络服务上,因为这是nginx原生基础服务,比apache等其他服务器需提供外部插件的实现形式显得更快捷高效. 传统负载均衡的方法是在后端服务器前设置一台前端服务器负责总调度,这是最简单的方式,当前端搭载的是nginx负责单点均衡,后端服务可以是任意web服务,譬如apache,tomcat

Debian下搭建Nginx和Tomcat服务器实现负载均衡的方案_nginx

负载均衡的基本概念 负载平衡(Load balancing)是一种计算机网络技术,用来在多个计算机(计算机集群).网络连接.CPU.磁盘驱动器或其他资源中分配负载,以达到最佳化资源使用.最大化吞吐率.最小化响应时间.同时避免过载的目的. 使用带有负载平衡的多个服务器组件,取代单一的组件,可以通过冗余提高可靠性.负载平衡服务通常是由专用软体和硬件来完成. 负载平衡最重要的一个应用是利用多台服务器提供单一服务,这种方案有时也称之为服务器农场.通常,负载平衡主要应用于Web网站,大型的Internet

Nginx的反向代理与负载均衡

1.1 集群是什么 简单地说,集群就是指一组(若干个)相互独立的计算机,利用高速通信网络组成的一个较大的计算机服务系统,每个集群节点(即集群中的每台计算机)都是运行各自服务的独立服器.这些服务器之间可以彼此通信,协同向用户提供应用程序.系统资源和数据,并以单一系统的模式加以管理.当用户客户机请求集群系统时,集群给用户的感觉就是一个单一独立的服务器,而实际上用户请求的是一组集群服务器. 打开谷歌.百度的页面,看起来好简单,也许你觉得用几分钟就可以制作出相似的网页,而实际上,这个页面的背后是由成千上