《OpenStack高可用集群(上册):原理与架构》—2.2.3 计算服务Nova

举报
华章计算机 发表于 2019/05/28 22:02:39 2019/05/28
【摘要】 本书摘自《OpenStack高可用集群(上册):原理与架构》一书中的第2章,第2.2.3节,作者是山金孝。

2.2.3 计算服务Nova

Nova是OpenStack中最为核心和复杂的项目之一,也是OpenStack中使用最多和最为成熟稳定的项目。Nova的主要功能是对虚拟机进行管理并提供虚拟机运行所需的主要资源,Nova是OpenStack作为IaaS服务的基石,此外,Nova在通用服务器上进行计算能力弹性水平扩展的特性是OpenStack成为先进云计算平台最为主要的原因之一。在OpenStack提供的IaaS服务中,Nova还提供了实例生命周期管理、计算资源管理、网络与授权管理、基于REST的API服务和异步连续通信等功能,虽然其中的某些功能模块已从Nova项目中分离成为独立项目,但是这些项目的基本功能仍然没变。在OpenStack中,Nova与其多个OpenStack服务之间会进行相互访问,如Nova使用Keystone服务进行访问者的身份验证,使用Horizon作为其图形界面管理接口,使用Cinder提供的块存储服务作为虚拟机的磁盘存储,此外,Nova还需使用Glance提供的镜像服务以创建虚拟机实例,使用Neutron提供的网络服务为虚拟机之间和虚拟机与外网之间的通信提供服务。在IaaS架构里,虚拟服务器是最主要的服务,其他的网络、存储、镜像、监控、自动编排等服务都是为实现虚拟机的正常运行提供服务的,因此,Nova与这些服务项目之间都存在交互,这也是Nova最为复杂和重要的原因。图2-11是Nova最初的逻辑设计图,随着OpenStack社区的壮大和项目的不断增多,Nova项目的服务在不断精简,其中的Nova-Network尽管在目前OpenStack版本中仍被保留,但是其未来版本中将会被Neutron完全替换,而Nova-Volume项目已被Cinder项目替换。

image.png

图2-11 Nova逻辑框架图

虽然Nova项目的子服务在不断精简,但是Nova项目的服务功能并没有随之减少,相反,从Nova中分离的项目变得更为独立且功能强大,例如Neutron拥有比Nova-Network更为丰富完善的网络功能,Cinder也拥有比Nova-Volume更为完善的存储后端,同时Nova与分离后的这些项目仍然通过消息机制进行服务交互。在目前的Nova版本中,最主要的三个子服务分别是Nova-api、Nova-compute和Nova-scheduler,其中Nova-api服务响应客户端请求,Nova-scheduler负责响应请求后端的过滤规划,如根据设定的过滤规则进行创建实例请求的计算节点选取,而Nova-compute则是最核心的服务,提供虚机实例运行所需的计算资源,如CPU、内存等。

需要指出的是,虽然Nova提供了创建虚拟机和管理虚拟机生命周期的功能,但是Nova本身不提供虚拟化引擎,而是通过集成与虚拟化引擎相关的软件以API调用的形式来控制各种Hypervisor,目前Nova支持的Hypervisor有:Xen Server、LXC、KVM、UML、VMware vSphere、QEMU、Hyper-V、PowerVM以及Docker等,用户可以根据自己的技术优势和计算资源的类型需求选取适合自己的Hypervisor。


【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。