openstack创建VM

将裸机进行计算,存储和网络虚拟化,并利用openstack组件进行控制。这里我简单说下虚拟机创建过程中组件怎么发挥作用,首先是界面下发创建虚拟机指令,nova组件记录好虚拟机的规格信息并根据信息 分别向glance申请镜像,向neutron申请网络。此时glance就会从swift那里下载原始镜像,而cinder会为vm分配一个存储空间,最后虚机成功创建。在这过程,动作都要向Keystone进行鉴权操作,而ceilometer则充当监控作用。

Nova里创建VM流程

Nova创建VM的流程大致是1.客户向 API发送请求建一个虚机 2.然后API对请求做一些必要处理后,向 Messaging发送了一条消息然后让 Scheduler 创建一个虚机 3.Scheduler从 Messaging 获取到 API 发给它的消息,然后执行调度算法,从若干计算节点中选出节点 4.Scheduler 向 Messaging 发送了一条消息:“在计算节点上创建这个虚机”5.计算节点的 Compute从 Messaging 中获取到 Scheduler 发给它的消息,然后在本节点的 Hypervisor 上启动虚机。6.在虚机创建的过程中,Compute 如果需要查询或更新数据库信息,会通过 Messaging 向 Conductor发送消息,最后Conductor 负责数据库访问。

虚拟化

虚拟化:
Qemu 是纯软件实现的虚拟化模拟器,几乎可以模拟任何硬件设备

Hypervisor把硬件相关的CPU/内存/硬盘/网络资源全面虚拟化,并提供虚拟机VM给上层VNF进行使
用。
计算虚拟化:采用裸金属架构的虚拟化技术,实现对服务器物理资源的抽象,将CPU、内存、I/O等
服务器物理资源转化为一组可统一管理、调度和分配的逻辑资源,并基于这些逻辑资源在单个物理服务器上构建多个同时运行、相互隔离的虚拟机执行环境,实现更高的资源利用率,同时满足应用更加灵活的资源动态分配需求,譬如提供虚拟机高可用等特性,实现更低的运营成本、更高的灵活性和更快速的业务响应速度。
存储虚拟化:将存储设备进行抽象,以逻辑资源的方式呈现,统一提供全面的存储服务。可以在不
同的存储形态,设备类型之间提供统一的功能。
网络虚拟化:在服务器的CPU中实现完整的虚拟交换的功能,虚拟机的虚拟网卡对应虚拟交换的一
个虚拟端口,服务器的物理网卡作为虚拟交换的上行端口。

Q.E.D.