Ceph Pool操作總結(jié)

Ceph Pool操作總結(jié)一個ceph集群可以有多個pool,每個pool是邏輯上的隔離單位,不同的pool可以有完全不一樣的數(shù)據(jù)處理方式,比如Replica Size(副本數(shù))、Placement Groups、CRUSH Rules、快照、所屬者等。

Ceph Pool操作總結(jié)一個ceph集群可以有多個pool,每個pool是邏輯上的隔離單位,不同的pool可以有完全不一樣的數(shù)據(jù)處理方式,比如Replica Size(副本數(shù))、Placement Groups、CRUSH Rules、快照、所屬者等。

打印pool列表

ceph osd lspools

創(chuàng)建pool

通常在創(chuàng)建pool之前,需要覆蓋默認的pg_num,官方推薦:

若少于5個OSD, 設(shè)置pg_num為128。

5~10個OSD,設(shè)置pg_num為512。

10~50個OSD,設(shè)置pg_num為4096。

超過50個OSD,可以參考pgcalc計算。

本文的測試環(huán)境只有2個OSD,因此設(shè)置pg_num為128。

osd pool default pg num = 128

osd pool default pgp num = 128

創(chuàng)建pool語法:

ceph osd pool create {pool-name} {pg-num} [{pgp-num}] [replicated] \

[crush-ruleset-name] [expected-num-objects]

ceph osd pool create {pool-name} {pg-num}? {pgp-num}? erasure \

[erasure-code-profile] [crush-ruleset-name] [expected_num_objects]

創(chuàng)建一個test-pool,pg_num為128:

ceph osd pool create test-pool 128

設(shè)置pool配額

支持object個數(shù)配額以及容量大小配額。

設(shè)置允許最大object數(shù)量為100:

ceph osd pool set-quota test-pool max_objects 100

設(shè)置允許容量限制為10GB:

ceph osd pool set-quota test-pool max_bytes $((10 * 1024 * 1024 * 1024))

取消配額限制只需要把對應(yīng)值設(shè)為0即可。

重命名pool

ceph osd poolrename test-pool test-pool-new

刪除pool

刪除一個pool會同時清空pool的所有數(shù)據(jù),因此非常危險。(和rm -rf /類似)。因此刪除pool時ceph要求必須輸入兩次pool名稱,同時加上--yes-i-really-really-mean-it選項。

ceph osd pool delete test-pool test-pool --yes-i-really-really-mean-it

查看pool狀態(tài)信息

rados df

創(chuàng)建快照

ceph支持對整個pool創(chuàng)建快照(和Openstack Cinder一致性組區(qū)別?),作用于這個pool的所有對象。但注意ceph有兩種pool模式:

Pool Snapshot,我們即將使用的模式。創(chuàng)建一個新的pool時,默認也是這種模式。

Self Managed Snapsoht,用戶管理的snapshot,這個用戶指的是librbd,也就是說,如果在pool創(chuàng)建了rbd實例就自動轉(zhuǎn)化為這種模式。

這兩種模式是相互排斥,只能使用其中一個。因此,如果pool中曾經(jīng)創(chuàng)建了rbd對象(即使當(dāng)前刪除了所有的image實例)就不能再對這個pool做快照了。反之,如果對一個pool做了快照,就不能創(chuàng)建rbd image了。

ceph osd pool mksnap test-pool test-pool-snapshot

刪除快照

ceph osd pool rmsnap test-pool test-pool-snapshot

設(shè)置pool

通過以下語法設(shè)置pool的元數(shù)據(jù):

ceph osd pool set {pool-name} {key} {value}

比如設(shè)置pool的冗余副本數(shù)量為3:

ceph osd pool set test-pool size 3

其他配置項參考文檔。

通過get操作能夠獲取pool的配置值,比如獲取當(dāng)前pg_num:

ceph osd pool get test-pool pg_num

獲取當(dāng)前副本數(shù):

ceph osd pool get test-pool size

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • ceph簡介 Ceph是一個分布式存儲系統(tǒng),誕生于2004年,是最早致力于開發(fā)下一代高性能分布式文件系統(tǒng)的項目。隨...
    愛吃土豆的程序猿閱讀 6,171評論 0 21
  • 集群管理 每次用命令啟動、重啟、停止Ceph守護進程(或整個集群)時,必須指定至少一個選項和一個命令,還可能要指定...
    Arteezy_Xie閱讀 19,910評論 0 19
  • 朱 榮澤| 2013.09.09 https://www.ustack.com/blog/ceph_infra/ ...
    守望者_1065閱讀 2,623評論 0 1
  • 原因:2017年4月14日 星期五 學(xué)習(xí)記錄。說明:整理ceph資料。我的博客 : http://minichao...
    nicocoi閱讀 8,384評論 1 9
  • 系統(tǒng)環(huán)境: centos73.10.0-514.26.2.el7.x86_64 機器數(shù)量:五臺 硬盤:四塊一塊為系...
    think_lonely閱讀 5,023評論 0 5

友情鏈接更多精彩內(nèi)容