一种基于Terraform的OpenStack基础设施架构管理的方法技术

技术编号:21798505 阅读:52 留言:0更新日期:2019-08-07 10:21
本发明专利技术提出一种基于Terraform的OpenStack基础设施架构管理的方法,包括部署应用,部署应用的方法如下,S110、根据用户发送的请求信息调用对应的服务接口;S120、通过模板引擎从模板仓库获取对应的Terraform模板,并将请求信息存放到ETCD中;S130、通过Terraform执行器根据Terraform模板中对应的集群资源信息,构建对应的OpenStack基础设施架构;S140、通过Terraform执行器将执行结果发送到RabbitMQ队列中;S150、通过TOPIC监听RabbitMQ队列中指定队列的消息,根据监听的返回消息判断架构实例是否创建成功。本发明专利技术将基础设施架构部署以代码形式进行管理,通过对Terraform及OpenStack进行封装,可以实现OpenStack基础设施架构的高效部署。

An OpenStack Infrastructure Management Method Based on Terraform

【技术实现步骤摘要】
一种基于Terraform的OpenStack基础设施架构管理的方法
本专利技术涉及通信
,尤其涉及一种基于Terraform的OpenStack基础设施架构管理的方法、系统及计算机可读存储介质。
技术介绍
OpenStack是一个开源的云计算管理平台项目,为用户提供了直观易操作的基础设施管理功能,包括基础设施创建,删除,更新,信息查看等功能,用户只需通过在OpenStack的WEB页面上进行点击,就可以完成基础设施的创建、管理、配置等操作,为用户提供了一站式的服务,简化了用户的操作。然而,如果基础设施的架构比较复杂时,在OpenStack的WEB页面上做的操作会比较繁琐;而且当需要创建相同的基础设施架构时,在OpenStack的WEB页面需要进行相同的复杂的操作,大大增加了运维人员的工作负担。因此亟需一种OpenStack基础设施架构管理的方法,来满足用户快捷方便的操作需求。
技术实现思路
本专利技术提供一种基于Terraform的OpenStack基础设施架构管理的方法、系统及计算机可读存储介质,其主要目的在于通过对Terraform及OpenStack进行封装,可以实现OpenStack基础设施架构部署,方便集群信息的管理。为实现上述目的,本专利技术提供一种基于Terraform的OpenStack基础设施架构管理的系统,该系统包括:服务接口调用单元、模板获取单元、基础设施架构构建单元、执行结果发送单元、判断单元;所述服务接口调用单元,根据用户发送的请求信息调用对应的服务接口;所述模板获取单元,用于通过模板引擎从模板仓库获取对应的Terraform模板,并将请求信息存放到ETCD中;所述基础设施架构构建单元,用于通过Terraform执行器根据Terraform模板中对应的集群资源信息,创建对应的OpenStack基础设施架构;所述执行结果发送单元,用于通过Terraform执行器将执行结果发送到RabbitMQ队列中;所述判断单元,用于通过TOPIC监听RabbitMQ队列中指定队列的消息,根据监听的返回消息判断架构实例是否创建成功。进一步,优选的结构为,所述OpenStack基础设施架构包括后端服务器ECS、负载均衡SLB、VPC网络、弹性公网EIP。进一步,优选的结构为,所述应用的线程池大小为10-20。进一步,优选的结构为,所述基础设施架构构建单元包括:基础设施架构构建子单元、基础设施架构更新子单元、基础设施架构删除子单元;所述基础设施架构创建子单元,用于完成基础设施架构创建;所述基础设施架构更新子单元,用于完成基础设施架构更新;所述基础设施架构删除子单元,用于完成基础设施架构删除。进一步,优选的结构为,所述模板获取单元包括基础设施架构模板管理子单元;所述基础设施架构模板管理子单元包括:模板上传模块,用于根据用户的需求,编写Terraform模板文件,将所述Terraform模板文件上传到模板仓库中,并利用项目名称对不同架构模板进行区分;模板管理模块,通过Tags对所述模板仓库中的架构模板进行区分管理,以实现通过项目名称及Tags与架构模板的一一对应;模板修改模块;通过调整基础设施架构中的基础架构信息进行架构模板的修改,并利用Tags对架构模板进行修改版本的区分。本专利技术还保护一种基于Terraform的OpenStack基础设施架构管理的方法,应用于电子装置,包括部署应用,部署应用的方法如下:S110、根据用户发送的请求信息调用对应的服务接口;S120、通过模板引擎从模板仓库获取对应的Terraform模板,并将请求信息存放到ETCD中;S130、通过Terraform执行器根据Terraform模板中对应的集群资源信息,构建对应的OpenStack基础设施架构;S140、通过Terraform执行器将执行结果发送到RabbitMQ队列中;S150、通过TOPIC监听RabbitMQ队列中指定队列的消息,根据监听的返回消息判断架构实例是否创建成功。进一步,优选的方法为,所述基础设施架构管理的方法支持负载均衡,横向部署应用的数量大于等于2。进一步,优选的方法为,在步骤S130中,构建对应的OpenStack基础设施架构,包括对基础设施架构的创建、更新和删除。进一步,优选的方法为,在步骤S120中,还包括对基础设施架构模板管理的方法,方法步骤如下:S210、根据用户的需求,编写Terraform模板文件,将所述Terraform模板文件上传到模板仓库中,并利用项目名称对不同架构模板进行区分;S220、通过Tags对所述模板仓库中的架构模板进行区分管理,以实现通过项目名称及Tags与架构模板的一一对应;S230、通过调整基础设施架构中的基础架构信息进行架构模板的修改,并利用Tags对架构模板进行修改版本的区分。本专利技术还保护一种计算机可读存储介质,所述计算机可读存储介质中包括基于Terraform的OpenStack基础设施架构管理的程序,所述基于Terraform的OpenStack基础设施架构管理的程序被处理器执行时,实现如上所述的基于Terraform的OpenStack基础设施架构管理的方法的步骤。本专利技术提出的基于Terraform的OpenStack基础设施架构管理的方法、系统及计算机可读存储介质,有益效果如下:1、通过对Terraform及OpenStack进行封装,可以实现OpenStack基础设施架构快速部署,方便集群信息的管理;2、将基础设施架构部署以代码形式进行管理,用户管理基础架构时,只需关注架构本身即可;3、具有很高的复用性,用户将进行基础设施架构部署时使用的资源信息以代码形式进行版本管理;后续需要进行相同架构部署时,直接使用保存的架构模板进行创建,不必再从OpenStack的WEB页面上对架构中的每个资源进行手工的重复创建;4、当需要构建大规模集群时,可以横向扩展,在不同节点同时高效进行集群的创建,各个扩展节点间无依赖关系,可横向扩展,扩展性能好,从而提高了集群创建效率。附图说明图1为本专利技术的基于Terraform的OpenStack基础设施架构管理的方法原理示意图;图2为创建基础设施架构的方法流程图;图3为更新基础设施架构的方法流程图;图4为删除基础设施架构的方法流程图;本专利技术目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。具体实施方式应当理解,此处所描述的具体实施例仅仅用以解释本专利技术,并不用于限定本专利技术。本专利技术提供一种基于Terraform的OpenStack基础设施架构管理的系统。参照图1所示,为基于Terraform的OpenStack基础设施架构管理的方法原理示意图。该系统包括:服务接口调用单元、模板获取单元、基础设施架构构建单元、执行结果发送单元、判断单元。其中,所述服务接口调用单元,根据用户发送的请求信息调用对应的服务接口;所述模板获取单元,用于通过模板引擎从模板仓库获取对应的Terraform模板,并将请求信息存放到ETCD中;所述基础设施架构构建单元,用于通过Terraform执行器根据Terraform模板中对应的集群资源信息,创建对应的OpenStack基础设施架构;所述执行结果发送单元,用于通过Terraform执行器将执行结果本文档来自技高网...

【技术保护点】
1.一种基于Terraform的OpenStack基础设施架构管理的系统,其特征在于,包括至少一个应用,所述应用包括:服务接口调用单元、模板获取单元、基础设施架构构建单元、执行结果发送单元、判断单元;所述服务接口调用单元,根据用户发送的请求信息调用对应的服务接口;所述模板获取单元,用于通过模板引擎从模板仓库获取对应的Terraform模板,并将请求信息存放到ETCD中;所述基础设施架构构建单元,用于通过Terraform执行器根据Terraform模板中对应的集群资源信息,创建对应的OpenStack基础设施架构;所述执行结果发送单元,用于通过Terraform执行器将执行结果发送到RabbitMQ队列中;所述判断单元,用于通过TOPIC监听RabbitMQ队列中指定队列的消息,根据监听的返回消息判断架构实例是否创建成功。

【技术特征摘要】
1.一种基于Terraform的OpenStack基础设施架构管理的系统,其特征在于,包括至少一个应用,所述应用包括:服务接口调用单元、模板获取单元、基础设施架构构建单元、执行结果发送单元、判断单元;所述服务接口调用单元,根据用户发送的请求信息调用对应的服务接口;所述模板获取单元,用于通过模板引擎从模板仓库获取对应的Terraform模板,并将请求信息存放到ETCD中;所述基础设施架构构建单元,用于通过Terraform执行器根据Terraform模板中对应的集群资源信息,创建对应的OpenStack基础设施架构;所述执行结果发送单元,用于通过Terraform执行器将执行结果发送到RabbitMQ队列中;所述判断单元,用于通过TOPIC监听RabbitMQ队列中指定队列的消息,根据监听的返回消息判断架构实例是否创建成功。2.根据权利要求1所述的基于Terraform的OpenStack基础设施架构管理的系统,其特征在于,所述OpenStack基础设施架构包括后端服务器ECS、负载均衡SLB、VPC网络、弹性公网EIP。3.根据权利要求1所述的基于Terraform的OpenStack基础设施架构管理的系统,其特征在于,所述应用的线程池大小为10-20。4.根据权利要求1所述的基于Terraform的OpenStack基础设施架构管理的系统,其特征在于,所述基础设施架构构建单元包括:基础设施架构构建子单元、基础设施架构更新子单元、基础设施架构删除子单元;所述基础设施架构创建子单元,用于完成基础设施架构创建;所述基础设施架构更新子单元,用于完成基础设施架构更新;所述基础设施架构删除子单元,用于完成基础设施架构删除。5.根据权利要求1所述的基于Terraform的OpenStack基础设施架构管理的系统,其特征在于,所述模板获取单元包括基础设施架构模板管理子单元;所述基础设施架构模板管理子单元包括:模板上传模块,用于根据用户的需求,编写Terraform模板文件,将所述Terraform模板文件上传到模板仓库中,并利用项目名称对不同架构模板进行区分;模板管理模块,通过Tags对所述模板仓库中的架构模板进行区分管理,以实现通过项目名称及Tags与架构模板的一一对应;模板修改模块;通过调...

【专利技术属性】
技术研发人员:赵建昌赵山
申请(专利权)人:山东浪潮云信息技术有限公司
类型:发明
国别省市:山东,37

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1