Swift 是提供分布式对象存储的一个 OpenStack 组件。

重要:

VMware Integrated OpenStack 5.1 中,Swift 仅作为技术预览版提供。当前不支持运行生产工作负载。

注:

无法删除 Swift 群集中的节点。如果要从群集中移除节点,必须删除整个群集,然后重新创建群集。

有关 Swift 的详细信息,请参见OpenStack Swift 文档

前提条件

过程

  1. vSphere Client 中,为 Swift 创建新群集,并至少添加一个主机和数据存储。

    必须将 Swift 部署在专用群集中。

    • 确保 Swift 群集可以通过管理网络与管理群集通信。

    • 确保 Swift 群集中的所有主机均使用本地数据存储。

  2. viouser 用户身份登录到 OpenStack 管理服务器
  3. 创建 Swift 群集。
    sudo viocli swift create-cluster --cluster-moid swift-cluster --datastores swift-ds [--storage-node-count storage-nodes] [--proxy-node-count proxy-nodes] [--disk-size GB] [--swift-partition-power-count part-power] [--swift-replica-count replicas] [--swift-min-part-hours time]

    选项

    说明

    --cluster-moid

    输入要用于 Swift 的 vSphere 群集的受管对象 ID (MOID)。

    --datastores

    指定要用于 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

    或者,您可以准备 JSON 格式的所需规范并运行 sudo viocli swift create-cluster -f spec-file.json 创建群集。有关所需格式的信息,请参见 viocli swift 命令

结果

此时将创建 Swift 群集所需的虚拟机并启用该服务。

下一步做什么

可以将存储和代理节点添加到群集以横向扩展部署。有关详细信息,请参见将节点添加到 Swift 群集

默认情况下,具有 admin_member_ 角色的用户可以执行 Swift 操作。要添加或更改角色,请在 custom.yml 中取消对 swift_operator_roles 参数的注释,并修改参数值以包含所需的角色。然后,运行 viocli deployment configure --tags add_proxy_node --limit swift_proxy,swift_storage 以部署更新后的配置。