2.4.28. 多租户存储桶操作
当客户端应用访问 bucket 时,它始终与特定用户的凭据一同运行。在 Red Hat Ceph Storage 集群中,每个用户都属于一个租户。因此,如果没有明确指定租户,每个 bucket 操作在其上下文中都有一个隐式租户。因此,多租户与之前的版本完全向后兼容,只要引用的存储桶和引用用户所属的租户。
已根据所使用的协议和身份验证系统,使用扩展来指定明确的租户会有所不同。
在以下示例中,冒号分隔租户和 bucket。因此,一个示例 URL 是:
https://rgw.domain.com/tenant:bucket
相反,一个简单的 Python 示例将租户和存储桶方法本身分开:
示例
from boto.s3.connection import S3Connection, OrdinaryCallingFormat c = S3Connection( aws_access_key_id="TESTER", aws_secret_access_key="test123", host="rgw.domain.com", calling_format = OrdinaryCallingFormat() ) bucket = c.get_bucket("tenant:bucket")
注意
无法利用多租户使用 S3-style 子域,因为主机名不能包含冒号或任何已在存储桶名称中无效的其他分隔符。使用句点会创建模糊的语法。因此,bucket-in-URL-path
格式必须与多租户一起使用。
其它资源
- 详情请查看 Multi Tenancy。