思考题:

  • AWS模式是什么,有什么优点?
  • IaaS模式核心需求有哪些?
  • Openstack都包含哪些核心项目,作用是什么?
  • 镜像和实例有什么区别和联系?
  • Nova有哪些核心模块,工作过程是什么?
  • Keystone权限控制过程是什么?
  • Quantum原理是什么?
  • Cinder存储的机制是什么?
  • Swift的核心概念有哪些?
  • Swift的组件有哪些,都有什么作用?

    虚拟化资源管理工具概述

  • AWS

    • 用户应用使用IaaS基础IT资源,将PaaS和通用服务作为应用架构中的组件来构建自己的服务
    • 特点:通过web service接口开放数据和功能,一切以服务实现,通过SOA的架构使得系统达到松耦合
    • 服务:访问层、通用服务层、PaaS层和IaaS层
    • 独立包装秤service,认证授权、按需使用、按用计费
  • OpenStack是AWS的一种开源实现,Swift+Nova=OpenStack,核心组件

image.png

  • Openstack compute (nova)
  • Openstack ojbect storage (swift)
  • Image service (glance)
  • Identity (keystone)
  • Dashboard (horizon, not mentioned below)
  • Network connectivity (quantum)
  • Block storage (cinder)
    • IaaS的核心功能需求
  • 云拥有者
    • 配置和操作基础架构
  • 服务的提供者
    • 注册云服务
    • 查看服务的使用情况
    • 查看服务的计费情况
  • 服务的使用者
    • 创建和存储自定义的镜像
    • 启动、监控、终止实例

      镜像管理

  • 镜像是IaaS中的核心概念,是计算和存储服务的载体
  • 镜像是固定搭配,实例是固定搭配的一个实例
  • 镜像管理:镜像存储管理,有哪些镜像,镜像大小,格式,创建者,日期等等
  • Glance

    • 注册登陆和检索虚拟机镜像
    • REST API
    • 通过API实现镜像管理服务请求
    • Registry:存储、处理和检索镜像元数据
    • database:镜像元数据存储
    • 通过API——检索glance registry——访问glance database

      计算管理

  • Nova是一套控制器,用于为单个用户或使用群组启动虚拟机实例,将提供预制的镜像或是为用户创建的镜像提供存储机制,用户可以通过镜像以虚拟机的形式启动

  • (资源——镜像——虚拟机)——控制
  • Nova有哪些核心模块,工作过程是什么?

    • 核心模块:Cloud Controller,Compute Node
    • 工作过程:nova api——queue(scheduler)——nova compute——glance——hypervisor——nova database——nova volume——nova network

      权限控制

  • OpenStack权限管理——Keystone服务

    • Identify
    • Token
    • Catalog
    • Policy
  • Keystone的特点
    • 基于Token的管理方式,基于租户管理资源
    • 用户访问服务前通过认证拿到token,同时keystone该用户将访问该服务的记录
    • 用户通过token访问服务
    • 服务提供者根据token到keystone处核实验证
  • keystone的流程

    • 用户向keystone提供credentials,然后从keystone处获得token
    • 用户通过token访问服务,服务提供者会向keystone验证权限

      网络管理

  • OpenStack网络管理——quantum

    • 提供被管理设备间的网络连接服务
    • 允许用户自定义网络并使用
    • 支持plugin,SDN和Openflow
    • 自定义子网地址、公私有网络
    • API:访问接口;抽象层:网络、子网、端口和路由
  • Quantum原理

    • 云端虚拟出一对机器,多种类型用户之间互联
    • 不同的租户对应一个或多个虚拟网卡
    • IP模式:
      • 固定IP,分配给虚拟机实例使用
      • 浮动IP,分配给虚拟机实例的外网地址,通过NAT实现
    • 连接方式:FLAT模式、FlatDHCP模式、VLAN模式

      存储管理

  • OpenStack块存储管理Cinder

    • 块存储单元“卷”,多个卷可以挂载到同一个虚机,也可以在虚机间移动
    • 同一个卷只能同时被挂载到一个虚机
    • 块存储管理:块设备到虚机的创建、挂载和卸载
    • 提供一个API,然后有一个scheduler,最下方是真实的Cinder Volume(卷)
    • 存储方式:本地存储、网络存储、iSCSI、EMC、IBM
    • H版新增功能:卷大小调整、卷备份、用户间的卷透明转移和交换、QoS、更多driver
  • OpenStack对象存储Swift
    • 存储:存储内容的组织形式+读写协议,Swift是一种对象存储
    • 核心概念和组件
      • Object对象:基本的存储实体,所有数据按照对象进行存储
      • Container容器:对象的承载体,组织数据的方式,类似于文件夹,但是不能嵌套
      • Accout账户:权限单位,拥有一个或多个container
      • Replication副本
      • Updater更新器
      • Auditor校验器
    • 工作流程,一个Proxy Server有若干个Object Server、Container Server、Accout Server组成,每个Zone有一个Proxy Server,多个Zone汇聚到一个Load Balancer上。用户通过API访问对象存储。

      容器管理

      kubernetes略