一种OpenStack计算节点、存储节点、网络节点自动化部署方法技术

技术编号:38072919 阅读:14 留言:0更新日期:2023-07-06 08:41
本发明专利技术公开一种OpenStack计算节点、存储节点、网络节点自动化部署方法,属于云计算管理技术领域。本发明专利技术通过使用域名+端口80的方式暴露keystone、cinder、glance、nova、neutron组件的Restful Api服务,防止OpenStack控制节点因为计算节点、存储节点、网络节点的分离部署暴露过多端口,从而提高安全性,另外方便KVM、LVM、OVS部署配置内容的统一,减少错误发生的几率,提高部署效率。同时通过分离OpenStack控制节点、计算节点、存储节点、网络节点的部署方式,保证OpenStack控制平面和计算平面、存储平面、网络平面清晰分层,并且兼容实际已存在KVM、LVM、OVS的应用场景。OVS的应用场景。OVS的应用场景。

【技术实现步骤摘要】
一种OpenStack计算节点、存储节点、网络节点自动化部署方法


[0001]本专利技术属于云计算管理
,具体涉及一种OpenStack计算节点、存储节点、网络节点自动化部署方法。

技术介绍

[0002]OpenStack是一个开源的云计算管理平台项目,是一系列软件开源项目的组合,OpenStack支持几乎所有类型的云环境,项目目标是提供实施简单、可大规模扩展、标准统一的云计算管理平台。但是,OpenStack的整体安装非常复杂,长久以来,OpenStack部署难、升级难的问题经常为人诟病,简单、便捷、高效的部署升级方案是所有OpenStack用户的共性需求。OpenStack部署方案,从早期的DevStack(个人开发调试版本部署),到中期的Puppet、Ansible,集合了众多Linux的运维工具,不仅易用性低,难度更是挑战众多资深Linux用户底线,后来Docker容器和K8S的出现,给OpenStack的部署带来了曙光,OpenStack

Helm项目正是应需而生,它基于社区的实践,利用K8S实现OpenStack容器化部署,构建可靠、可扩展的OpenStack生产环境。
[0003]前中期的部署方案,包括DevStack、Puppet、Ansible,从可行性上,为OpenStack的部署迈出了艰难的一步,但是部署难度很高,近期的OpenStack

Helm项目,将OpenStack容器化部署结合到K8S集群管理中,极大的提升了OpenStack部署效率,降低了部署的难度,但是OpenStack

Helm项目将OpenStack所有组件容器化部署的方案在实际应用场景中也存在一些不足和问题。
[0004]使用OpenStack

Helm项目部署OpenStack的优势有目共睹,例如方便、快捷、平滑升级等,但是OpenStack

Helm项目同时也存在一些缺陷如下:
[0005]OpenStack

Helm项目将OpenStack的控制节点、计算节点、存储节点、网络节点全部使用容器方式部署在K8S集群中,又因为OpenStack的计算节点、存储节点、网络节点是随着用户的需求不断添加的,这就将本属于OpenStack自身的节点管理功能同步到了K8S集群,无形中扩大了K8S集群的管理规模,增加了K8S集群的管理难度和复杂度;同样,OpenStack的控制节点、计算节点、存储节点、网络节点全部部署在K8S集群中,使得控制平面和计算平面、存储平面、网络平面不能从组网架构上清晰的区分,为后期的网络维护和扩展埋下了隐患。
[0006]同时在众多应用场景中,客户环境在部署OpenStack前实际已经存在了大量计算节点(例如KVM计算节点)、存储节点(例如LVM存储节点)、网络节点(例如OVS网络节点),如果使用OpenStack

Helm项目部署,就需要将这些计算节点、存储节点、网络节点先安装K8S,然后再部署OpenStack,无疑增加了部署的复杂度、难度和工作量,对于客户而言,实施困难而不实用。

技术实现思路

[0007]本专利技术的目的是基于现有OpenStack

Helm项目,提出一种新的计算节点、存储节点、网络节点的部署方案,不仅保证OpenStack控制平面和计算平面、存储平面、网络平面清晰分层,兼容实际已存在KVM、LVM、OVS的应用场景,并且防止OpenStack控制节点因为计算节点、存储节点、网络节点的分离部署暴露过多端口,从而提高安全性。
[0008]为达到上述目的,解决上述技术问题,本专利技术的技术方案如下:
[0009]一种OpenStack计算节点、存储节点、网络节点自动化部署方法,自动化部署涉及的计算节点、存储节点、网络节点的组件定义如下,包括keystone、cinder、glance、nova、neutron;
[0010]所述keystone为访问OpenStack各组件提供认证和授权功能,通过暴露5000端口提供Restful Api服务,keystone组件只包括keystone

api子模块,部署在OpenStack控制节点;
[0011]所述cinder为云主机提供持久化的块存储,为云主机提供附加云盘,通过暴露8776端口提供Restful Api服务,cinder组件包括4个子模块cinder

api、cinder

scheduler、cinder

volume、cinder

backup,其中cinder

api、cinder

scheduler部署在OpenStack控制节点,cinder

volume、cinder

backup部署在存储节点上;
[0012]所述glance负责虚拟机镜像的获取、保存,通过暴露9292端口提供Restful Api服务,glance组件包括2个子模块glance

api、glance

registry,这2个模块只部署在OpenStack控制节点;
[0013]所述nova负责创建、调度、销毁云主机,通过暴露8774和8778端口提供Restful Api服务,nova组件包括7个子模块nova

api、nova

placement

api、nova

conductor、nova

scheduler、nova

consoleauth、nova

novncproxy、nova

compute,除nova

compute部署在计算节点外,其他均部署在控制节点;
[0014]所述neutron负责实现网络SDN功能,通过暴露9696端口提供Restful Api服务,neutron组件包括5个子模块neutron

server、neutron

plugin、neutron

l3

agent、neutron

dhcp

agent、neutron

ovs

agent,其中neutron

server、neutron

plugin部署在控制节点,neutron

l3

agent、neutron

dhcp

agent部署在网络节点,neutron
...

【技术保护点】

【技术特征摘要】
1.一种OpenStack计算节点、存储节点、网络节点自动化部署方法,其特征在于,所述自动化部署涉及的计算节点、存储节点、网络节点的组件定义如下,包括keystone、cinder、glance、nova、neutron;所述keystone为访问OpenStack各组件提供认证和授权功能,通过暴露5000端口提供Restful Api服务,keystone组件只包括keystone

api子模块,部署在OpenStack控制节点;所述cinder为云主机提供持久化的块存储,为云主机提供附加云盘,通过暴露8776端口提供Restful Api服务,cinder组件包括4个子模块cinder

api、cinder

scheduler、cinder

volume、cinder

backup,其中cinder

api、cinder

scheduler部署在OpenStack控制节点,cinder

volume、cinder

backup部署在存储节点上;所述glance负责虚拟机镜像的获取、保存,通过暴露9292端口提供Restful Api服务,glance组件包括2个子模块glance

api、glance

registry,这2个模块只部署在OpenStack控制节点;所述nova负责创建、调度、销毁云主机,通过暴露8774和8778端口提供Restful Api服务,nova组件包括7个子模块nova

api、nova

placement

api、nova

conductor、nova

scheduler、nova

consoleauth、nova

novncproxy、nova

compute,除nova

compute部署在计算节点外,其他均部署在控制节点;所述neutron负责实现网络SDN功能,通过暴露9696端口提供Restful Api服务,neutron组件包括5个子模块neutron

server、neutron

plugin、neutron

l3

agent、neutron

dhcp

agent、neutron

ovs

agent,其中neutron

server、neutron

plugin部署在控制节点,neutron

l3

agent、neutron

dhcp

agent部署在网络节点,neutron

ovs

agent部署在计算节点和网络节点;所述自动化部署的实现包括如下步骤:步骤1、根据角色拆解OpenStack

Helm项目,从keystone、cinder、glance、nova、neutron中划分出需要部署在计算节点、存储节点、网络节点上的子模块;在OpenStack

Helm项目中将nova

compute的部署文件daemonset

compute.yaml、neutron

ovs

agent的部署文件daemonset

ovs

agent.yaml、cinder

volume的部署文件deployment

volume.yaml、cinder

backup的部署文件deployment

backup.yaml、neutron

l3

agent的部署文件daemonset

l3

agent.yaml、neutron

dhcp

agent的部署文件daemonset

dhcp

agent.yaml去除,用以实现OpenStack

Helm项目计算节点、存储节点、网络节点部署的分离,达到控制平面和计算平面、存储平面、网络平面的拆分;步骤2、使用OpenStack

Helm部署OpenStack控制节点定义组件keystone、cinder、glance、nova、neutron的域名名称,分别为keystone

api.cloudos,cinder

api.cloudos,glance

api.cloudos,nova

api...

【专利技术属性】
技术研发人员:潘宗辉何继文黄学军刘蜀东朱玥刘辉军
申请(专利权)人:航天云网科技发展有限责任公司
类型:发明
国别省市:

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

1