使用 viocli swift 命令可以管理 OpenStack 部署中的 Swift 群集和节点。

viocli swift 命令支持多种操作,可执行不同任务。以下参数适用于所有操作。

参数

强制或可选

说明

-d NAME--deployment NAME

可选

要使用的部署的名称。

如果未输入值,则使用默认部署。

-p--progress

可选

显示当前操作的进度。

--verbose

可选

在详细模式下显示输出。

您可以运行 viocli swift -hviocli swift --help 以显示该命令的参数。还可以在任何操作上使用 -h--help 选项显示操作参数。例如,viocli swift create-cluster -h 将显示 create-cluster 操作的参数。

下面列出了 viocli swift 支持的操作。

viocli swift create-cluster [-d NAME] --cluster-moid MOID --datastores DS1[,DS2...] [--storage-node-count STORAGE-NODES] [--proxy-node-count PROXY-NODES] [--disk-size GB] [--swift-partition-power-count PARTITION-POWER] [--swift-replica-count REPLICAS] [--swift-min-part-hours HOURS] [-f SPEC-FILE] [-p] [--verbose]

创建 Swift 群集。以下其他参数适用于 create-cluster 操作。

参数

强制或可选

说明

--cluster-moid

强制,除非使用 -f

vSphere 群集的受管对象 ID (MOID)。

--datastores

强制,除非使用 -f

要用于 Swift 存储节点的数据存储,以逗号分隔。

重要:

Swift 不支持数据存储群集。

--storage-node-count

可选

要创建的 Swift 存储节点数。

如果未输入值,默认使用 3

--proxy-node-count

可选

要创建的 Swift 代理节点数。

如果未输入值,默认使用 2

--disk-size

可选

Swift 存储节点的磁盘大小(以千兆字节为单位)。

如果未输入值,默认使用 2048

--swift-partition-power-count

可选

Swift 环的分区次方。环管理的分区数等于 2 的分区次方。

如果未输入值,默认使用 10

--swift-replica-count

可选

要为 Swift 中存储的对象创建的副本数。

如果未输入值,默认使用 3

注:

副本数不能超过部署中的存储节点数。

--swift-min-part-hours

可选

分区能够分配给其他存储节点之前的时间(以小时为单位)。

如果未输入值,默认使用 1

-f--json-file

可选

包含用于创建 Swift 群集的参数的 JSON 文件。

JSON 文件的格式如下所示:

{
        "cluster_moid": "moid",
        "storage_node_number": storage-nodes,
        "proxy_node_number": proxy-nodes,
        "ring_settings": {
                "swift_replica_count": replicas,
                "swift_min_part_hours": hours,
                "swift_partition_power_count": power
        },
        "storage_settings": [
                {
                        "datastore_name": "ds1",
                        "zone_number": ds1-zone,
                        "disk_size": ds1-disk-gb
                }
        ]
}

为要创建的每个存储节点创建 storage_settings 部分内容的副本。

如果未使用 JSON 文件创建群集,将按顺序为指定的数据存储分配区域编号。可以在 JSON 文件中使用 zone_number 参数分配特定的区域编号或将多个数据存储置于同一个区域中。单个数据存储不能放在多个区域中。

 

viocli swift delete-cluster [-d NAME] [-f] [-p] [--verbose]

删除 Swift 群集。

参数

强制或可选

说明

-f--force

可选

删除群集而不提示确认。

 

viocli swift add-storage [-d NAME] --datastores DS1[,DS2...] [--storage-node-count STORAGE-NODES] [--disk-size GB] [-f SPEC-FILE] [-p] [--verbose]

将存储节点添加到现有 Swift 群集。

参数

强制或可选

说明

--datastores

强制,除非使用 -f

要用于新 Swift 存储节点的数据存储,以逗号分隔。

重要:

Swift 不支持数据存储群集。

--storage-node-count

可选

要添加的 Swift 存储节点数。

如果未输入值,默认使用 1

--disk-size

可选

新 Swift 存储节点的磁盘大小(以千兆字节为单位)。

如果未输入值,默认使用 2048

-f--json-file

可选

包含用于创建存储节点的参数的 JSON 文件。

JSON 文件的格式如下所示:

{
        "storage_node_number": nodes,
        "storage_settings": [
                {
                        "datastore_name": "ds1",
                        "zone_number": ds1-zone,
                        "disk_size": ds1-disk-gb
                }
        ]
}

为要创建的每个存储节点创建 storage_settings 部分内容的副本。

如果未使用 JSON 文件添加存储节点,将按顺序为指定的数据存储分配区域编号。可以在 JSON 文件中使用 zone_number 参数分配特定的区域编号或将多个数据存储置于同一个区域中。单个数据存储不能放在多个区域中。

 

viocli swift add-proxy [-d NAME] [--proxy-node-count PROXY-NODES] [-p] [--verbose]

将代理节点添加到现有 Swift 群集。

参数

强制或可选

说明

--proxy-node-count

可选

要添加的 Swift 代理节点数。

如果未输入值,默认使用 1

 

viocli swift list-datastore-zone-mapping [-d NAME] [-p] [--verbose]

显示所有数据存储及其所在区域。