您好,登錄后才能下訂單哦!
今天小編給大家分享一下Ceph分布式存儲集群搭建要注意哪些事項的相關(guān)知識點,內(nèi)容詳細(xì),邏輯清晰,相信大部分人都還太了解這方面的知識,所以分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后有所收獲,下面我們一起來了解一下吧。
Ceph是可靠的、可擴(kuò)展的、統(tǒng)一的、分布式的存儲系統(tǒng)。可以同時提供對象存儲RADOSGW(Reliable、Autonomic、Distributed、Object Storage Gateway)、塊存儲RBD(Rados Block Device)、文件系統(tǒng)存儲Ceph FS(Ceph Filesystem)3種功能。
Ceph metadata server會動態(tài)的重新分配負(fù)載,它是CPU敏感性的,所以Metadata Server應(yīng)該有比較好的處理器性能 (比如四核CPU). Ceph OSDs運(yùn)行RADOS服務(wù),需要通過CRUSH來計算數(shù)據(jù)的存放位置,replicate數(shù)據(jù),以及維護(hù)Cluster Map的拷貝,因此OSD也需要合適的處理性能 Ceph Monitors 簡單的維護(hù)了Cluster Map的主干信息所以這個是CPU不敏感的。
Metadata servers 以及Monitors 必須能夠快速的提供數(shù)據(jù),因此必須有充足的內(nèi)存(e.g., 1GB of RAM per daemon instance). OSDs 在執(zhí)行正常的操作時不需要過多的內(nèi)存 (e.g., 500MB of RAM per daemon instance);但是 執(zhí)行恢復(fù)操作時,就需要大量的內(nèi)存(e.g., ~1GB per 1TB of storage per daemon). Generally, 而且是越多越好。
規(guī)劃數(shù)據(jù)存儲時要考慮成本和性能的權(quán)衡。同時OS操作,同時多個后臺程序?qū)蝹€驅(qū)動器進(jìn)行讀寫操作會顯著降低性能。也有文件系統(tǒng)的限制考慮:BTRFS對于生產(chǎn)環(huán)境來說不是很穩(wěn)定,但有能力記錄journal和并行的寫入數(shù)據(jù),而XFS和EXT4會好一點。
提示:不推薦單個磁盤的分區(qū)上運(yùn)行多個OSD。不推薦單個磁盤的分區(qū)上運(yùn)行一個OSD和一個監(jiān)視器或元數(shù)據(jù)服務(wù)。
存儲驅(qū)動器受尋道時間,訪問時間,讀取和寫入時間,以及總吞吐量的限制。這些物理限制會影響整個系統(tǒng)的性能,尤其是在恢復(fù)過程中。我們建議為操作系統(tǒng)和軟件使用專用的驅(qū)動器,并且為你在主機(jī)上運(yùn)行每個OSD守護(hù)分配一個驅(qū)動器。大多數(shù)“慢OSD”的問題的產(chǎn)生是由于在一個操作系統(tǒng)同一驅(qū)動器上運(yùn)行多個OSDs和/或多個日志。
由于解決性能問題的一小部分的成本可能超過額外的磁盤驅(qū)動器的成本,因此你可以加快你的的集群設(shè)計規(guī)劃,為了避免OSD存儲驅(qū)動器負(fù)荷過重。
在每個硬盤驅(qū)動器上同時運(yùn)行多個Ceph的OSD守護(hù)程序,但是這可能會導(dǎo)致資源爭用,并降低整體吞吐量。你可能把日志和對象數(shù)據(jù)存儲在相同的驅(qū)動器上,但這樣可能會增加所花費(fèi)在記錄寫入操作和發(fā)送ACK給客戶端的時間。在CEPH可以ACK對于寫入操作前,Ceph必須把操作寫入到日志。
BTRFS文件系統(tǒng)的日志數(shù)據(jù)和對象數(shù)據(jù)的同時可以寫,而XFS和ext4的不能。Ceph的推薦做法,分開在單獨(dú)的驅(qū)動器上運(yùn)行操作系統(tǒng),OSD數(shù)據(jù)和OSD日志。
性能改進(jìn)的機(jī)會之一是使用固態(tài)硬盤(SSD),以減少隨機(jī)訪問時間,讀取等待時間,同時吞吐量加速。固態(tài)硬盤每GB的費(fèi)用與硬盤驅(qū)動器相比往往超過10倍之多,但固態(tài)硬盤往往表現(xiàn)至少比硬盤驅(qū)動器快100倍的訪問時間。
固態(tài)硬盤沒有移動機(jī)械部件,所以他們不需要受同類型硬盤驅(qū)動器的限制。盡管固態(tài)硬盤有明顯的局限性。重要的是考慮其連續(xù)讀取和寫入的性能。當(dāng)存儲多個OSDs的多個日志時,有400MB/s的順序?qū)懭胪掏铝康腟SD的性能,相比機(jī)械盤120MB/s的順序?qū)懭胪掏铝?,SSD更好、更快。
固態(tài)硬盤的OSD對象存儲成本高昂,通過存儲一個OSD的日志在一個單獨(dú)的硬盤驅(qū)動器SSD和OSD的對象數(shù)據(jù)上時,OSDs上可能會看到一個顯著的性能提升。OSD日志配置默認(rèn)在/var/lib/ceph/osd/id/journal里。你可以掛載這個路徑到SSD或SSD的分區(qū)上,將日志文件和數(shù)據(jù)文件分別存放在不同的磁盤。
建議每臺機(jī)器最少兩個千兆網(wǎng)卡,現(xiàn)在大多數(shù)普通硬盤吞的吐量都能達(dá)到100MB/s,網(wǎng)卡應(yīng)該能處理所以O(shè)SD硬盤總吞吐量,所以推薦最少兩個千兆網(wǎng)卡,分別用于public network和cluster_network。集群網(wǎng)絡(luò)(最好別連接到互聯(lián)網(wǎng))用于處理由數(shù)據(jù)復(fù)制產(chǎn)生的額外負(fù)載,并且有助于阻止拒絕服務(wù)攻擊,拒絕服務(wù)攻擊會干擾數(shù)據(jù)歸置組,使之在OSD數(shù)據(jù)復(fù)制時不能回到active+clean狀態(tài)。請考慮部署萬兆網(wǎng)卡。通過1Gbps網(wǎng)絡(luò)復(fù)制1TB數(shù)據(jù)耗時3小時,而3TB(一個典型的驅(qū)動配置)需要9小時,與之相反,如果使用10Gbps復(fù)制時間可分別縮減到20分鐘和1小時。
在一個PB級集群中,OSD磁盤失敗是常態(tài),而非異常;在性價比合理的前提下,系統(tǒng)管理員想讓PG盡快從degraded(降級)狀態(tài)恢復(fù)到active+clean狀態(tài)。采用10G網(wǎng)卡值得考慮使用。每個網(wǎng)絡(luò)的頂級機(jī)架路由器到核心路由器通信應(yīng)該有更快的吞吐量,例如,40Gbps~100Gbps。
可以在每臺主機(jī)上運(yùn)行多個OSD進(jìn)程,但應(yīng)該確保OSD硬盤的吞吐量總和不超過客戶端讀取或?qū)懭霐?shù)據(jù)所需的網(wǎng)絡(luò)帶寬。也應(yīng)該考慮在每個主機(jī)上數(shù)據(jù)的存儲率。如果一個特定的主機(jī)上的百分比較大,它可能會導(dǎo)致問題:為了防止數(shù)據(jù)丟失,會導(dǎo)致Ceph停止操作。
當(dāng)每臺主機(jī)上運(yùn)行多個OSD進(jìn)程時,還需要保證內(nèi)核是最新的。 當(dāng)每臺主機(jī)上運(yùn)行多個OSD進(jìn)程時(如>20)會產(chǎn)生很多的線程,特別是進(jìn)行recovery和relalancing操作。許多Linux內(nèi)核默認(rèn)線程限最大數(shù)量比較?。ɡ?,32k的)。如果您遇到這方面的問題,可以考慮把kernel.pid_max設(shè)置的高一點。理論上的最大值為4,194,303。
以上就是“Ceph分布式存儲集群搭建要注意哪些事項”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家閱讀完這篇文章都有很大的收獲,小編每天都會為大家更新不同的知識,如果還想學(xué)習(xí)更多的知識,請關(guān)注億速云行業(yè)資訊頻道。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。