基于OpenStack的新建主机配置方法

文档序号:8395744阅读:492来源:国知局
基于OpenStack的新建主机配置方法
【技术领域】
[0001]本发明涉及一种软件配置方法,尤其涉及一种基于OpenStack的新建主机配置方法。
【背景技术】
[0002]OpenStack是由Rackspace和NASA共同开发的云计算平台,帮助服务商和企业内部实现类似于Amazon EC2和S3的云基础架构服务(Infrastructure as a Service, IaaS)。OpenStack包含两个主要模块:Nova和Swift,前者是NASA开发的虚拟服务器部署和业务计算模块;后者是Rackspack开发的分布式云存储模块,两者可以一起用,也可以分开单独用。OpenStack是开源项目,除了有Rackspace和NASA的大力支持外,后面还有包括Dell、Citrix、Cisco、Canonical这些重量级公司的贡献和支持,发展速度非常快,有取代另一个业界领先开源云平台Eucalyptus的态势。
[0003]OpenStack Compute (Nova)是一套控制器,用于为单个用户或使用群组启动虚拟机实例。OpenStack Compute在公共云处理方面堪与Amazon EC2 (亚马逊弹性云计算AmazonElastic Compute Cloud)相提并论;而在私有云方面也毫不逊色于VMware的产品。在公共云中,这套管理机制将提供预制的镜像或是为用户创建的镜像提供存储机制,这样用户就能够将镜像以虚拟机的形式启动。
[0004]目前以OpenStack为基础的虚拟机管理软件基于主机配置模板的概念来设计主机创建的流程,在建立主机之前,需要先在管理员菜单建立云主机的配置模板(云主机类型),然后在创建虚拟机时才能选择对应的主机配置模板(云主机类型),如图1所示。现有的openstack管理界面创建云主机的具体操作步骤如下:1)进入管理员面板;2)进入云主机类型(主机模板)菜单;3)选择创建新的云主机类型;4)填写该云主机类型的各种配置项;5)进入项目面板;6)进入云主机面板;7)并选择启动云主机;8)在主机类型处选择刚才创建好的主机类型;9)填入该云主机的其它配置项内容,完成云主机的创建。
[0005]由上述操作步骤可见,基于模板设计的云主机创建方式,在需要创建多台不同配置主机的情况下会显得非常繁琐,操作不便,无法像vmware创建主机时那样在主机创建界面直接调整主机的配置。

【发明内容】

[0006]本发明所要解决的技术问题是提供一种基于OpenStack的新建主机配置方法,能够直接调整主机配置而无需事先创建模板,以便于创建多台不同配置的主机,并同时保留配置模板的创建方式,简单方便,并且不会影响到openstack的功能性和稳定性。
[0007]本发明为解决上述技术问题而采用的技术方案是提供一种基于OpenStack的新建主机配置方法,所述OpenStack配置有前台配置界面dashboard模块、Nova模块和数据库,所述Nova模块包括:
[0008]Nova-api模块:供其他模块调用的对外接口模块;
[0009]Scheduler模块:根据当前资源使用情况,决定计算节点分布到哪台计算节点上;
[0010]Network模块:给虚拟机分配网络并进行管理,使外部PC可以直接访问;
[0011]所述Nova-api模块、Scheduler模块和Network模块运行时通过异步消息的方式,采用消息队列queue和所述数据库进行交互;所述配置方法包括如下步骤:a)截取来自dashboard模块创建主机的申请,并提供新的临时主机配置界面供用户进行配置;b)在临时主机配置界面获取到配置信息后生成配置模板文件,取代dashboard模块将所述配置信息存入数据库,并向Nova-api模块发起建立主机申请;c)在Nova-api模块响应该申请后,将控制权交还给dashboard模块,由dashboard模块配合Scheduler模块和Network模块继续完成后续的交互操作,完成新建主机配置。
[0012]上述的基于OpenStack的新建主机配置方法,其中,所述步骤a)通过在dashboard模块中设置插件的方式截取创建主机的申请。
[0013]上述的基于OpenStack的新建主机配置方法,其中,所述步骤a)发现dashboard模块与Nova-api模块的对应接口之间产生了相互调用之后,拦截dashboard模块生成的交互界面,并以新的临时交互界面进行取代。
[0014]上述的基于OpenStack的新建主机配置方法,其中,所述步骤a)在dashboard模块接收Nova-api模块和Nova_network模块返回消息的接口上完成对消息的过滤及拦截,所述步骤b)模拟dashboard模块的数据库操作,将临时生成的配置模板插入到数据库中,以供Nova-api模块和Nova-network模块调用。
[0015]本发明对比现有技术有如下的有益效果:本发明提供的基于OpenStack的新建主机配置方法,不对openstack底层进行修改的前提下,通过在openstack的dashboard与Nova-api之间插入一个功能模块,较为简便地实现直接调整主机配置而无需事先创建模板,以便于创建多台不同配置的主机,并同时保留配置模板的创建方式,以便于批量部署主机;本发明可以有效提高部署多台不同配置主机的工作效率,并降低操作人员的工作量,并且由于不对openstack的底层实现进行任何修改,所以该方法并不会影响到openstack的功能性和稳定性。
【附图说明】
[0016]图1为现有基于OpenStack的新建主机配置方法示意图;
[0017]图2为本发明基于OpenStack的新建主机配置方法示意图。
【具体实施方式】
[0018]下面结合附图和实施例对本发明作进一步的描述。
[0019]目前创建云主机的流程设计在大量创建同一配置的主机时会很便利,但若需要创建多台配置不同的主机时则并不方便,需要先创立多个不同配置的模板,然后在创建主机时再逐台选择对应的模板。在需要大量创建不同配置主机的情况下,基于模板的操作会降低工作效率。若可以像vmware之类的虚拟化软件一样,在创建主机时直接按需调整主机的配置,则可以避免多次进入不同的菜单操作,可以更加方便更加快捷的创建主机。
[0020]本发明主要在不对openstack底层进行修改的前提下,通过在openstack的dashboard与Nova-api之间插入一个功能模块,较为简便地实现在主机时直接调整主机配置而无需事先创建模板,以便于创建多台不同配置的主机,并同时保留配置模板的创建方式,以便于批量部署主机。本发明可以有效的提高部署多台不同配置主机的工作效率,并降低操作人员的工作量,并且由于不对openstack的底层实现进行任何修改,所以该方法并不会影响到openstack的功能性和稳定性。
[0021]请参见图2,本发明提供的基于OpenStack的新建主机配置方法,所述OpenStack配置有前台配置界面dashboard模块、Nova模块和数据库,所述Nova模块为NASA开发的虚拟服务器部署和业务计算模块,包括:
[0022]Nova-api模块:供其他模块调用的对外接口模块,openstack大部分的功能都可以通过前台配置界面调用后端的各种API来实现;
[0023]Scheduler模块:根据当前资源使用情况,决定计算节点分布到哪台计算节点上;
[0024]Network模块:给虚拟机分配网络并进行管理,使外部PC可以直接访问;
[0025]Compute模块:计算节点,使用虚拟化技术,host虚拟机;
[0026]Volume模块:给虚拟机分配额外持久化的存储;
[0027]所述Nova-api 模块、Scheduler 模块、Network 模块、Compute 模块和 Volume 模块运行时通过异步消息的方式,采用消息队列queue和所述数据库进行交互;其中,所述配置方法包括如下步骤:
[0028]a)截取来自dashboard模块创建主机的申请,并提供新的临时主机配置界面供用户进行配置;如通过在dashboard模块中设置插件的方式截取创建主机的申请;
[0029]b)在临时主机配置界面获取到配置信息后生成配置模板文件,取代dashboard模块将所述配置信息存入数据库,并向Nova-api模块发起建立主机申请;
[0030]c)在Nova-api模块响应该申请后,将控制权交还给dashboard模块,由dashboard模块配合Scheduler模块和Network模块继续完成后续的交互操作,完成新建主机配置。
[0031]本发明通过在后台生成对于用户而言透明的模板来实现,不需对openstack的底层架构进行大幅度改动,只需在openstack的前台dashboard与后台底层之间新增一个配置生成模块。在创建虚拟机时,可根据需求选择以原本的模式按事先保存下来的主机配置模板进行主机创建(适合创建多台同样配置的主机),也可选择在创建主机时再实时填写调整主机配置,再通过配置创建模块自动生成主机配置(适合建立多台配置各有不同的主机)。各功能模块的组成及主要实现过程如下:
[0032]1、嵌入dashboard端的探头功能
[0033]由于该配置自动创建模块需要截取dashboard的请求,所以该模块在前端dashboard上必须插入一个探头,用于发现用户通过dashboard模块发起的主机创建请求。本功能涉及修改的openstack代码模块为:
[0034]openstack—dashboard, hooks
[0035]openstack—dashboard
[0036]openst
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1