使用docker搭建nginx集群,实现负载均衡


使用docker搭建nginx集群,实现负载均衡

:此次nginx 集群搭建测试在阿里云服务上搭建。

 

一、下载、安装nginx镜像、离线安装nginx镜像

(1) 可以访问网络的情况下使用 docker pull nginx 就可以拉取nginx 镜像地址;

(2) 没有网络的情况下,外网下载nginx.tar包,拷贝到xftp上,记住目录,cd到目录下, 使用  docker load -i nginx.tar(包名)   加载镜像;

(3) 此时 docker images 就会出现 nginx 镜像信息,就说明 安装nginx镜像成功;

(4) 接下来 简单的 运行一下 docker run --name nginx-test -p 8080:80 -d nginx - 命令 简单解释一下 --name + 容器名(自定义) -p +宿主机端口:容器端口 --d 后台运行 -- nginx 镜像名称 - 有其他docker命令不明白的,docker -h 查看帮助手册;

(5) 此时现在 宿主机IP+ 宿主机端口 访问就能看到 Welcome to nginx 页面。

二、拷贝nginx 配置文件夹和html文件

(1) 也可以自己去创建,文件夹拷贝出来之后,就可以删掉容器,这个nginx-test

三、搭建nginx服务器

(1) 准备搭新建nginx容器(宿主) docker run -d -it -p 8080:80 --name nginx8080 -v ~/conf:/etc/nginx -v ~/www:/usr/share/nginx/html nginx -v 是挂载的意思,将宿主机的文件映射到容器中;

(2) 更改html内容,查看挂载是否生效

 

(3) 再准备复制三个配置文件,这个文件多少可以根据多少个子级群创建。

 

① docker run -d -it -p 8081:80 --name nginx8081 -v ~/conf1:/etc/nginx -v ~/www1:/usr/share/nginx/html nginx

② docker run -d -it -p 8082:80 --name nginx8082 -v ~/conf2:/etc/nginx -v ~/www2:/usr/share/nginx/html nginx

③ docker run -d -it -p 8083:80 --name nginx8083 -v ~/conf3:/etc/nginx -v ~/www3:/usr/share/nginx/html nginx 

四、配置nginx default.cnf 进行负载均衡

(1) 目前为止,一共有4台 nginx 服务器,分别是端口8080,8081,8082,8083

 

查看网络详细信息docker network inspect adea3aa507d4 (bridge 虚拟网卡

 

(2) 配置以下信息

 

Upstream 主要作用就是负载均衡,就是大概类似轮询集群进行负载,weight用来分配策略,就是权重级别设置。分别对应1:2:2

 

配置完成以后进入主服务器容器 重启服务器

 

五、进行测试服务器请求权重比例

(1) 然后退出,分别修改三台服务器的html内容

 

(2) 可以用命令进行测试、也可以访问网页进行测试, 服务器的请求概率就是我们前面设定的 1:2:2比例

 

 

 

 

 

 

 

End ----------------------------------------------


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM