您好,登錄后才能下訂單哦!
這篇文章主要為大家展示了“PG如何設置與規劃”,內容簡而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶領大家一起研究并學習一下“PG如何設置與規劃”這篇文章吧。
PoolPGCount=((TargetPGsPerOSD)?(OSDNumber)?(DataPercent) )/PoolSize
名稱 | 說明 | 備注 |
---|---|---|
Pool PG Count | 單個Pool的PG數量 | |
Target PGs Per OSD | 每個OSD的PGs數量 | a)如果未來集群的OSD數量基本不再增長,Target PGs per OSD =100 b)如果未來集群的OSD數量可能增長到目前規模的2倍以內,Target PGs per OSD =200 c)如果未來集群的OSD數量增長規模大于當前2倍且小于3倍,Target PGs per OSD =300 |
OSD Number | 集群OSD的總數,默認來講是全部OSD的數量 | 如果通過CRUSH rules進行了SSD和SATA設備的規則拆分(比如SSD和SATA劃分成兩個zone),需要單獨填寫對應rule的OSD數量 |
Data Percent | Pool占用所在OSD總容量的百分比(預估值) | |
Pool Size | 每個pool的replicas size,默認是3 | 如果使用Erasure Coded Pools簡稱EC pool,Pool Size = K+m |
計算的最終結果應該是一個2的冪次方。采用2的冪次方是因為了提高CRUSH算法的效率。
如果計算出來的結果,找到與這個結果相鄰的兩個2次冪數值,如果結果超過較小二次冪數值的25%則選擇較大的二次冪作為最終結果,反之則選擇較小的那個2次冪數值。
設計計算公式的目的是為了確保整個集群擁有足夠多的PG從而實現數據均勻分布在各個OSD上,同時能夠有效避免在Recovery 和Backfill 的時候因為PG/OSD比值過高所造成的問題。
如果集群中存在空pool或者其他非活躍狀態下的pool,這些pool并不影響現有集群的數據分布,但是這些pool仍然會消耗集群的內存和CPU資源。
某集群由100個OSD組成,其中40個OSD為SSD (通過CRUSH rules劃分為SSD zone),60個OSD為SATA(通過CRUSH rules劃分為SATA zone),集群規模預計未來會增長到當前規模的2倍
整個集群新建4個pool,具體如下:
名稱 | 說明 | 備注 |
---|---|---|
SSD_poolA | Pool Size=3,預計容量占用比60% | SSD zone |
SSD_poolB | Pool Size=3,預計容量占用比40% | SSD zone |
SATA_poolA | EC Pools,Pool Size = k+m= 3+2=5,預計容量占用比80% | SATA zone |
SATA_poolb | Pool Size=3,預計容量占用比20% | SATA zone |
名稱 | 說明 | 備注 |
---|---|---|
SSD_poolA | PoolPGCount=((200)?(40)?(0.6))/3=1600≈2048 | 1600與相鄰的2次冪數值分布為1024<1600<2048 |
SSD_poolB | PoolPGCount=((200)?(40)?(0.4))/3=1066≈1024 | SSD zone |
SATA_poolA | PoolPGCount=((200)?(60)?(0.8))/5=1920≈2048 | SSD zone |
SATA_poolB | PoolPGCount=((200)?(60)?(0.2))/3=800≈1024 | SSD zone |
以上是“PG如何設置與規劃”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。