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

网友投稿 692 2022-05-29

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项目替换。

图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。

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

OpenStack 云计算

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:亿级 Elasticsearch 性能优化
下一篇:【docker系列】docker基础概念-容器、镜像以及引擎组成部分
相关文章