華云數(shù)據(jù):Ceph的正確玩法之Ceph雙副本如何保證宕機(jī)數(shù)據(jù)的安全性

責(zé)任編輯:zsheng

2019-02-22 13:17:28

隨著云計(jì)算業(yè)務(wù)的快速發(fā)展,國(guó)內(nèi)外云計(jì)算企業(yè)的專(zhuān)利之爭(zhēng)也愈發(fā)激烈。在云計(jì)算這樣的技術(shù)領(lǐng)域,專(zhuān)利儲(chǔ)備往往代表著企業(yè)最新的技術(shù)實(shí)力。華云數(shù)據(jù)本期“智匯華云”專(zhuān)欄將針對(duì)“Ceph的正確玩法之Ceph雙副本如何保證宕機(jī)數(shù)據(jù)的安全性”技術(shù),與大家共同分享云計(jì)算領(lǐng)域的最新技術(shù)與解決方案。

該文章為本系列的第六篇文章,我們將在之后繼續(xù)推出本系列的其他文章,敬請(qǐng)關(guān)注!

場(chǎng)景一:生產(chǎn)環(huán)境一般都是三副本存儲(chǔ),但一些場(chǎng)景為了節(jié)省資源,將副本調(diào)整為2副本。兩副本要求將數(shù)據(jù)分布在不同的機(jī)器上,防止集群故障時(shí)數(shù)據(jù)丟失。

我們?yōu)榇颂砑覴ack級(jí)的Bucket,分別包含兩個(gè)存儲(chǔ)節(jié)點(diǎn)(以Host的Bucket),然后以Rack為隔離域,保證兩個(gè)副本分別落在不同的Rack上。

示意圖如下:

1、修改操作

修改前數(shù)據(jù)備份,以防萬(wàn)一。crushmap備份

# ceph osd getcrushmap -o backup.txt

恢復(fù):

# ceph osd setcrushmap -i backup.txt

2、理論與實(shí)踐相結(jié)合

1)、創(chuàng)建機(jī)柜

ceph osd crush add-bucket rack1 rack

ceph osd crush add-bucket rack2 rack

2)、將rack移動(dòng)到root下

# ceph osd crush move rack1 root=default

# ceph osd crush move rack2 root=default

3)、將主機(jī)移動(dòng)到機(jī)柜中

# ceph osd crush move node1 rack=rack1

# ceph osd crush move node2 rack=rack2

4)、創(chuàng)建rule

# ceph osd crush rule create-simpletestrule default rack firstn

5)、修改已經(jīng)創(chuàng)建pool的rule

luminus 以后版本設(shè)置pool規(guī)則的語(yǔ)法是

# ceph osd pool set demo crush_ruletestrule

luminus以前版本設(shè)置pool規(guī)則的語(yǔ)法是

查看rule的ID

# ceph osd crush rule dump | grep testrule

# ceph osd pool set demo crush_ruleset 1

此處1是指在rule里rule_ id設(shè)置的值

6)、創(chuàng)建pool

# ceph osd pool create demo 64 64replicated testrule

7)、在ceph.conf中加入防止集群重啟crush map被重置

osd crush update on start = false

鏈接已復(fù)制,快去分享吧

企業(yè)網(wǎng)版權(quán)所有?2010-2024 京ICP備09108050號(hào)-6京公網(wǎng)安備 11010502049343號(hào)