|NO.Z.00010|——————————|CloudVirtualiZation|——|OpenStack&组件.V01|——|OpenStack-nova|组件说明|
一、相关说明:nova是什么:
### --- nova是什么:
~~~ openstack是由Rackspace和NASA共同开发的云计算平台,基础设施集服务。
~~~ 是管理底层虚拟化,而它本身不是虚拟化。
~~~ 类似于Amazon EC2 和S3的云基础架构服务;nova在开发的时候就是遵循Amazon EC2来开发的。
~~~ Nova在OpenStack中提供云计算服务。
~~~ 超过140家企业及18470位开发者参与开发。
二、参与开发的厂商

### --- 参与开发的厂商
~~~ RedHat和惠普代码的贡献量是比较大的。
三、组件说明-API
### --- 组件说明-API
~~~ nova-api service接收并响应终端用户计算API调用,该服务支持openstack计算API,AMazon EC2 和特殊的管理特权API
~~~ nova-api-metadata service接受从实例元数据发来的请求,该服务通常与nova-network服务在安装多主机模式下运行
~~~ nova-compute service 一个守护进程,通过虚拟化层API接口创建和终止虚拟机实例,例如:XenAPI forXenServer/XCP,libvirt for KVM or QEMU,VMwareAPI for VMware
~~~ nova-scheduler service 从队列中获取虚拟机实例请求,并确认由那台计算服务运行虚拟机;负责调度到对应的虚拟机之上。
~~~ nova-conductor module 协调nova-compute服务和database之间的交互数据。避免nova-compute服务直接访问云数据库,不要将该模块部署在nova-compute运行的节点上。compute这个节点是不可以直接访问到数据库节点之上的,中间加了一层nova-comductor module协调调度。
~~~ nova-network worker daemon类似于nova-compute服务,接收来自队列的网络任务和操控网络,比如这只网卡桥接或改变iptables规则
~~~ nova-consoleauth daemon在控制台提供用户授权令牌,
~~~ nova-novncproxy daemon提供了一个通过VNC连接来访问运行的虚拟机实例的代理,支持基于浏览器的novnc客户端
~~~ nova-spicehtml5proxy daemon提供了一个通过spice连接来访问运行的虚拟机实例的代理。支持基于浏览器的HTML5客户端
~~~ nova-xvpnvncproxy daemon提供了一个通过VNC连接来访问运行的虚拟机实例的代理,支持openstack-specific Java客户端
~~~ nova-cert daemon x509证书
~~~ nova-objectstore daemon 一个Amazon S3的接口,用于将Amazon S3的镜像注册到openstackkeuca2ools client用于兼容于Amazon E23.cn接口的命令行工具
~~~ nova client nova命令行管理工具
~~~ The queue在进行质检传递消息的中心。通常使用RabbitMQ;官方推荐使用RabbitMQ服务
~~~ SQL database保存云基础设置建立和运行时的状态信息
四、组件说明-位置顺序

### --- 组件说明-位置顺序
~~~ Nova-API用于请求的接收
~~~ 如果是创建请求的话,nova-api会使用到scheduler服务来调度,会使用到compute服务。
~~~ 管理我们的虚拟机的启动,来管理我们虚拟机。
~~~ compute不是管理工具,会使用compute Driver来检测,来调用libvirt来管理,
~~~ 再来创建对应的虚拟机即可Xenia,KVM
五、nova内部沟通

### --- nova内部沟通
~~~ 为什么引入消息队列,这里需要使用到异步同步的服务。
~~~ PubSubHubBub持续的监控,同步当前的物理机性能状态,方便下一步Scheduler资源调度。
六、nova同其它组件沟通

### --- nova同其它组件沟通
~~~ nova:cloud controller分为控制节点和真正的实例节点。
~~~ 控制节点:进行实例的分派,到特定的实例上去运行,
~~~ 控制节点在一个时段内,可用的只有一个。也可能是经过调度之后一个
~~~ compute:可以有多个,因为它是基于分布式的。
~~~ 仪表盘或客户端:去访问nova服务或者compute服务的话,会先得到它的端点。
~~~ 通过hypervisor通过调度去去创建的。
七、虚拟机启动流程

### --- 虚拟机启动流程
~~~ 创建虚拟机的请求会通过API转移
Walter Savage Landor:strove with none,for none was worth my strife.Nature I loved and, next to Nature, Art:I warm'd both hands before the fire of life.It sinks, and I am ready to depart
——W.S.Landor
分类:
cdv012-openstack
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· DeepSeek 开源周回顾「GitHub 热点速览」