您好,登錄后才能下訂單哦!
開始之前,先參考我之前的文章,Ceph對象存儲介紹與安裝,Ceph對象存儲介紹與安裝
Ceph對象網關將存儲區索引數據存儲在index_pool這個池中,默認值為default.rgw.buckets.index,有時,用戶喜歡將多個對象(數十萬到數百萬個對象)放在一個存儲桶中,如果不使用網關管理界面為每個存儲桶中的最大對象設置配額,則當用戶將大量對象放入存儲桶中時,存儲桶索引可能會遭受嚴重的性能下降。
查看這個pool
[root@ceph-node1 ~]# ceph osd lspools | grep buckets.index
31 default.rgw.buckets.index
在Ceph 0.94中,當每個存儲桶中允許大量對象時,可以對存儲區索引進行分片以防止性能瓶頸。 rgw_override_bucket_index_max_shards設置允許您設置每個存儲區的最大分片數,默認值為0,這意味著默認情況下桶索引分片處于關閉狀態。
以下命令可以查看這個參數的值,這里查看的是id為0的osd的此項參數的值
[root@ceph-node1 ~]# ceph-osd -i 0 --show-config | grep "rgw_override_bucket"
rgw_override_bucket_index_max_shards = 0
要打開存儲桶索引分片,請將rgw_override_bucket_index_max_shards設置為大于0的值,對于簡單的配置,可以將rgw_override_bucket_index_max_shards添加到的Ceph配置文件中,將其添加到[global]下,還可以在Ceph配置文件中根據不同的osd實例設置它,如下
[root@ceph-node1 ~]#vim /etc/ceph/ceph.conf
[global]
fsid = 6355eb2f-2b5c-4280-9747-2d77a307b3d9
mon_initial_members = ceph-node1,ceph-node2,ceph-node3
mon_host = 172.16.4.78
auth_cluster_required = cephx
auth_service_required = cephx
auth_client_required = cephx
public network = 172.16.4.0/21
rgw_override_bucket_index_max_shards = 2 ## 全局配置此參數,但是也需要push此配置文件到其他節點[client.rgw.ceph-node1]
rgw_frontends = "civetweb port=7481"
rgw_override_bucket_index_max_shards = 2 ##為節點1的osd配置此參數
[root@ceph-node1 ~]#systemctl restart ceph-radosgw@rgw.ceph-node1.service
對于聯合配置,每個區域可能具有用于故障轉移的不同的index_pool設置,為了使該值與區域組的區域一致,可以在網關的區域組配置中設置rgw_override_bucket_index_max_shards,如下
[root@ceph-node1 ~]#radosgw-admin zonegroup get > zonegroup.json
打開zonegroup.json文件,然后為每個命名區域編輯bucket_index_max_shards設置,保存zonegroup.json文件并重置zonegroup,如下
[root@ceph-node1 ~]#radosgw-admin zonegroup set < zonegroup.json
更新區域組后,請更新提交期限,如下
[root@ceph-node1 ~]#radosgw-admin period update --commit
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。