openstack核心组件有哪些:基础分工清晰
openstack核心组件有哪些,主流稳定版本里核心组件包含计算服务Nova、镜像服务Glance、对象存储Swift、块存储Cinder、网络服务Neutron、身份认证Keystone、面板服务Horizon,搭配可选的元数据服务,整套组件面向云平台运维人员、私有云搭建工程师,适合部署K版本及之后的标准私有云环境,轻量化测试环境可以不部署Swift对象存储组件,只保留计算、认证、网络、镜像、块存储和面板组件即可完成基础云主机创建流程。
openstack核心组件基础功能说明
Nova计算服务负责虚拟机生命周期管理,接收调度指令,调用底层虚拟化驱动,支持KVM、QEMU等虚拟化类型,你下发创建云主机的请求时,Nova会筛选可用计算节点,分配资源,启动实例,同时处理实例重启、迁移、删除等操作,它不存储镜像文件,只调用Glance获取镜像数据。
Keystone身份认证服务是整套平台的权限入口,管理用户、项目、角色、服务端点,所有其他组件的接口访问都需要先向Keystone申请令牌,校验权限后才能执行操作,新增组件接入openstack集群时,都要在Keystone里注册服务地址和权限策略。
Glance镜像服务统一管理云主机镜像文件,支持raw、qcow2等主流镜像格式,镜像可以本地存储,也可以对接Swift存放,Nova创建实例的时候会从Glance拉取镜像,写入目标节点的存储位置,镜像上传、删除、版本管理都由这个组件处理。
Neutron网络服务提供软件定义网络能力,创建子网、路由器、浮动IP、安全组,打通虚拟机之间、虚拟机和外网的通信链路,支持多种网络插件,能够实现多租户网络隔离,租户之间的网络流量默认相互隔离,降低互相干扰的概率。
Cinder块存储服务给云主机提供可挂载的持久化磁盘卷,卷可以创建、扩容、快照、迁移,虚拟机删除之后,块存储卷的数据可以保留,挂载到其他实例继续使用,和Swift的区别在于它是块设备,适合数据库这类需要低延迟读写的业务。
Swift对象存储服务用于存放对象类型数据,适合图片、备份文件、静态资源,数据多副本分散存储在不同节点,具备较强的数据冗余能力,小型私有云业务量不大时,一般可以跳过这个组件,减少集群部署复杂度。
Horizon面板服务是Web可视化管理界面,封装各个组件的API操作,不懂命令行的运维人员可以直接在页面上创建虚拟机、配置网络、挂载磁盘,后台操作最终都会转化为调用各个核心组件的接口请求。
| 组件名称 | 资源类型 | 适合业务 | 部署取舍 |
|---|---|---|---|
| Nova | 计算实例 | 云主机业务 | 必选 |
| Cinder | 块存储卷 | 数据库、业务盘 | 推荐部署 |
| Swift | 对象存储 | 文件备份、静态资源 | 可选 |
| Neutron | 虚拟网络 | 多租户网络隔离 | 必选 |
组件之间依靠API消息解耦,单个组件故障,大多数情况下不会直接造成全部云主机宕机。
该组件清单适用于标准私有云,边缘轻量化云场景、容器混合云场景会删减部分组件,替换为适配轻量架构的模块。
