一种基于nginx的CloudFoundry内网部署方案的制作方法

文档序号:11156770阅读:593来源:国知局
一种基于nginx的Cloud Foundry内网部署方案的制造方法与工艺

本发明涉及计算机软件应用技术领域,具体涉及一种基于nginx的Cloud Foundry内网部署方案。



背景技术:

在云计算领域存在很多开发空间的如今,许多企业政府机关单位都开始使用PaaS架构来解决应用的部署问题,在这之中很多企业选择成熟的Cloud Foundry体系,这之中不乏会遇到很多问题,例如公司网络规划不规范导致ip地址的紧张,在安装Cloud Foundry时就会出现ip地址过少导致无法安装的问题,以及灵活性过差等多方面缺点。另外,Cloud Foundry部署是多半要使用部署工具进行部署(常见的bosh等),这些部署工具也需要单独运维,存在两个管理端口(应用开发端口,后台运维端口)使得运维难度增加。

Nginx是一款面向性能设计的HTTP服务器,相较于Apache、lighttpd具有占有内存少,稳定性高等优势。nginx不采用每客户机一线程的设计模型,而是充分使用异步逻辑,削减了上下文调度开销,所以并发服务能力更强。整体采用模块化设计,有丰富的模块库和第三方模块库,配置灵活。 在Linux操作系统下,nginx使用epoll事件模型,得益于此,nginx在Linux操作系统下效率相当高。同时Nginx在OpenBSD或FreeBSD操作系统上采用类似于epoll的高效事件模型kqueue。



技术实现要素:

本发明要解决的技术问题是:本发明针对以上问题,提供一种基于nginx的Cloud Foundry内网部署方案,旨在创建一个完整的平台新体系,统一管理流程,降低运维难度,节省运维成本,部署中ip地址的节省与统一部署工具和平台本身,使二者可在一个体系下被统一管理。

本发明所采用的技术方案为:

一种基于nginx的Cloud Foundry内网部署方案,所述方案使用nginx把Cloud Foundry集群与部署相关的Bosh集群结合在一起,其中Nginx在Cloud Foundry最前端,在应用开发端口以及运维部署端口上层通过proxy代理转发来自客户端的所有请求,并将一些平台需要的附带功能架设在代理机器上,采用Cloud Foundry的域名机制来管理部署相关的bosh集群,Bosh集群采用统一的manager管理方式。

所述Bosh集群安装在内网环境中,使用不同地址段ip地址,路由功能由搭载Nginx的proxy负责。

所述方案将ntp与dns的自动化部署安装脚本集成进节点,把dns以及ntp功能作为可选参数搭载在节点上,或通过在相关配置中配置使用现有的服务器。

所述nginx负责cloud foundry与Bosh组成的系统的转发与负载均衡功能,其他优化细节均由其他程序负责。

所述dns与ntp功能由linux工具实现。

所述方案部署流程如下:

1)代理节点配置相关配置信息, server绑定域名地址,启动dns与ntp服务;

2)配置完相关服务之后启动服务;

3)客户端的请求发送到nginx所在的代理节点,代理节点会根据邦定的域名对请求进行分别的转发;

4)应用正常执行并返回结果给代理节点,代理节点将结果返回给客户端,从而实现以一个外部ip安装整个Cloud Foundry + Bosh的结构。

本发明的有益效果为:

本发明方案可以使管理整个系统变得各家聚合,一个ip一个出口的设计在实际的生产以及开发环境中都会有很大的优势。整个工具可以通过IaaS环境定制成模板以及定制成安装镜像,是的部署以及安装环境变得更加简单,开发人员和运维人员也可以更加有效的操作平台部署或者开发应用,大大的降低了运维部署的成本。

本方案提供的部署方案,使开发者和运维人员使用Cloud Foundry + Bosh这种体系更加简便、更加智能、更加易于管理,大大节约了运维成本、人员成本,缩短了部署与开发的周期。同时节省了可用ip的数量,在小规模ip持有者身边也可以构筑Cloud Foundry的体系,使Cloud Foundry使用起来更加友好。

附图说明

图1为本发明节点工作流程图。

具体实施方式

下面根据说明书附图,结合具体实施方式对本发明进一步说明:

实施例1:

一种基于nginx的Cloud Foundry内网部署方案,所述方案使用nginx把Cloud Foundry集群与部署相关的Bosh集群结合在一起,其中Nginx在Cloud Foundry最前端,在应用开发端口以及运维部署端口上层通过proxy代理转发来自客户端的所有请求,并将一些平台需要的附带功能架设在代理机器上,采用Cloud Foundry的域名机制来管理部署相关的bosh集群,Bosh集群采用统一的manager管理方式。

实施例2

在实施例1的基础上,本实施例所述Bosh集群安装在内网环境中,使用不同地址段ip地址,路由功能由搭载Nginx的proxy负责。

实施例3

在实施例1或2的基础上,本实施例所述方案将ntp与dns的自动化部署安装脚本集成进节点,把dns以及ntp功能作为可选参数搭载在节点上,或通过在相关配置中配置使用现有的服务器。

实施例4

在实施例3的基础上,本实施例所述nginx负责cloud foundry与Bosh组成的系统的转发与负载均衡功能,其他优化细节均由其他程序负责。

实施例5

在实施例4的基础上,本实施例所述dns与ntp功能由linux工具实现。

实施例6

在实施例5的基础上,本实施例所述方案部署流程如下:

1)代理节点配置相关配置信息,如upsteam(如果需要使用负载均衡),server绑定域名地址,启动dns与ntp服务;

2)配置完相关服务之后启动服务;

3)客户端的请求发送到nginx所在的代理节点,代理节点会根据邦定的域名对请求进行分别的转发,理论上这里可以支持多个haproxy(haproxy的数据功能同步要自己实现)和多个bosh管理工具;

4)应用正常执行并返回结果给代理节点,代理节点将结果返回给客户端,从而实现以一个外部ip安装整个Cloud Foundry + Bosh的结构。

实施方式仅用于说明本发明,而并非对本发明的限制,有关技术领域的普通技术人员,在不脱离本发明的精神和范围的情况下,还可以做出各种变化和变型,因此所有等同的技术方案也属于本发明的范畴,本发明的专利保护范围应由权利要求限定。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1