了解 OpenStack

云计算的定义

美国国家标准与技术研究院(NIST)指出,云计算是一种按量付费的模式,这种模式提供可用的,便捷的、按需的网络访问,进入可配置的计算资源共享池(资源包括网络、服务器、存储、应用软件、服务),这些资源能够被快速的提供,只需要投入少量的管理工作,或与服务供应商进行很少的交互。

云计算设计的技术领域

了解 OpenStack_第1张图片
技术领域

云计算的服务于交付模式

了解 OpenStack_第2张图片
交付模式
  • 基础设施即服务(LAAS)
  • 平台即服务(PAAS)
  • 软件即服务(SAAS)
  • 存储即服务
  • 数据库即服务
  • 安全即服务
  • 通信即服务
  • 集成即服务
  • 测试即服务
  • 处理即服务

四种常见的云计算部署模型

  • 公有云(阿里云、Azure、Amazon 等)
  • 社区云(学校搭建,教育使用等)
  • 私有云(公司自己搭建的 Openstack 平台)
  • 混合云(以上多个混合)

OpenStack 与云计算

  • MASA 与 Rackspace 合作开发的开源项目
  • 目的为私有云和公有云提供 LAAS 层的软件,可自定义化
  • 帮助服务商和企业实现亚马逊 Amazon EC2 和 S3的云基础架构
  • OpenStack 是一个 LAAS 层的软件
  • 得到 IBM、Dell、HP、AMD、Intel 等各大 IT 厂商的支持

其他的开源云计算软件

相比其他,Openstack 模块松耦合,组件配置灵活,二次开发容易。

  • Eucalyptus
  • OpenNebula
  • CloudStack

Openstack 的核心组件

  • Nova:Compute
  • Neutron(Quantum):Networking
  • Swift:Storage

Nova

  • 主要控制器,用 Python 语言编写。
  • 使用目前成熟的虚拟化技术(KVM、XenServer)来管理和自动化计算资源池的操作
  • Openstack 作为一个平台的存在,并不充当计算资源的提供者和资源的消费者

Swift

  • 对象存储项目,是一个可扩展并且提供了冗余的存储系统。
  • 对象和文件分散存储在同一集群的多台服务器的磁盘上,由 OpenStack 复制数据的复制和一致性。
  • 用于存储大量静态数据的分布式存储系统,没有主从,便于系统扩展和数据的冗余和持久化。
  • 通过添加服务器方便的完成横向扩展。
  • 如果磁盘出现失败,OpenStack 会复制数据到集群中的其他节点。

Cinder

  • 块存储服务,为云环境中的计算提供块设备的创建、添加和卸载。
  • 适用于性能要求高的应用场景:比如数据库
  • 块设备的快照功能可以实现基于块存储卷的数据备份,而且也可以利用快照进行数据恢复。

Neutron

  • OpenStack 的网络服务
  • 提供云计算环境下的虚拟网络功能,目的是为 OpenStack 云更灵活的划分物理网络,在多租户情况下给每个租户提供独立的网络环境
  • 用户可以创建自己的网络,控制网络流量,也可以控制服务器和设备连接到多个网络
  • 多各种管理模式(FlatDHCP 模式、Flat 模式、VLAN 模式)

Horizon(Dashboard)

  • Dashboard 为管理员提供一个图形化接口
  • 可以访问和管理基于云计算的资源-计算、存储、网络等。
  • 高可扩展性,支持第三方自定义模块,计费,监控,和额外的管理工具。
  • 支持二次开发

其他共享服务

  • Identity Service
  • Image Service
  • Telemetry Service
  • Orchestration Service
  • Database Service

Identity Service(Keystone)

  • 提供用户目录集中式存储,便于其他 OpenStack 服务的访问
  • 可以和现有的目录服务相结合,提供企业内部的单点目录的访问
  • 创建用户和租户,基于角色的方式限制用户和租户访问云计算中的计算、网络和存储等资源。
  • 支持多种方式校验:(用户名和密码、令牌认证、证书认证)

Image Service(Glance)

  • 镜像服务,提供磁盘和服务器虚拟镜像的查询、注册和传输的功能。
  • 本身并不存储镜像,只是一个代理,充当镜像存储服务和其他 OpenStack 组件之间的纽带。
  • 可以将磁盘和服务器镜像存储在 OpenStack 的后端服务上,比如对象存储服务系统上。
  • 利用镜像服务创建镜像模板,用户可以选择现有的镜像创建服务器。

Telemetry Service(Ceilometer)

  • 测量服务,可以收集云计算中不同服务的统计信息
  • 可以查看所有资源的统计信息或者单个资源的统计信息
  • 能收集 OpenStack 内部发生的所有事件收集起来,为计费监控提供数据支持

Orchestration Service(Heat)

  • 部署编排服务,提供通用模板定义的协调部署方式。
  • 模板驱动的引擎,允许应用开发人员使用提供的模板语言描述云环境的架构,通过自动化的方式部署云计算资源。
  • 与 Telemetry Service 结合,更好的实现云计算资源扩展自动化。

Database Service (Trove)

  • 提供可扩展可靠关系型数据库引擎服务。
  • 实现资源隔离,方便自动化管理。

你可能感兴趣的:(了解 OpenStack)