清单

属性

名字 描述 可选的 可选的参数值 起始支持版本
uuid 请参见 资源属性 0.6
name 请参见 资源属性 0.6
description 请参见 资源属性 0.6
zoneUuid 父区域的uuid 0.6
totalCapacity 磁盘总容量,单位为字节 0.6
availableCapacity 可用磁盘空间,单位为字节 0.6
url 请参见 url 0.6
type 主存储类型
  • SharedMountPoint
  • XSky
  • Ceph
  • NFS
  • ZSES
  • VCenter
  • LocalStorage
0.6
state 请参见 state
  • Enabled
  • Disabled
0.6
status 请参见 status
  • Connecting
  • Connected
  • Disconnected
0.6
attachedClusterUuids 主存储已经挂载了的集群uuid列表 0.6
createDate 请参见 资源属性 0.6
lastOpDate 请参见 资源属性 0.6

示例

{
    "inventories": {
            "attachedClusterUuids": [
                "967a353c2893409dab9312cf3033a98c"
            ],
            "availableCapacity": 152897413120,
            "availablePhysicalCapacity": 186166145024,
            "createDate": "Oct 30, 2017 3:05:29 PM",
            "description": "",
            "lastOpDate": "Oct 31, 2017 10:41:26 AM",
            "mountPath": "/zstack_ps",
            "name": "LS-1",
            "state": "Enabled",
            "status": "Connected",
            "systemUsedCapacity": 9330311168,
            "totalCapacity": 205177397248,
            "totalPhysicalCapacity": 205177397248,
            "type": "LocalStorage",
            "url": "/zstack_ps",
            "uuid": "037bd212f7a1488da4f94360ccfaf6ab",
            "zoneUuid": "e59b71e99d8a4ea1952b578388b8cd1d"
        }
}
Table 1. (Shared Block主存储清单)Shared Block primary storage inventory
名字 描述 可选的 可选的参数值 起始支持版本
uuid 请参见 资源属性 2.3.2
name 请参见 资源属性 2.3.2
description 请参见 资源属性 2.3.2
zoneUuid 区域UUID 2.3.2
url 未使用 2.3.2
totalCapacity 总空间 2.3.2
availableCapacity 可用空间 2.3.2
totalPhysicalCapacity 总物理空间 2.3.2
availablePhysicalCapacity 物理可用空间 2.3.2
systemUsedCapacity 系统使用空间 2.3.2
type 主存储类型
  • sharedblock
2.3.2
state state 2.3.2
status 请参见 status 2.3.2
mountPath 未使用 2.3.2
attachedClusterUuids 挂载的集群 2.3.2
sharedBlocks 2.3.2
sharedBlockGroupType 2.3.2
createDate 请参见 资源属性 2.3.2
lastOpDate 请参见 资源属性 2.3.2
groupBy 以字段分组,相当于MySQL中的group by关键字。例如groupBy=type 2.3.2
userTags 用户标签,请参见 创建用户标签(CreateUserTag) 2.3.2
systemTags 系统标签,请参见 创建系统标签(CreateSystemTag) 2.3.2
示例:
{
    "inventories": [
        {
            "attachedClusterUuids": [
                "4fe9c130224c4e59b0e8f3c5154c2cf6"
            ],
            "availableCapacity": 401458101248,
            "availablePhysicalCapacity": 400363094016,
            "createDate": "Jul 19, 2018 7:59:08 PM",
            "description": "",
            "lastOpDate": "Jul 19, 2018 8:01:37 PM",
            "mountPath": "SharedBlock",
            "name": "ps2-cluster3",
            "sharedBlockGroupType": "LvmVolumeGroupBasic",
            "sharedBlocks": [
                {
                    "createDate": "Jul 19, 2018 7:59:08 PM",
                    "diskUuid": "scsi-360014056cc00bd98c3740eeb9955af2c",
                    "lastOpDate": "Jul 19, 2018 7:59:08 PM",
                    "name": "disk-scsi-360014056cc00bd98c3740eeb9955af2c",
                    "sharedBlockGroupUuid": "17edb2c2f5b841069d043a28758434f6",
                    "state": "Enabled",
                    "status": "Connected",
                    "type": "LvmLogicalVolumeBasic",
                    "uuid": "37ce4c4747914c01919f5474d1c7edfe"
                },
],
            "state": "Enabled",
            "status": "Connected",
            "totalCapacity": 639883018240,
            "totalPhysicalCapacity": 639883018240,
            "type": "SharedBlock",
            "url": "sharedblock://ec6a1dbaf6d645a182e1f0e393eb0761",
            "uuid": "ec6a1dbaf6d645a182e1f0e393eb0761",
            "zoneUuid": "ddad0dc2c4bd4ffbb53147ea3dbf15c3"
        }
    ],
    "success": true
}
Table 2. (Shared Block 主存储连接状态清单)Shared Block primary StorageHostRef inventory
名字 描述 可选的 可选的参数值 起始支持版本
primaryStorageUuid 主存储UUID 2.3.2
hostUuid 物理机UUID 2.3.2
hostId 物理机ID 2.3.2
status 请参见 status
  • Connecting
  • Connected
  • Disconnected
2.3.2
createDate 请参见 资源属性 2.3.2
lastOpDate 请参见 资源属性 2.3.2
groupBy 以字段分组,相当于MySQL中的group by关键字。例如groupBy=type 2.3.2
userTags 用户标签,请参见 创建用户标签(CreateUserTag) 2.3.2
systemTags 系统标签,请参见 创建系统标签(CreateSystemTag) 2.3.2
示例:
{
    "inventories": [
        {
            "createDate": "Jul 19, 2018 7:59:09 PM",
            "hostId": 85,
            "hostUuid": "18fb1cf9713a4a50baf95fbaf37bfba6",
            "lastOpDate": "Jul 19, 2018 7:59:09 PM",
            "primaryStorageUuid": "17edb2c2f5b841069d043a28758434f6",
            "status": "Connected"
        }
    ],
    "success": true
}
Table 3. (Shared Block清单)Shared Block inventory
名字 描述 可选的 可选的参数值 起始支持版本
uuid 请参见 资源属性 2.3.2
name 请参见 资源属性 2.3.2
description 请参见 资源属性 2.3.2
sharedBlockGroupUuid 共享块设备组UUID 2.3.2
diskUuid 磁盘唯一标示(例如UUID, WWN, WWID) 2.3.2
type 主存储类型
  • sharedblock
2.3.2
state state 2.3.2
status 请参见 status 2.3.2
createDate 请参见 资源属性 2.3.2
lastOpDate 请参见 资源属性 2.3.2
groupBy 以字段分组,相当于MySQL中的group by关键字。例如groupBy=type 2.3.2
userTags 用户标签,请参见 创建用户标签(CreateUserTag) 2.3.2
systemTags 系统标签,请参见 创建系统标签(CreateSystemTag) 2.3.2
示例:
{
    "inventories": [
        {
            "createDate": "Jul 17, 2018 8:50:14 PM",
            "diskUuid": "lvm-pv-uuid-h6Zlks-feeq-Jonz-eXLw-tyso-NPXn-6B6jfs",
            "lastOpDate": "Jul 17, 2018 8:50:14 PM",
            "name": "disk-lvm-pv-uuid-h6Zlks-feeq-Jonz-eXLw-tyso-NPXn-6B6jfs",
            "sharedBlockGroupUuid": "ec6a1dbaf6d645a182e1f0e393eb0761",
            "state": "Enabled",
            "status": "Connected",
            "type": "LvmLogicalVolumeBasic",
            "uuid": "08dad40070054309b00d2174a1476675"
        }
],
    "success": true
}

容量(Capacity)

为了方便选择合适的主存储创建云盘,ZStack会监控主存储的容量。不同的主存储插件可能会汇报不同的磁盘容量:
  • 对于支持超分(over-provisioning)的主存储,汇报的存储容量会比实际的大;
  • 对于不支持超分的主存储,汇报的存储容量可能会小于或等于实际的大小。

NFS容量(NFS Capacity)

NFS不支持超分, 因此它的容量是用云盘的虚拟大小(volumes’ virtual sizes)根据以下公式计算出来的:
总容量 = NFS的总容量
可用容量  = 总容量 - sum(云盘的虚拟大小)

简单的说,云盘的虚拟大小就是当云盘被完全填满时的大小。例如,创建一个1G容量的云盘,在真正完全填满数据之前,可能会因为使用了thin-provisioning技术而实际只占用了10M的容量。

统一资源定位符(URL)

主存储需要使用URL字符串存储的信息来控制存储系统。虽然名字叫URL, 具体的字符串存储格式依据主存储的类型而定,并不完全等同于标准的URL规范,这样可以给插件更多的灵活性以存储一些不方便以URL格式存储的信息。

NFS主存储URL

对于NFS主存储, URL被编码为下面的格式:
nfs服务器的ip或域名:/目录的绝对路径
例如:
192.168.0.220:/storage/nfs/

可用状态(State)

主存储有两种可用状态:
  • Enabled:

    启用(Enabled)状态下,允许云盘被创建。

  • Disabled:

    禁用(Disabled)状态下,不允许云盘被创建。

连接状态(Status)

类似于物理机连接状态,主存储的连接状态反映了管理节点和主存储之间的命令通道的状态。命令通道是管理节点和主存储所代表的存储系统通信的途径;根据主存储类型的不同命令通道也可以不同,例如, 命令通道可以是ZStack管理节点和主存储之间的HTTP连接或者存储SDK(storage SDKs)提供的通信方法。

有三种连接状态:
  • Connecting:

    该状态时,一个ZStack管理节点正在尝试建立自己和主存储之间的命令通道,这时还不能在主存储上执行任何操作。

  • Connected:

    该状态时,ZStack管理节点和主存储之间的命令通道已经被成功建立,可以在主存储上执行操作。

  • Disconnected:

    在这种状态时,ZStack管理节点和主存储之间的命令通道丢失,这时不能在主存储上执行任何操作。

在ZStack管理节点启动过程中会开始和主存储建立命令通道,并且会在运行中周期性的向主存储发送ping命令(ping commands)以检查命令通道的健康状态;一旦某个主存储响应失败, 或者ping命令超时,主存储的连接状态就会变为Disconnected。

主存储的连接状态转换图如Figure 1所示:
Figure 1. 主存储连接转换图


可用状态(State)

可用状态和连接状态之间没有直接关系。可用状态代表了管理员针对主存储的意愿, 而连接状态代表了主存储的通信状况。

挂载集群(Attaching Cluster)

挂载集群是将主存储和兄弟集群(sibling clusters)关联,从而提供了一种灵活的方式维护主机和存储系统在实际数据中心里的关系。例如: 假设有一个集群(集群A)挂载了一个NFS主存储 (NFS1), 如Figure 2所示:
Figure 2. 单集群挂载NFS主存储


一段时间后,集群A内存耗尽但主存储还有足够的磁盘空间,这时创建一个集群B,然后将NFS1挂载在集群B上。如Figure 3所示:
Figure 3. 多集群挂载NFS主存储


又运行一段时间之后, 集群A的硬件可能开始变得过时,这时停用集群A;添加一个新的更加强大的集群(集群C)挂载到NFS1上,然后将所有集群A中的主机设置为维护模式(maintenance mode),这样所有之前运行在集群A中的云主机都会被迁移到集群B或集群C;最后, 将NFS1从集群A卸载,然后删除集群A。现在,数据中心看起来如Figure 4所示:
Figure 4. 迁移后的数据中心


最后如果NFS1容量不够用了,可添加另外一个主存储(NFS2),并加载到集群B和集群C上,如Figure 5所示:
Figure 5. 多集群挂载多NFS主存储