OpenStack是由美国国家航空航天局NASA)与Rackspace公司合作研发并发起的,以Apache许可证授权的自由软件和开放源代码的云计算技术解决方案,其是一个项目也是一个软件,主要用于实现云项目,以云项目操作系统而存在。作用: 用于部署公有云、私有云,并实现对云项目管理。
开发语言: Python
除此之外还有许多云管理平台:
- Apache CloudStack:Apache CloudStack是一种开源,多元管理程序,多租户,高可用性的基础架构即服务CMP,它通过为云环境提供完整的功能部件和组件堆栈来促进创建,部署和管理云服务。
- ManageIQ:它是用于混合IT环境的开源CMP,混合了公有云和私有云。
- Cloudify:Cloudify允许用户对应用程序的整个生命周期进行建模和自动化。
- Mist.io:Mist.io是一个简化云管理并帮助用户防止供应商和复杂性锁定的平台。
- VirtEngine:VirtEngine是一个开源CMP,可用于构建支持IaaS,PaaS和SaaS的私有或公有云。
- openQRM:openQRM是一个免费的开源云计算管理平台,用于管理异构数据中心基础架构。它为所有裸机和VM部署以及所有IT子系统提供了一个完整的自动化工作流引擎,从而可以对数据中心和云容量进行专业的管理和监控。
- OpenNebula:OpenNebula是一个简单但功能强大且灵活的交钥匙开源解决方案,用于构建私有云和管理数据中心虚拟化。
OpentStack核心组件及其功能
Compute 计算服务
代号: Nova
用于为用户管理虚拟机实例,根据用户需求提供虚拟服务。负责虚拟机创建、开机、关机等配置置CPU、内存等规格。
Networking 网络服务
代号: Neutron
为云平台提供网络虚拟化,为用户提供网络接口。
Object Storage 对象存储
代号: Swift
用于为云平台提供对象存储服务,允许使用其进行文件存储及检索。
Block Storage 块存储服务
代号: Cinder
用于为云平台提供块存储服务,管理块设备等,例如: 创建卷、删除卷等.
ldentity 身份认证
代号: Keystone
为OpenStack中其它服务提供身份验证、服务注册、服务令牌等功能。
Image Service 镜像服务
代号: Glance
为云平台虚拟机提供镜像服务,例如: 上传镜像、删除镜像等
Dashboard UI页面
代号: Horizon
用于为OpenStack提供Web管理门户,例如: 启动云主机、创建网络、设置访问控制等.
Metering 测量服务
代号: Ceilometer
为OpenStack中其它服务提供身份验证、服务注册、服务令牌等功能
Orchestration 编排部署
代号: Heat
为云平台提供软件运行环境自动化部署
Database Service 云数据库
代号: Trove
用于为用户提供在OpenStack环境中提供可扩展和可靠的关系型数据库或非关系型数据库引擎服务。
通过虚拟机来理解OpenStack组件
OpenStack与VM之间的关系如图:
我们通过创建虚拟机的过程来更好的了解每个组件的作用:
- 当我们创建虚机计算资源例如:4核CPU、16G内存计算资源用到的组件:Nova
- 给虚机装系统系统盘用到的组件:Cinder
- 给虚机提供网络的:Neutron
- 虚机需要系统用到提供镜像服务的:Glance
- 还有各个组件通信的身份认证和协调:Keystone
- 为了让客户使用更友好提供图像化界面的:Horizon
- ceilometer提供openstack的监控