什么是OpenStack
OpenStack是一个云操作系统,同时又是一个开源的组织,并且还是一个基金会,通过它里面的各种组件可以管理整个数据中心的大型计算,存储和网络资源池。
OpenStack主要模块
1. Keystone
身份服务 ( Identity Service ) 云环境中所有的服务之间的授权和认证都需要经过 keystone,它包括身份验证、令牌的发放和校验、服务列表、用户权限的定义等。
2. Nova
计算服务 ( Compute ) Nova 负责维护和管理云环境的计算资源,是 OpenStack 的最核心的服务模块之一
3. Glance
镜像服务 ( Image Service ) 给云主机提供镜像服务,来安装操作系统,其中还包括虚拟机镜像的查找、上传、删除、改名。 同时用户也可以在已经生成和个性化安装后的云虚拟机实例来生成自定义的镜像。 这样以后就可以根据该自定义镜像直接生成所需的虚拟机实例。
4. Neutro
网络服务 ( Network ) 为云主机提供网络服务的一个组件
支持SDN与多种物理网络类型,OVN、Linux Bridge、Hyper-V 、OVS bridge
功能包括对网络、子网、路由、浮云ip、安全组的增、删、查、改
5. Swift
对象存储 ( Object Storage ) 提供 OpenStack 对象存储,存储的是一些资源文件,如图片、代码等文件,在OpenStack平台中,任何的数据都是一个对象。 这些储存的数据还可通过URL链接的方式分享给别人。
6. Cinder
块存储 (Block Storage) 给服云主机提供硬盘存储的一个服务,它可以对接后端的NFS、Ceph、GlusterFs 等网络文件系统一起配合使用。
7. Horizon
UI 界面 (Dashboard) Horizon 为 Openstack 提供一个 WEB 前端的管理界面 (UI 服务 )通过 Horizone 所提供的 DashBoard 服务 , 管理员可以使用通过 WEB UI 对 Openstack 整体云环境进行管理 , 并可直观看到各种操作结果与运行状态。
8. Ceilometer
监控 (Metering) Ceilometer是OpenStack中的一个子项目,它像一个漏斗一样,能把OpenStack内部发生的几乎所有的事件都收集起来,然后为计费和监控以及其它服务提供数据支撑。 Celiometer是OpenStack的计量与监控组件,官方的正式名称为OpenStack Telemetry,用来获取和保存计量与监控的各种测量值,并根据测量值进行报警。同时这些保存下来的测量值也可以被第三方系统获取,用来做更进一步的分析、处理或展示。
9. Heat
部署编排 (Orchestration) Heat是OpenStack提供的自动编排功能的组件,基于描述性的模板,来编排复合云应用程序; 用户可以通过OpenStack管理控制台、Heat命令行工具或 API对模板及其相关的资源集进行设置和更新。
10.Ironic
Ironic是OpenStack的一个子项目,用于实现在云里像管理虚拟机一样管理裸机,当虚拟主机的性能不能满足业务的需求了这时可以用裸机来跑业务。
OpenStack共享服务组件
服务 | 组件 |
---|---|
数据库服务( Database Service ) | MairaDB 及 MongoDB |
消息传输(Message Queues) | RabbitMQ |
缓存(cache) | Memcached |
时间(time sync) | NTP |
存储(storge provider) | eph、GFS、LVM、ISICI等 |
高可用及负载均衡 | pacemaker、HAproxy、keepalive、lvs等 |