7200硬碟IOPS = 1000/(3 1000*(7200/60)/2) = 140
10k硬碟IOPS = 1000/(3 60000/10000/2) = 167
15k硬碟IOPS = 1000/(3 60000/15000/2) = 200
其中3為尋道延遲,7200/10k/15k為轉速(rpm),1000*(7200/60)/2為旋轉延遲(旋轉延遲一般用轉一圈所需時間的1/2表示) ,結果為理論峰值,實際上還會有系統延遲導致測得IOPS一般低於此值。
#RAID群組由於RAID群組需要校驗以提供恢復功能,所以會存在一定寫懲罰(一個業務寫操作對應實際硬碟的I/O操作,可以參考https://community.emc.com/docs/DOC- 26624),這個係數如下:
RAID0: 1
RAID1: 2
RAID5: 4
RAID6: 6
RAID1-0: 2
所以RAID群組IOPS = 硬碟寫入IOPS*硬碟數量*寫入操作百分比/寫入懲罰係數 硬碟讀取IOPS*硬碟數量*讀取操作百分比。
以4塊IOPS為180的SAS硬碟組RAID 6然後百分百隨機寫入操作為例:
IOPS = 180*4/6 = 120
Ceph的IOPS經驗公式由於Ceph儲存結構不同於實體硬件,所以影響其IOPS的因素主要有網路、副本數量、日誌、OSD(硬碟)數量、OSD伺服器數量、OSD IOPS等,這裡給出一個來自Mirantis的經驗公式:
IOPS = 硬碟IOPS * 硬碟數量 * 0.88 / 副本數量
其中0.88為4-8k隨機讀取操作佔比(88%),如果OSD不是以硬碟為單位而是RAID組,則替換公式中對應參數。
關於Ceph的IOPS計算僅供參考,計算結果可能會跟物理環境實測有較大偏差。
作者介紹:雲端技術社群專家 蔣迪(微信公眾號:雲端技術實務)
蔣迪,資深虛擬化基礎架構工程師,《KVM私有雲架構設計與實務》作者,雲端技術社群專家,擅長KVM雲端平台架構解析與虛擬化POC,具有第一線開發與交付經驗。
以上是IOPS計算指南:硬碟、RAID組和Ceph的效能評估的詳細內容。更多資訊請關注PHP中文網其他相關文章!