OpenStack 每日学习课程

日期: 2026年4月1日
主题: Nova - 计算服务


🎯 核心概念:云端的"任务调度中心"

想象你经营一家大型酒店:

  • Nova 就像酒店的前台+调度中心
  • 客人(用户)来前台说:"我要一间房"
  • 前台查看哪些房间空闲,安排入住
  • 房间就是虚拟机实例
  • 不同楼层就是不同的计算节点

Nova 的本质:管理虚拟机的全生命周期——创建、调度、停止、迁移、销毁。


⚙️ 工作原理:关键组件协作

Nova 采用分布式架构,各司其职:

组件 角色 职责
nova-api 前台接待 接收用户请求,参数校验
nova-scheduler 调度员 决定在哪台机器创建虚拟机
nova-compute 执行者 在计算节点上实际创建/管理虚拟机
nova-conductor 协调员 数据库访问代理,解耦 compute 与数据库
nova-console 窗口服务 提供 VNC/SPICE 远程控制台访问

创建虚拟机的流程:

  1. 用户通过 API/Horizon 发起创建请求
  2. nova-api 接收并校验
  3. nova-scheduler 根据策略(CPU、内存、权重)选出目标计算节点
  4. nova-compute 在目标节点调用底层 Hypervisor 创建虚拟机
  5. 虚拟机启动,用户可通过 console 访问

🏢 实际应用场景

场景一:弹性扩容

电商大促期间,流量激增。运维通过 Nova 快速创建数十台虚拟机实例,部署应用服务,活动结束后自动销毁,按需付费。

场景二:开发测试环境

开发团队需要隔离的测试环境。通过 Nova 创建多套独立的虚拟机,每套配置不同版本依赖,互不干扰,用完即删。

场景三:故障迁移

某计算节点硬件故障,Nova 可将运行的虚拟机热迁移到其他健康节点,业务不中断。这是 Nova 的高级特性,依赖共享存储。


🛠️ 动手练习

  1. 命令行体验: 使用 openstack server list 查看已有实例
  2. 创建实例: 尝试 openstack server create --flavor m1.small --image cirros test-vm
  3. 思考题: nova-scheduler 有多种过滤策略(FilterScheduler),如果所有计算节点负载都很高,会发生什么?

📊 今日总结

维度 内容
是什么 OpenStack 的计算服务,管理虚拟机全生命周期
核心能力 创建、调度、迁移、销毁虚拟机实例
关键组件 api、scheduler、compute、conductor
依赖关系 需要 Keystone 认证、Glance 镜像、Neutron 网络
类比理解 酒店:Nova=前台调度,虚拟机=房间,计算节点=楼层
一句话记忆 Nova 是 OpenStack 的"计算大脑",决定 VM 在哪跑、怎么跑

💡 下期预告: Neutron - 网络服务,虚拟世界的"网线"与"路由器"

results matching ""

    No results matching ""