Ceph集群定時Scrub

2021-09-27 11:59:25 字數 1041 閱讀 1353

1、背景:

ceph集群會定時進行scrub操作,在ceph對接openstack的場景中,如果ceph集群正在進行scrub操作,會對scrub的資料進行加鎖,如果openstack使用ceph作為後端儲存的虛擬機器此時也在訪問該資料,就會導致openstack中使用ceph作為後端儲存的虛擬機器可能會出現卡頓的現象。

1)scurb是什麼?

scrub是ceph集群副本進行資料掃瞄的操作,用以檢測副本間資料的一致性,包括scrub和deep scrub,其中scrub只會對元資料資訊進行掃瞄,相對比較快,而deep scrub不僅對元資料進行掃瞄,還會對儲存的資料進行掃瞄,相對比較慢。

2)scrub預設週期是多久進行一次?

osd的scrub預設配置策略是每天到每週(如果集群負載大週期就是一周,如果集群負載小週期就是一天)進行一次,時間區域預設為全天(0時-24時),deep scrub預設策略是每週一次。

2、案例實戰

基於對業務執行時間的了解,晚上10點到第二天早上7點為業務閒時,可以進行scrub操作,本文以此為例進行配置策略的制定。

場景:晚22點到第二天早上7點進行scrub

先通過tell方式,讓scrub時間區間配置立即生效,具體操作如下:

配置scrub起始時間為22點整:

ceph tell osd.* injectargs "--osd-scrub-begin-hour 22"
配置scrub結束時間為第二天早上7點整:

ceph tell osd.* injectargs "--osd-scrub-end-hour 7"
vim /etc/ceph/ceph.conf

[global]

....

..[osd]

osd_scrub_begin_hour = 22

osd_scrub_end_hour = 7

這樣之後,可以使配置立即生效,即使集群服務重啟或者節點重啟,配置也會重新從配置檔案中載入,永久生效。

Ceph 手動搭建ceph集群

hostname ipmon id 磁碟快journal ceph1 192.168.1.1 0 dev sdb2 dev sdb1 ceph2 192.168.1.2 1 dev sdb2 dev sdb1 ceph3 192.168.1.3 2 dev sdb2 dev sdb1 使用yum來安...

Ceph基礎之搭建ceph集群

8 更新源 yum update ysetenforce 0 4 安裝ntp,在所有ceph節點上執行 2 用ceph deploy建立ceph集群mkdir etc ceph 生成乙個新的ceph集群,集群包括ceph配置檔案以及monitor的金鑰環。3 安裝ceph二進位制軟體包ceph de...

手動部署Ceph集群

接上篇,這次使用全手工配置的方式部署一套集群。環境配置及需要做的準備工作和上篇一樣,不再多說了。先從單節點配起,然後逐步進行擴充套件,最終做到三節點。安裝ceph 這裡選擇從倉庫中進行安裝,而不是從源 開始編譯,因為實在是太慢了,跑了一天還沒跑完。apt install ceph ceph mds配...