第 8 章 管理
作为存储管理员,您可以使用 radosgw-admin 命令行界面(CLI)或使用 Red Hat Ceph Storage 仪表板来管理 Ceph 对象网关。
并非所有 Ceph 对象网关功能都可用于 Red Hat Ceph Storage 控制面板。
先决条件
- 一个正常运行的 Red Hat Ceph Storage 集群。
- 安装 Ceph 对象网关软件.
8.1. 创建存储策略 复制链接链接已复制到粘贴板!
Ceph 对象网关通过标识放置目标并在与放置目标关联的池中存储 bucket 和对象来存储客户端存储桶和对象。如果您不配置放置目标,并将它们映射到实例区域配置中的池,Ceph 对象网关将使用默认目标和池,如 default_placement。
存储策略可让 Ceph 对象网关客户端访问存储策略,即能够以特定类型的存储(如 SSD、SAS 驱动器和 SATA 驱动器)为目标,作为确保确保、持久性、复制和纠删代码的一种方式。详情请参阅 Red Hat Ceph Storage 6 的存储策略指南。
要创建存储策略,请使用以下步骤:
-
使用所需的存储策略,创建一个新的池
.rgw.buckets.special。例如,使用纠删代码、特定 CRUSH 规则集、副本数和pg_num和pgp_num计数自定义的池。 获取 zone group 配置并将其存储在文件中:
语法
radosgw-admin zonegroup --rgw-zonegroup=ZONE_GROUP_NAME get > FILE_NAME.json示例
[root@host01 ~]# radosgw-admin zonegroup --rgw-zonegroup=default get > zonegroup.json在
zonegroup.json文件中,在placement_target下添加一个special-placement条目:示例
{ "name": "default", "api_name": "", "is_master": "true", "endpoints": [], "hostnames": [], "master_zone": "", "zones": [{ "name": "default", "endpoints": [], "log_meta": "false", "log_data": "false", "bucket_index_max_shards": 5 }], "placement_targets": [{ "name": "default-placement", "tags": [] }, { "name": "special-placement", "tags": [] }], "default_placement": "default-placement" }使用修改的 zone
group.json文件设置 zone group :示例
[root@host01 ~]# radosgw-admin zonegroup set < zonegroup.json获取区配置并将其存储在文件中,如
zone.json:示例
[root@host01 ~]# radosgw-admin zone get > zone.json编辑区文件并在
placement_pool下添加新放置策略键:示例
{ "domain_root": ".rgw", "control_pool": ".rgw.control", "gc_pool": ".rgw.gc", "log_pool": ".log", "intent_log_pool": ".intent-log", "usage_log_pool": ".usage", "user_keys_pool": ".users", "user_email_pool": ".users.email", "user_swift_pool": ".users.swift", "user_uid_pool": ".users.uid", "system_key": { "access_key": "", "secret_key": "" }, "placement_pools": [{ "key": "default-placement", "val": { "index_pool": ".rgw.buckets.index", "data_pool": ".rgw.buckets", "data_extra_pool": ".rgw.buckets.extra" } }, { "key": "special-placement", "val": { "index_pool": ".rgw.buckets.index", "data_pool": ".rgw.buckets.special", "data_extra_pool": ".rgw.buckets.extra" } }] }设置新区配置:
示例
[root@host01 ~]# radosgw-admin zone set < zone.json更新 zone group 映射:
示例
[root@host01 ~]# radosgw-admin period update --commitspecial-placement条目列为placement_target。在发出请求时指定存储策略:
示例
$ curl -i http://10.0.0.1/swift/v1/TestContainer/file.txt -X PUT -H "X-Storage-Policy: special-placement" -H "X-Auth-Token: AUTH_rgwtxxxxxx"