术语:

  1. region 区域
    1. 地理或逻辑上的资源划分
    2. 包含多个 AZ
  2. domain
    1. 组织 user、group、project 的逻辑分组
    2. 关联多个 user:多对多
    3. 关联多个 project:一对多
  3. user
    1. 关联多个 project:多对多
  4. project 项目
    1. 替代 tenant 租户(正在丢弃)
    2. Region 下的资源的逻辑分组,尽管 OpenStack 中无资源集的概念
    3. 可以包含:
      1. 多个 VPC:一对多
      2. 多个 AZ:多对多
  5. AZ 可用区 Availability Zone
    1. 可用区是在同一区域下,电力、网络隔离的物理区域,可用区之间内网互通,不同可用区之间物理隔离。
    2. 物理资源分区:包含计算和存储节点
      1. 网络由 VPC 提供:
  6. VPC 虚拟私有云 Virtual Private Cloud
    1. 一组网络资源的实体(此处私网是指 Region 内部的私网)
      1. 一个 VPC 属于一个 project
    2. 同一个 VPC 下面的子网全部都可以互通
    3. 对等链接:同一 Region 下不同 VPC 的网络组网
    4. CC 云链接 Clond Connect:跨云跨 Region 的 VPC 的网络组网
  7. ECS 弹性云服务器 Elastic Cloud Server
  8. EIP 弹性 IP Elastic IP
    1. 相对于 VPC 的公网
  9. Security Group 安全组

OpenStack 底层服务组件

服务状态存储在数据库中(可选 MySQL、MariaDB、SQLite),服务间通信可选 AMQP、RabbitMQ。

  1. 公共
    1. Keystone 认证
    2. Glance 镜像
    3. Placement 调度
    4. Barbican secret 管理
  2. 网络
    1. Neutron SDN 网络
    2. Octavia LB 负载均衡
    3. Designate DNS
  3. 硬件(Hardware Lifecycle)
    1. Ironic 裸金属
    2. Cyborg 加速器
  4. 计算
    1. Nova 计算(CPU 和内存)
    2. Zun 容器
  5. 存储
    1. Cinder 块存储
    2. Swift 对象存储
    3. Manila 文件存储(共享存储)
  6. 上层
    1. Heat 自动化编排
  7. Appearance
    1. Horizon Web UI(HCS 不用)
    2. EC2API API 代理
  8. 运维
    1. 监控
      1. Ceilometer 流量监控(HCS 基于此二次开发了计费功能)
  9. 其他
    1. 客户端
      1. OpenStackClient
      2. Python SDK

核心关注组件:

  1. OpenStack Keystone 认证服务
  2. OpenStack Glance 镜像服务
  3. OpenStack Cinder 块存储
  4. OpenStack Swift 对象存储
  5. OpenStack Nova 计算资源
  6. OpenStack Neutron 网络管理

References

  1. OpenStack