<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          cephfs擴(kuò)容方案匯總

          共 2884字,需瀏覽 6分鐘

           ·

          2020-12-13 05:21

          cephfs擴(kuò)容方案

          需求描述

          建立完善的cephfs的擴(kuò)容方案,滿足cephfs用戶數(shù)據(jù)存儲(chǔ)空間在各種場(chǎng)景下的擴(kuò)容需求。目前擴(kuò)容只涉及到用戶的數(shù)據(jù)存儲(chǔ),元數(shù)據(jù)部分因?yàn)榭臻g使用率較低所以不需要考慮擴(kuò)容。

          現(xiàn)有cephfs用戶存儲(chǔ)模型

          目前單個(gè)用戶會(huì)對(duì)應(yīng)一個(gè)ceph集群里面的多個(gè)Dir目錄,每個(gè)Dir目錄底層會(huì)關(guān)聯(lián)到兩個(gè)pool,其中metadata_pool用來(lái)存儲(chǔ)元數(shù)據(jù),data_pool用來(lái)存儲(chǔ)數(shù)據(jù)。

          6d93aea1fe909180017ff629dea546db.webp

          單集群擴(kuò)容方案

          通過(guò)filelayout進(jìn)行擴(kuò)容

          基本原理

          每個(gè)文件都有filelayout的xattr屬性,其中包含一個(gè)關(guān)鍵的pool字段,用來(lái)指定存儲(chǔ)文件底層用到哪個(gè)pool,因此利用該特性可以實(shí)現(xiàn)基于目錄基本的擴(kuò)容。

          參考 https://docs.ceph.com/docs/master/cephfs/file-layouts/#adding-a-data-pool-to-the-mds

          操作流程

          root@host1:/mnt/cephfs1#?ceph?df
          RAW?STORAGE:
          ????CLASS?????SIZE????????AVAIL???????USED???????RAW?USED?????%RAW?USED
          ????hdd???????952?TiB?????861?TiB?????89?TiB???????91?TiB??????????9.52
          ????TOTAL?????952?TiB?????861?TiB?????89?TiB???????91?TiB??????????9.52

          POOLS:
          ????POOL??????????????????????ID?????STORED??????OBJECTS?????USED????????%USED?????MAX?AVAIL
          ????rbdtest-site1-ssd-img??????1?????8.7?TiB???????2.34M??????26?TiB?????24.58????????27?TiB
          ????rbdtest-site1-sas-img??????2?????8.8?TiB???????2.31M??????26?TiB??????3.63???????233?TiB
          ????cephfs_metadata????????????3??????85?GiB?????116.05k??????86?GiB??????0.10????????27?TiB
          ????cephfs_data????????????????4??????12?TiB?????198.68M??????36?TiB?????30.65????????27?TiB
          ????cephfs_pool1???????????????5?????121?GiB??????31.04k?????364?GiB??????0.44????????27?TiB
          ????sym_cephfs_data????????????6?????656?KiB??????????13?????3.6?MiB?????????0???????233?TiB
          ????sym_cephfs_metadata????????7?????????0?B???????????0?????????0?B?????????0???????233?TiB
          ????kubernetes????????????????20???????152?B???????????6?????192?KiB?????????0???????233?TiB


          root@host1:/mnt/cephfs1#?setfattr?-n?ceph.dir.layout.pool?-v?cephfs_pool1?/mnt/cephfs1/extest1/

          root@host1:/mnt/cephfs1#?getfattr?-n?ceph.dir.layout?/mnt/cephfs1/extest1
          getfattr:?Removing?leading?'/'?from?absolute?path?names
          #?file:?mnt/cephfs1/extest1
          ceph.dir.layout="stripe_unit=4194304?stripe_count=1?object_size=4194304?pool=cephfs_pool1"


          root@host1:/mnt/cephfs1/extest1#?touch?file2

          root@host1:/mnt/cephfs1/extest1#?getfattr?-n?ceph.file.layout?/mnt/cephfs1/extest1/file2
          getfattr:?Removing?leading?'/'?from?absolute?path?names
          #?file:?mnt/cephfs1/extest1/file2
          ceph.file.layout="stripe_unit=4194304?stripe_count=1?object_size=4194304?pool=cephfs_pool1"

          方案1. 同級(jí)目錄擴(kuò)容

          如果業(yè)務(wù)側(cè)能夠按新增主目錄方式進(jìn)行擴(kuò)容,則可以通過(guò)新增一個(gè)用戶主目錄,將新目錄指向新的data_pool來(lái)實(shí)現(xiàn)擴(kuò)容。

          優(yōu)點(diǎn):新擴(kuò)容的pool不會(huì)對(duì)現(xiàn)有存儲(chǔ)服務(wù)造成影響。

          缺點(diǎn):業(yè)務(wù)需要能夠適配這種新增子目錄的擴(kuò)容方式。

          59ce69269402ff192f9031f4a8b47947.webp

          方案2. 子目錄擴(kuò)容

          如果業(yè)務(wù)側(cè)只能在原有主目錄中進(jìn)行操作,則可以通過(guò)在原有主目錄下新增一個(gè)用戶子目錄,將新生成的子目錄指向新的data_pool來(lái)實(shí)現(xiàn)擴(kuò)容。

          優(yōu)點(diǎn):新擴(kuò)容的pool不會(huì)對(duì)現(xiàn)有存儲(chǔ)服務(wù)造成影響。

          缺點(diǎn):業(yè)務(wù)需要能夠適配這種新增子目錄的擴(kuò)容方式。

          f821488c566ac8346a19846f585ad8e4.webp

          通過(guò)新增OSD進(jìn)行擴(kuò)容

          基本原理

          基于原生底層分布式存儲(chǔ)的基本特性,可以在原有的pool里面新增OSD進(jìn)行擴(kuò)容,但是新增OSD會(huì)導(dǎo)致舊有數(shù)據(jù)重新平衡,造成性能波動(dòng),影響服務(wù)質(zhì)量。

          方案3. 原有data_pool擴(kuò)容

          通過(guò)在原有data_pool中新增OSD來(lái)實(shí)現(xiàn)擴(kuò)容。

          優(yōu)點(diǎn):業(yè)務(wù)和k8s層面不需要做任何變動(dòng),完全對(duì)上層透明。

          缺點(diǎn):舊集群在新增OSD的時(shí)候會(huì)發(fā)生性能抖動(dòng),同時(shí)為了兼顧擴(kuò)容速率和減少業(yè)務(wù)影響,相對(duì)擴(kuò)容周期會(huì)比較長(zhǎng)。受限與機(jī)房機(jī)柜和網(wǎng)絡(luò)設(shè)備環(huán)境,有物理層面的上限。

          847232313f5b901c9cbfc098486204f3.webp

          多集群擴(kuò)容方案

          方案4. 新增ceph集群

          受限于單集群規(guī)模存儲(chǔ)集群的規(guī)模有限(受限機(jī)柜、網(wǎng)絡(luò)等),單機(jī)房多集群、多機(jī)房多集群都會(huì)可能存在,因此這一塊的存儲(chǔ)擴(kuò)容方案也會(huì)納入設(shè)計(jì)范圍。

          優(yōu)點(diǎn):適配現(xiàn)有的單集群部署方案(1個(gè)集群跨3個(gè)機(jī)柜),相對(duì)來(lái)講容易做故障域隔離(雞蛋不放一個(gè)籃子里).擴(kuò)容新集群不會(huì)對(duì)現(xiàn)有存儲(chǔ)服務(wù)造成影響。

          缺點(diǎn):需要業(yè)務(wù)能夠適配這種跨集群模型(跨集群的目錄數(shù)據(jù)不能互通),單個(gè)docker里面最好不要同時(shí)掛載兩個(gè)以上集群的目錄。k8s的存儲(chǔ)資源調(diào)度復(fù)雜度上升,需要支持多集群。

          6db151dedcdb204f89a97bd28a93a2e6.webp


          瀏覽 55
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          評(píng)論
          圖片
          表情
          推薦
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  看A片网站视频 | 亚洲区无码在线播放 | 91啊啊啊啊| 丁香五月天亚洲自拍偷拍 | 日韩三级片一区二区 |