4.7. 多站点 Ceph 对象网关
Ceph 对象网关在删除对象过程中不再死锁
在以前的版本中,在删除对象过程中,Ceph 对象网关 S3 DeleteObjects
与多站点部署一起运行,从而导致 Ceph 对象网关死锁并停止接受新请求。这是因为 DeleteObjects
请求一次处理多个对象删除所致。
在这个版本中,复制日志被序列化,死锁会被阻止。
CURL 路径规范化现在在启动时禁用
在以前的版本中,由于 CURL 执行的路径规范化(Ceph 对象网关复制堆栈的一部分),对象名称在复制过程中被静默重新格式化。因此,其名称包含嵌入式 . 和
的对象不会被复制。
.
.
在这个版本中,CURL 路径规范化会在启动时禁用,受影响的对象会如预期复制。
主站点中转发请求的身份验证不再失败
在以前的版本中,如果使用 STS 返回的临时凭证为请求签名,则 S3 请求会发布到二级失败。发生失败的原因是,请求将使用系统用户的凭证转发到主并签名,这与转发请求的会话令牌中的临时凭据不匹配。由于不匹配的凭证,主站点上转发请求的身份验证会失败,这会导致 S3 操作失败。
在这个版本中,身份验证是通过在会话令牌中使用临时凭证传递的,以防请求从次要转发到主要。系统用户的凭证用于成功完成身份验证。