天天看點

ceph學習筆記ceph存儲原理

ceph學習筆記

  • ceph存儲原理
    • 引言
    • 計算PG
    • ceph中 邏輯層

ceph存儲原理

引言

把一份資料存儲到ceph叢集中分幾步?

Ceph的答案是:兩步

  1. 計算PG
  2. 計算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了。