ceph學習筆記
- ceph存儲原理
-
- 引言
- 計算PG
- ceph中 邏輯層
ceph存儲原理
引言
把一份資料存儲到ceph叢集中分幾步?
Ceph的答案是:兩步
- 計算PG
- 計算OSD
計算PG
首先,要明确ceph的一個規定:在ceph中,一切皆對象。
任何格式的資料(視訊、圖檔、文本)在磁盤上都是以二進制形式存儲的,ceph将其都視為對象。
不同的對象有不同的對象名,是以,問題就演變為:把一個對象存儲到ceph叢集分幾步?
我們知道ceph叢集是由若幹伺服器組成的,确切的說就是一堆磁盤組成,而在ceph中,每塊磁盤就是一個OSD,是以問題有演變為:把一個對象存儲到OSD中分幾步?
ceph中 邏輯層
ceph為了儲存一個對象,對上建構了一個邏輯層,也就是池(pool)。如果把pool比喻成一個中國象棋棋盤,那麼儲存一個對象的過程就類似于把一粒芝麻放置到棋盤上。
pool再一次細分,即将一個pool劃分為若幹個PG(歸置組),類似于棋盤上的方格,所有的方格構成了整個棋盤,也就是說所有的PG構成了一個pool。
現在需要解決的問題是,對象怎麼知道要儲存到哪個PG上?這裡假定我們有256個PG,編号為1,2,3,…,256。
要解決這個問題,先看看我們擁有什麼?1.不同的對象名;2.不同的PG編号。這裡就需要引入ceph的計算方法HASH了。