1. s3分片說明
index pool一定要上ssd,這個是優化的前提。
合理設定bucket 的shard 數量
shard的數量並不是越多越好,過多的shard會導致部分類似list bucket的操作消耗大量底層儲存io,導致部分請求耗時過長。
shard的數量還要考慮到你osd的故障隔離域和副本數設定。比如你設定index pool的size為2,並且有2個機櫃,共24個osd節點,理想情況下每個shard的2個副本都應該分布在2個機櫃裡面,比如當你shard設定為8的時候,總共有8*2=16個shard檔案需要儲存,那麼這16個shard要做到均分到2個機櫃。同時如果你shard超過24個,這很明顯也是不合適的。
控制好單個bucket index shard的平均體積,目前推薦單個shard儲存的object資訊條目在10-15w左右,過多則需要對相應的bucket做單獨reshard操作(注意這個是高危操作,謹慎使用)。比如你預計單個bucket最多儲存100w個object,那麼100w/8=12.5w,設定shard數為8是比較合理的。shard檔案中每條omapkey記錄大概占用200 byte的容量,那麼150000*200/1024/1024 ≈ 28.61 mb,也就是說要控制單個shard檔案的體積在28mb以內。
業務層面控制好每個bucket的object上限,按每個shard檔案平均10-15w object為宜。
2. 分片配置項
the rgw_override_bucket_index_max_shards setting for ****** configurations,
the bucket_index_max_shards setting for federated configurations
1) 修改配置檔案設定相應的引數。 note that maximum number of shards is 7877.
[global]
rgw_override_bucket_index_max_shards = 10
2) 重啟rgw服務,讓其生效systemctl restart ceph-radosgw.target
3) 檢視bucket shard數radosgw-admin bucket limit check --bucket=
[bucket名][,,]}
]
3. ctsi storage分布式儲存分片計算方法
計算分片需要以下幾個引數
1) 單個shard預設數量
單個shard物件數量設定在12萬
2) 根據業務評估平均檔案大小
如果那種無法評估的業務,例如雲網盤這種業務型別,暫時按照2m檔案大小來計算(暫定)。
3) 根據業務評估單個bucket可能的容量大小
注意: 評估容量大小時,評估的容量為實際可用容量,不是裸容量,同時需要考慮85%冗餘上限的事情
例如:1. 假如集群總可用容量為300tib,則實際可用容量為300*0.85=255tib
2. 評估集群中可能存在的最大bucket容量
> 現在我們計畫使用這個集群作為測試集群,那麼我希望將這個集群所有容量都放置到乙個bucket中,也就意味著我這個bucket最大的容量就是225tib.
4) 測算集群需要配置的shard數量
根據平均檔案大小和bucket最大容量計算物件數量
bucket最大容量 / 平均檔案大小 »>>>>> 255tib * 1024 * 1024 / 11m = 24307898
根據物件數量和預設大小計算應該配置的shard數量
物件數量 / 單個shard預設數量 »>>>>> 24307898 / 120000 = 202.56 ≈ 203 個shard
#### 計算公式: 儲存實際可用容量(非裸容量) * 0.85 * 1024 * 1024 / 11 / 120000
ps:如果儲存需要劃分多個bucket,則按照最大bucket容量計算
Elastic 分片設計及管理
分片設計 資料寫入可以分散到多個機器上 查詢可以並行進行 增加機器,可以no downtime 的水平擴充套件 分片的重新分配 es官方建議日誌應用,單個分片大小最好小於50g 搜尋類應用,單個分片最好小於20g 提高update的效能 減少merge所需的資源 丟失節點,更快速的rebalance...
RGW元資料組織方式
1.rgw資料組織方式 資料分類三類 metadata bucket index data 元資料,索引資料 真實資料 2.metadata元資料分割槽 元資料報含user bucket bucket.instance三個分割槽,可以使用以下命令檢視 檢視元資料列表 radosgw admin me...
rgw對接openstack使用者認證總結
建立ec2 的金鑰可指定 project user 等,建立 刪除 查詢命令參考 與ec2 credentials 相比,增加了可指定金鑰的值,例如 openstack credential create type ec2 project haj haj 測試barbican 功能 生成secret...