自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

架構(gòu)細(xì)節(jié)剖析:Ceph 和 Swift該如何選擇?

云計算
Ceph和Swift,哪種更好?這個問題上大家爭論不休,本文從兩者的架構(gòu)角度分析兩種方式各自的優(yōu)缺點,并且給出如何選擇的建議。

 [[135486]]

Ceph和Swift,哪種更好?這個問題上大家爭論不休,本文從兩者的架構(gòu)角度分析兩種方式各自的優(yōu)缺點,并且給出如何選擇的建議。

當(dāng)工程師們討論存儲,談到Ceph和Swift時,他們通常都一致認(rèn)為其中一個非常棒,另外一個卻很糟糕。但問題時,他們在哪個好哪個不好上卻意見不一。

經(jīng)常會有客戶問我相同的問題,“我們聽說Ceph可以代替其他所有類型的存儲。為什么不能用它做所有事情呢?”

我會在Vancouver的OpenStack Summit大會上從架構(gòu)角度探討Ceph和Swift,分享在這兩者之間到底該如何抉擇,也會為兩種平臺的解決方案都給出建議。本文,我們一起看看他們的架構(gòu)細(xì)節(jié)和不同之處。

深入淺出

Swift在OpenStack開始發(fā)展之初就出現(xiàn)了,大概在五年之前。它是OpenStack的核心項目,并且被無數(shù)次證明強大且穩(wěn)定。

問題是,Swift的設(shè)計導(dǎo)致在傳輸速度和延遲時間上都不強。造成這個問題的主要原因是Swift集群進(jìn)出的流量都要通過代理服務(wù)器。

另一個原因,也是很多人認(rèn)為Ceph更好的原因,是Swift不支持塊存儲和文件存儲。

最后,當(dāng)對象副本不一定同時更新時延遲的問題便會浮現(xiàn),這會導(dǎo)致請求者在第一次更新某個對象到新版本之后,讀取到的卻仍然是舊版本。這種行為被稱為最終一致性。

另一方面,Ceph也有自己的問題,特別是在云環(huán)境上。它的多地域支持,雖然經(jīng)常被當(dāng)做優(yōu)勢來宣傳,但實際上還是master-slave模型。因為只能從master到slave進(jìn)行復(fù)制,所以在多于兩個地域時,基礎(chǔ)架構(gòu)上的負(fù)載分布會很不均衡。

Ceph的兩地域設(shè)計也不太實際,因為只支持master上的寫入,而不阻隔slave上的寫入。這樣的配置最嚴(yán)重時可能導(dǎo)致整個集群的崩潰。

Ceph的另一個短板是安全性。云計算節(jié)點上的RADOS客戶端直接與RADOS服務(wù)器交互所使用的網(wǎng)絡(luò)與Ceph用于未加密復(fù)制流量的網(wǎng)絡(luò)相同。如果某個Ceph客戶端節(jié)點被入侵,攻擊者便能得到存儲網(wǎng)絡(luò)的所有流量。

針對Ceph的弱點,你可能會問,為什么不直接構(gòu)建一個Ceph集群,擴展到兩個地域呢?一個原因是Ceph只能同步寫入,并且要求寫入節(jié)點達(dá)到quorum數(shù)才能成功返回。

了解這些問題之后,我們來假定有一個集群跨越兩個地域,相隔數(shù)千英里,100ms延時,非常慢的網(wǎng)絡(luò)連接。假定將兩個副本寫入到本地地域,另外兩個寫入到遠(yuǎn)程地域。這時四次副本的quorum數(shù)是三次,這就意味著這次寫請求在至少完成一次遠(yuǎn)程拷貝前都不會返回。也就意味著即使是很小量的一次寫入也會延遲0.2秒,而大批量寫入則會因為吞吐量限制嚴(yán)重受阻。

另一方面,Swift,在與之相同的兩地域架構(gòu)中,會先在本地寫入,然后基于一致性設(shè)計在一段時間里復(fù)制到遠(yuǎn)程地域。Swift也要求寫入 quorum,但是可以在集群上配置write_affinity設(shè)置強制限定寫入quorum在本地地域,因此本地寫入完成后就會成功返回。

那么我們在Ceph和Swift之間如何抉擇呢?

如何選擇?

如果部署只在單一地域,沒有計劃擴展到多個地域的話,Ceph會是很好的選擇。Mirantis OpenStack底層可以選擇Glance或者Cinder。但是,如果要考慮大規(guī)模部署的話,Swift比Glance更適合。它的多地域能力會勝過 Ceph的速度和強大的一致性模型。

很多情況下,速度并不是決定因素,安全性則是更大的問題,這時,Swift更適合,它封閉的復(fù)制網(wǎng)絡(luò)更為安全。另一方面,如果云基礎(chǔ)架構(gòu)本身已經(jīng)很安全,存儲安全性優(yōu)先級便會降低,這時可能Ceph更適合。

與其比來比去,不如在同一個云基礎(chǔ)架構(gòu)里同時擁有這兩種選擇。比如,可以使用Ceph作為本地高性能存儲,而Swift則作為多地域Glance后臺,這時復(fù)制很重要而速度并不關(guān)鍵。但是,擁有這兩種選擇的解決方案花費必然更多,因此可能還是需要二選一。

對于很多客戶,我的個人建議是,Mirantis提供了架構(gòu)設(shè)計評估來幫助收集所有需求和參數(shù),提供適合特定使用場景和業(yè)務(wù)驅(qū)動的解決方案,會幫助全面評估所有業(yè)務(wù),技術(shù)和運營因素。然后你可以權(quán)衡這些因素,以及這兩種選擇的優(yōu)缺點。誰知道呢?你的收獲很可能超過預(yù)期。

原文鏈接:Ceph vs Swift - 架構(gòu)剖析
 

責(zé)任編輯:Ophira 來源: dockerone
相關(guān)推薦

2015-07-09 10:22:27

CloudStackOpenStack云計算

2024-09-19 08:46:46

SPIAPI接口

2018-04-08 11:23:40

價格內(nèi)存硬盤

2021-01-23 14:00:15

BtrfsLVM-ext4Fedora

2020-01-03 09:57:33

Microsoft SSQL數(shù)據(jù)庫

2020-06-16 14:12:02

架構(gòu)ITAPI

2020-06-02 14:40:42

5G邊緣計算物聯(lián)網(wǎng)

2010-09-21 14:36:24

身份安全訪問管理

2013-09-17 12:54:53

MDMMAMMIM

2015-06-30 09:44:41

公有云游戲游戲云

2022-02-09 11:51:43

滲透測試漏洞攻擊

2015-07-22 17:30:14

應(yīng)用交付 太一星晨

2016-12-29 11:01:54

ReactVue

2019-10-10 10:30:26

MVCModelController

2013-10-17 09:37:07

2019-04-09 15:38:18

Linux發(fā)行版Windows

2019-07-05 10:53:55

ReactVue前端

2017-02-28 09:02:10

科技早新聞

2013-01-24 10:52:16

CIO企業(yè)移動開發(fā)

2024-05-13 12:42:20

點贊
收藏

51CTO技術(shù)棧公眾號