天天看点

搭建Nginx+tomcat负载均衡服务实例在VMware+docker环境进行。1. 安装步骤

实例在VMware+docker环境进行。

1. 安装步骤

1.1. 准备tomcat服务器的docker镜像

镜像预先安装好需要的基础设施,包含:jdk1.7、tomcat7,然后执行docker commit命令保存好镜像,为后续备用。

如图是已经生成好的镜像:

搭建Nginx+tomcat负载均衡服务实例在VMware+docker环境进行。1. 安装步骤

1.2. 使用tomcat服务镜像运行一个容器实例

在实例中我们运行两台tomcat服务,所以需要运行两个容器实例。

搭建Nginx+tomcat负载均衡服务实例在VMware+docker环境进行。1. 安装步骤

在docker的虚拟局域网内的IP分别是172.17.0.8和172.17.0.7:

搭建Nginx+tomcat负载均衡服务实例在VMware+docker环境进行。1. 安装步骤
搭建Nginx+tomcat负载均衡服务实例在VMware+docker环境进行。1. 安装步骤

1.3. 准备nginx服务器的docker镜像

详细参考nginx安装指导。

然后将已安装nginx基础设施的镜像保存为新的镜像。

如图已经安装好:

搭建Nginx+tomcat负载均衡服务实例在VMware+docker环境进行。1. 安装步骤

1.4. 使用nginx服务镜像运行一个容器实例

注意要给容器中nginx服务端口在宿主配置一个映射端口,以便物理机能访问到容器的nginx,例子指定宿主的8089端口给容器的80(nginx默认监听80)。

搭建Nginx+tomcat负载均衡服务实例在VMware+docker环境进行。1. 安装步骤

1.5. Nginx配置负载均衡参数

这个很简单,主要使用upstream配置项进行配置。

这里同时也修改了记录请求分发日志的格式。

在http项里配置日志:

搭建Nginx+tomcat负载均衡服务实例在VMware+docker环境进行。1. 安装步骤

在http项配置负载均衡:

搭建Nginx+tomcat负载均衡服务实例在VMware+docker环境进行。1. 安装步骤

如上使用的IP哈希的负载均衡算法,同时配置实际的后台服务器访问IP和端口(backup项是备份服务,平时不会访问到,当正常的服务都退出或宕机,流量才会到backup服务,这项不是必须)。

在http/server项配置请求分发规则:

搭建Nginx+tomcat负载均衡服务实例在VMware+docker环境进行。1. 安装步骤

如上所有/CloudEnd请求都被负载均衡处理了。

同时也设置了几个响应头信息,这部分可以不用配置。

1.6. 测试负载均衡服务

如上在物理机浏览器调用示例接口(servlet实现的简单示例),调用成功。

在看nginx请求分发日志:

搭建Nginx+tomcat负载均衡服务实例在VMware+docker环境进行。1. 安装步骤

可以看到来自192.168.148.1的终端访问了multiPay.do接口,实际请求的后端服务器是172.17.0.8:8080。

另外在容器中使用curl命令调用服务:

搭建Nginx+tomcat负载均衡服务实例在VMware+docker环境进行。1. 安装步骤

再看日志:

搭建Nginx+tomcat负载均衡服务实例在VMware+docker环境进行。1. 安装步骤

可以看到来自172.17.0.8的终端访问了multiPay.do接口,实际请求的后端服务器是172.17.0.7:8080。

以上说明应用服务器和负载均衡服务都运行正常。

1.6. 架构图

搭建Nginx+tomcat负载均衡服务实例在VMware+docker环境进行。1. 安装步骤

继续阅读