1. 什么是openStack
OpenStack是一个开源云计算项目,它控制整个数据中心内的大型计算,存储和网络资源池,所有资源都通过具有通用身份验证机制的API进行管理和配置。OpenStack为私有云和公有云提供可扩展的弹性的云计算服务。项目目标是提供实施简单、可大规模扩展、丰富、标准统一的云计算管理平台。
还提供了一个dashboard,可让管理员进行控制,同时授权其用户通过Web界面配置资源。
除了标准的基础架构即服务功能之外,其他组件还可以提供编排,故障管理和服务管理等其他服务,以确保用户应用程序的高可用性。
2. OpenStack的优势与挑战
优点:
- 易于扩展(实体server的灵活扩展, 服务的灵活扩展,模块化)
- 易于自动化(API调用)
- 快速开发(版本迭代)
- 强大的社区力量(大量用户和开发维护者)
挑战:
- 安装不是特别容易 (为了满足客户需求可能需要合理的配置)
- 兼容性于开发成本
- 升级很有挑战
- 对于某个版本的长期支持
- 厂商之间的利益纠纷
3. IAAS / PAAS /SAAS
-
IAAS
提供的服务是虚拟机。 IaaS 负责管理虚机的生命周期,包括创建、修改、备份、启停、销毁等。 使用者从云平台得到的是一个已经安装好镜像(操作系统+其他预装软件)的虚拟机。 使用者需要关心虚机的类型(OS)和配置(CPU、内存、磁盘),并且自己负责部署上层的中间件和应用。 IaaS 的使用者通常是数据中心的系统管理员。 典型的 IaaS 例子有 AWS、Rackspace、阿里云等。
-
PAAS
提供的服务是应用的运行环境和一系列中间件服务(比如数据库、消息队列等)。 使用者只需专注应用的开发,并将自己的应用和数据部署到PaaS环境中。 PaaS负责保证这些服务的可用性和性能。 PaaS的使用者通常是应用的开发人员。 典型的 PaaS 有 Heroku、Google App Engine、IBM BlueMix 等。 -
SAAS
提供的是应用服务。 使用者只需要登录并使用应用,无需关心应用使用什么技术实现,也不需要关系应用部署在哪里。 SaaS的使用者通常是应用的最终用户。 典型的 SaaS 有 Google Gmail、Salesforce 等