文章内容
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
其他相关推荐:
2、Ubuntu 22.04 安装 OpenStack Swift
3、Ubuntu 22.04 安装 OpenStack Swift 存储策略
评论列表