文档目录

集群

概览

集群:一组物理机(计算节点)的逻辑集合。在数据中心中,一个集群一般对应了一个机架。

规划集群时,需注意:
  • 集群内所有物理机须拥有相同的操作系统。
  • 集群内所有物理机须拥有相同的网络配置。
  • 集群内所有物理机须能够访问相同的主存储。
  • 集群需加载主存储、二层网络后,才可提供云主机服务。
  • 集群的规模,也就是每个集群中可以包含物理机的最大数量,没有限制。

以下对集群与各个资源之间的关系进行说明。

集群 | 区域

支持多集群操作。可在一个区域内创建多个集群,新增的物理机可以按需添加到不同的集群之中。

集群 | 主存储和二层网络

集群中可以加载或卸载主存储和二层网络。它们之间的结构关系如图 1所示:
图 1. 集群、主存储、二层网络的关系


Note:
主存储和二层网络加载到集群时需注意:
  1. 集群 | 主存储
    • 一个主存储可以加载到多个集群。
    • 一个集群可以加载多个主存储。
      目前支持的同类型主存储场景如下:
      • 一个集群可以加载一个或多个本地主存储。
      • 一个集群可以加载一个或多个NFS主存储。
      • 一个集群可以加载一个或多个Shared Block主存储。
      • 一个集群可以加载一个Shared Mount Point主存储。
      • 一个集群只能加载一个Ceph主存储。
      • 一个集群只能加载一个Vhost主存储。
      • 一个集群只能加载一个CBD主存储。
      • 一个集群只能加载一个AliyunNAS主存储,除此之外不能再加载新的存储。
      • 一个集群只能加载一个AliyunEBS主存储,除此之外不能再加载新的存储。
      目前支持的组合类型主存储场景如下:
      • 一个集群可以加载一个本地主存储和一个NFS主存储。
      • 一个集群可以加载一个本地主存储和一个Shared Mount Point主存储。
      • 一个集群可以加载多个本地主存储和多个Shared Block主存储。
      • 一个集群可以加载一个Ceph主存储和最多三个本地存储。
      • 一个集群可以加载一个Ceph主存储和一个Shared Block主存储。
      • 一个集群可以加载一个Ceph主存储和多个Shared Block主存储。
      • 一个集群可以加载多个NFS主存储和多个Shared Block主存储。
      主存储与集群的依赖关系如表 1所示:
      主存储 集群
      Local Storage 支持加载一个或多个本地存储
      NFS 支持加载一个或多个NFS
      Shared Block 支持加载一个或多个Shared Block
      Shared Mount Point 支持加载一个Shared Mount Point
      Ceph 是加载到集群的Ceph,有且仅有一个
      Vhost 支持加载一个Vhost
      CBD 支持加载一个CBD
      AliyunNAS 是加载到集群的AliyunNAS,有且仅有一个
      AliyunEBS 是加载到集群的AliyunEBS,有且仅有一个
      Local Storage + NFS 支持加载1个Local Storage + 1个NFS
      Local Storage + SMP 支持加载1个Local Storage + 1个Shared Mount Point
      Local Storage + Shared Block 支持加载多个Local Storage + 多个Shared Block
      Ceph + LocalStorage 支持加载1个Ceph + 最多3个LocalStorage
      Ceph + Shared Block
      • 支持加载1个Ceph + 1个Shared Block
      • 支持加载1个Ceph + 多个Shared Block
      NFS + Shared Block 支持加载多个NFS + 多个Shared Block
    • 集群加载多个本地存储时,务必在添加物理机以及添加主存储之前,提前在物理机对应URL上做好分区,确保每个本地存储部署在独占的逻辑卷或物理磁盘上。
    • 主存储可以被所在集群中的所有物理机访问。
    • 如果数据中心的网络拓扑发生改变导致主存储不能被集群中的物理机继续访问,主存储可以从集群卸载。
  2. 集群 | 二层网络
    • 一个集群可以加载一个或多个二层网络;一个二层网络可以加载到多个集群。
    • 集群可以加载VXLAN Pool,VXLAN Pool下不同的VNI可用于创建不同的VxlanNetwork。
    • 一个网卡只能创建一个NoVlanNetwork。
    • 对于VlanNetwork,不同VLAN ID代表不同的二层网络。
    • 如果数据中心的网络拓扑发生改变导致集群中的物理机不再在二层网络所代表的物理二层广播域中,二层网络也可以从集群卸载。

集群 | 镜像服务器

集群与镜像服务器没有直接依赖关系,一个镜像服务器可以为多个集群提供服务。

集群中所加载的主存储和镜像服务器具有相关性,如表 2所示:
PS\BS ImageStore Ceph
Local Storage ×
NFS ×
Shared Mount Point ×
Ceph
Shared Block ×
Vhost ×
CBD ×
  • 当主存储为LocalStorage、NFS、Shared Mount Point类型时,镜像服务器的默认类型为ImageStore。
  • 当主存储为NFS或Shared Mount Point类型时,可将相应共享目录手动加载到相应镜像服务器的本地目录上,从而使主存储和镜像服务器均能使用网络共享存储方式。
  • 当主存储为Ceph类型时,镜像服务器可以使用同一个Ceph集群作为镜像服务器,也可以使用ImageStore类型的镜像服务器。
  • 当主存储为Shared Block类型时,镜像服务器的默认类型为ImageStore。
  • 当主存储为AliyunNAS类型时,镜像服务器的默认ImageStore。
  • 当主存储为AliyunEBS类型时,镜像服务器的默认类型为AliyunEBS。

清单

属性

名字 描述 可选的 可选的参数值 起始支持版本
uuid 请参见资源属性 0.6
name 请参见资源属性 0.6
description 请参见资源属性 0.6
hypervisorType 请参见 cluster hypervisor type
  • KVM
0.6
state 请参见资源属性
  • Enabled
  • Disabled
0.6
zoneUuid 包含集群的区域uuid。 请参见 zone 0.6
createDate 请参见资源属性 0.6
lastOpDate 请参见资源属性 0.6
type 保留域 0.6
userTags 用户标签,请参见 创建用户标签(CreateUserTag) 0.6
systemTags 系统标签, 请参见 创建系统标签(CreateSystemTag) 0.6

示例

{
    "inventories":
        {
            "createDate": "Oct 30, 2017 1:50:00 PM",
            "description": "",
            "hypervisorType": "KVM",
            "lastOpDate": "Oct 30, 2017 1:50:00 PM",
            "name": "Cluster-1",
            "state": "Enabled",
            "type": "zstack",
            "uuid": "5c3699713b1c43219de14df7545f24d0",
            "zoneUuid": "e59b71e99d8a4ea1952b578388b8cd1d"
        }
}

虚拟机管理程序类型(Hypervisor Type)

虚拟机管理程序类型指明了哪种虚拟机管理程序(操作系统, operating system)被安装在集群中的物理主机上。

可用状态(State)

集群有两种可用状态: 启用(Enabled)和禁用(Disabled),类似于 zone。 当改变集群的可用状态时,操作会被迭代到集群中的所有物理主机;例如,禁用一个集群也会禁用集群中的所有物理主机。

操作(Operations)

创建一个集群(CreateCluster)

管理员可以使用CreateCluster命令来创建一个集群。例如:
CreateCluster name=cluster1 hypervisorType=KVM zoneUuid=1b830f5bd1cb469b821b4b77babfdd6f

参数(Parameters)

名字 描述 可选的 可选的参数值 起始支持版本
zoneUuid 父区域的uuid 0.6
name 资源名字, 请参见 资源属性 0.6
resourceUuid 资源uuid, 请参见 资源属性 0.6
description 资源描述description,请参见 资源属性 0.6
hypervisorType 请参见 cluster hypervisor type
  • KVM
  • Simulator
4.0.0
type 保留域,请不要使用 0.6
architecture
  • x86_64
  • aarch64
  • mips64el
4.0.0
tagUuids 标签UUID列表 4.0.0
userTags 用户标签, 请参见 创建用户标签(CreateUserTag); 资源类型是 ClusterVO 0.6
systemTags 系统标签,请参见 创建系统标签(CreateSystemTag); 资源类型是 ClusterVO 0.6
timeout

删除一个集群(DeleteCluster)

管理员可以使用DeleteCluster命令来删除一个集群。例如:
DeleteCluster uuid=c1bd173d5cd84f0e9e7c47195ae27ec6

参数(Parameters)

名字 描述 可选的 可选的参数值 起始支持版本
uuid 集群的uuid 0.6
deleteMode 请参见 删除资源(Delete Resources)
  • Permissive
  • Enforcing
0.6
userTags 用户标签, 请参见 创建用户标签(CreateUserTag); 资源类型是 ClusterVO 0.6
systemTags 系统标签,请参见 创建系统标签(CreateSystemTag); 资源类型是 ClusterVO 0.6
timeout

查询集群(QueryCluster)

管理员可以使用QueryCluster命令来查询集群。例如:
QueryCluster hypervisorType=KVM
QueryCluster primaryStorage.availableCapacity>=100000000

原生域查询(Primitive Fields of Query)

请参见 cluster inventory

嵌套和扩展查询(Nested And Expanded Fields of Query)

域(Field) 清单(Inventory) 描述 起始支持版本
zone 请参见 zone inventory 父区域(parent zone) 0.6
host 请参见 host inventory 属于这个集群的物理主机 0.6
vmInstance 请参见 vm inventory 属于这个集群的云主机 0.6
l2Network 请参见 L2 network inventory 这个集群挂载的L2网络 0.6
l2VlanNetwork 请参见l2VlanNetwork inventory 这个集群挂载的使用VLAN创建二层广播域的L2网络 0.6
primaryStorage 请参见 primary storage inventory 这个集群挂载的主存储 0.6

更新集群(UpdateCluster)

管理员可以使用UpdateCluster命令来更新集群。例如:
UpdateCluster uuid=26aad17353dd4de0ac7bc5540d76da23 name=test

参数(Parameters)

名字 描述 可选的 可选的参数值 起始支持版本
uuid 集群的uuid 0.6
name 资源名字, 请参见 资源属性 0.6
description 资源描述description,请参见 资源属性 0.6
userTags 用户标签,请参见 创建用户标签(CreateUserTag);资源类型是 ClusterVO 0.6
systemTags 系统标签,请参见 创建系统标签(CreateSystemTag); 资源类型是 ClusterVO 0.6
timeout

改变一个集群的可用状态(ChangeClusterState)

管理员可以使用ChangeClusterState改变一个集群的可用状态。例如:
ChangeClusterState uuid=26aad17353dd4de0ac7bc5540d76da23 stateEvent=enable

参数(Parameters)

名字 描述 可选的 可选的参数值 起始支持版本
uuid 集群的uuid 0.6
stateEvent 可用状态触发事件
  • enable
  • disable
0.6
userTags 用户标签,请参见 创建用户标签(CreateUserTag);资源类型是 ClusterVO 0.6
systemTags 系统标签,请参见 创建系统标签(CreateSystemTag); 资源类型是 ClusterVO 0.6
timeout

升级集群内物理主机的操作系统(UpdateClusterOS)

管理员可以使用UpdateClusterOS命令来升级集群内物理主机的操作系统。例如:
UpdateClusterOS uuid=fb498a6086ea43449f33d5bbb9daa73e

参数(Parameters)

名字 描述 可选的 可选的参数值 起始支持版本
uuid 集群的uuid 0.6
excludePackages 不升级的包列表 3.7.0
updatePackages 要升级的包列表 3.7.0
releaseVersion 升级所用源的版本 3.7.0
resourceUuid 3.7.0
force 强制
  • true
  • false
5.2.0
tagUuids 标签UUID列表 3.7.0
systemTags 系统标签,请参见 创建系统标签(CreateSystemTag); 资源类型是 ClusterVO 0.6
userTags 用户标签,请参见 创建用户标签(CreateUserTag);资源类型是 ClusterVO 0.6
timeout

标签(Tags)

用户标签

管理员可以使用resourceType=ClusterVO在集群上创建用户标签。 例如:
CreateUserTag resourceType=ClusterVO resourceUuid=80a979b9e0234564a22a4cca8c1dff43 tag=secureCluster

系统标签(System Tags)

保留容量(Reserved Capacity)
标签(Tag) 描述 示例 起始支持版本
host::reservedMemory::{capacity} 请参见物理主机容量保留(Host Capacity Reservation) host::reservedMemory::1G 0.6
CLI命令使用手册 | 5.4.12 | ZStack Cloud · ZCF | ZStack 资源中心