文章内容

2025/11/13 9:05:28,作 者: 黄兵

OpenStack Swift 单节点构造文件添加磁盘

Swift 的 ring 文件(account/container/object.builder)里注册的设备名称(例如 /d1必须和你挂载点下的目录名一致

🧠 背景说明

在 Swift 中:

swift-ring-builder object.builder add r1z1-127.0.0.1:6200/{device_name} weight

这里的 {device_name} 对应的是挂载目录 /srv/node/<device_name>

举例:

  • 如果你挂载的是 /srv/node/sdb1,那 <device_name> 必须是 sdb1

  • 如果你挂载的是 /srv/node/d1,那目录也要叫 /srv/node/d1

✅ 在上篇文章:OpenStack Swift 单节点部署使用的是:

/srv/node/sdb1 /srv/node/sdb1 none bind 0 0
/srv/node/sdb2 /srv/node/sdb2 none bind 0 0

所以 Swift 看到的设备是:

/srv/node/sdb1
/srv/node/sdb2

因此 ring builder 命令可以这样写:

swift-ring-builder account.builder add r1z1-127.0.0.1:6202/sdb1 100
swift-ring-builder container.builder add r1z1-127.0.0.1:6201/sdb1 100
swift-ring-builder object.builder add r1z1-127.0.0.1:6200/sdb1 100

💡 如果你还想加第二块模拟磁盘 /srv/node/sdb2,可以再执行一组:

swift-ring-builder account.builder add r1z1-127.0.0.1:6202/sdb2 100
swift-ring-builder container.builder add r1z1-127.0.0.1:6201/sdb2 100
swift-ring-builder object.builder add r1z1-127.0.0.1:6200/sdb2 100

✅ 最终验证目录结构

确保目录与配置一致:

ls -l /srv/node
# 应该看到:
# sdb1/
# sdb2/

并确保权限:

chown -R swift:swift /srv/node
chmod -R 755 /srv/node


其他相关推荐:

1、OpenStack Swift 单节点部署

2、Ubuntu 22.04 安装 OpenStack Swift

3、Ubuntu 22.04 安装 OpenStack Swift 存储策略

4、OpenStack Swift 配置 Memcached

5、OpenStack Swift 自定义认证中间件

分享到:

发表评论

评论列表