欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Ceph集群CephFS文件存儲(chǔ)核心概念及部署使用詳解

 更新時(shí)間:2022年10月18日 16:50:57   作者:jiangxl  
這篇文章主要為大家介紹了Ceph集群CephFS文件存儲(chǔ)核心概念及部署使用詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪

1.CephFS文件存儲(chǔ)核心概念

1.1.CephFS文件存儲(chǔ)簡介

官方文檔:docs.ceph.com/en/pacific/…

傳統(tǒng)的文件存儲(chǔ)通常使用的是NAS存儲(chǔ),通過NFS協(xié)議來實(shí)現(xiàn),NFS類型的文件存儲(chǔ)可以同時(shí)共享給多個(gè)客戶端使用,傳輸協(xié)議簡單,只要有網(wǎng)絡(luò)就可以實(shí)現(xiàn)。

對(duì)于存儲(chǔ)而言,高可用性是必須具備的,一旦存儲(chǔ)宕機(jī),就會(huì)影響應(yīng)用程序的使用,而NAS存儲(chǔ)最典型的缺點(diǎn)就是單點(diǎn)故障。

在Ceph分布式存儲(chǔ)系統(tǒng)中有關(guān)于文件存儲(chǔ)的存儲(chǔ)類型,稱之為CephFS,CephFS是一個(gè)符合POSIX的文件系統(tǒng),構(gòu)建在Ceph對(duì)象存儲(chǔ)Rados之上,CephFS可以為各種應(yīng)用程序提供最先進(jìn)的、多用途、高可用性和高性能的文件存儲(chǔ)。

CephFS文件系統(tǒng)至少需要一個(gè)MDS(Metadata Server組件)來存儲(chǔ)文件系統(tǒng)的元數(shù)據(jù)信息,因此在使用CephFS文件存儲(chǔ)之前,首先要在集群中部署MDS組件,我們希望CephFS文件存儲(chǔ)具備高可用性,所以MDS組件一般都會(huì)在集群中部署多個(gè),大多數(shù)情況下都是三個(gè)MDS組件。

CephFS支持用戶級(jí)別和內(nèi)核級(jí)別的掛載使用,可擴(kuò)展性極高,并且可以同時(shí)讓多個(gè)Client客戶端進(jìn)行讀寫。

簡而言之:CephFS文件存儲(chǔ)就是提供類似NFS服務(wù)的共享存儲(chǔ)系統(tǒng),相當(dāng)于基于NFS的分布式文件存儲(chǔ)系統(tǒng),多個(gè)客戶端可以同時(shí)去掛載這個(gè)文件存儲(chǔ)系統(tǒng),并且還可以提供高可靠服務(wù)。

1.2.CephFS文件存儲(chǔ)架構(gòu)

CephFS文件系統(tǒng)的核心組件有:

MDS:MDS組件主要用于保存文件的元數(shù)據(jù)信息,會(huì)單獨(dú)存放在一個(gè)Pool資源池中。

MDS支持高可用性,默認(rèn)采用主備模式,也可以配置成多主模式。

Client:客戶端。

RADOS:CephFS也是基于RADOS來實(shí)現(xiàn)文件存儲(chǔ)的,CephFS文件存儲(chǔ)中的文件數(shù)據(jù)與文件的元數(shù)據(jù)都是單獨(dú)在不同的Pool資源池中存儲(chǔ)的。

Ceph集群如果想要實(shí)現(xiàn)CephFS文件存儲(chǔ),首先需要在集群中準(zhǔn)備MDS組件,MDS組件主要是來保存文件存儲(chǔ)中文件的元數(shù)據(jù)信息,一般會(huì)部署三個(gè)MDS組件,形成高可用模式,其中一個(gè)MDS的Active狀態(tài)提供服務(wù),另外兩個(gè)都是Standby的狀態(tài),當(dāng)Active狀態(tài)的MDS掛掉后,Standby狀態(tài)的MDS之間會(huì)就進(jìn)行選舉,選舉成功的MDS節(jié)點(diǎn)就會(huì)成為集群中的Active。

MDS組件會(huì)將文件的元數(shù)據(jù)信息寫在Journal日志中,最終Journal日志中的文件元數(shù)據(jù)信息會(huì)寫入到一個(gè)Metadata的Pool資源池中,所有的MDS節(jié)點(diǎn)都會(huì)連接這個(gè)Pool資源池,并且MDS各節(jié)點(diǎn)之間會(huì)交換元數(shù)據(jù)信息,當(dāng)Active狀態(tài)的MDS組件掛掉了,選舉出來的MDS會(huì)從Metadata Pool資源池獲取整個(gè)集群中所有文件的元數(shù)據(jù)信息。

CephFS會(huì)將用戶寫入的文件數(shù)據(jù)與文件的元數(shù)據(jù)分開存放在不同的Pool資源池中,將數(shù)據(jù)與元數(shù)據(jù)分開存儲(chǔ)。

Client客戶端可以直接在存放數(shù)據(jù)的Pool資源池中寫入文件數(shù)據(jù),寫入的文件依舊會(huì)被拆分成多個(gè)Object對(duì)象文件,這些Object對(duì)象文件寫入到PG中,最后通過CRUSH算法存儲(chǔ)在多個(gè)OSD中。

1.3.CephFS文件系統(tǒng)的應(yīng)用場景與特性

應(yīng)用場景:

  • 為K8S集群Pod資源提供持久化存儲(chǔ)。
  • 多個(gè)服務(wù)器同時(shí)掛載一個(gè)文件系統(tǒng),同時(shí)進(jìn)行讀寫。

CephFS文件系統(tǒng)多MDS的優(yōu)勢及特點(diǎn):

  • 當(dāng)元數(shù)據(jù)默認(rèn)的單個(gè)MDS成為瓶頸時(shí),配置多個(gè)活躍的MDS守護(hù)進(jìn)程,提升集群性能。
  • 多個(gè)活躍的MDS有利于性能提升。
  • 多個(gè)活躍的MDS可以實(shí)現(xiàn)MDS負(fù)載均衡。
  • 多個(gè)活躍的MDS可以實(shí)現(xiàn)多租戶資源隔離。
  • 它能夠?qū)⑽募到y(tǒng)樹分割成子樹,每個(gè)子樹可以交給特定的MDS進(jìn)行權(quán)威管理,從而達(dá)到了隨著元數(shù)據(jù)服務(wù)器數(shù)量的增加,集群性能線性地?cái)U(kuò)展。
  • 每個(gè)子樹都是基于元數(shù)據(jù)在給定目錄樹中的熱動(dòng)態(tài)創(chuàng)建的。
  • 一旦創(chuàng)建了子樹,它的元數(shù)據(jù)就被遷移到一個(gè)未加載的MDS。
  • 后續(xù)客戶端對(duì)先前授權(quán)的MDS的請(qǐng)求被轉(zhuǎn)發(fā)。

2.在Ceph集群中部署MDS組件

 1.在集群所有節(jié)點(diǎn)都安裝mds組件
 yum -y install ceph-mds
 2.將所有的ceph節(jié)點(diǎn)都部署mds組件形成高可用集群
 [root@ceph-node-1 ~]# cd /data/ceph-deploy/
 [root@ceph-node-1 ceph-deploy]# ceph-deploy mds create ceph-node-1 ceph-node-2 ceph-node-3

 3.查看集群狀態(tài)
 [root@ceph-node-1 ceph-deploy]# ceph -s
   cluster:
     id:     a5ec192a-8d13-4624-b253-5b350a616041
     health: HEALTH_OK
   services:
     mon: 3 daemons, quorum ceph-node-1,ceph-node-2,ceph-node-3 (age 19h)
     mgr: ceph-node-1(active, since 19h), standbys: ceph-node-2, ceph-node-3
     mds:  3 up:standby
     osd: 6 osds: 6 up (since 18h), 6 in (since 18h)
     rgw: 1 daemon active (ceph-node-1)
   task status:
   data:
     pools:   7 pools, 320 pgs
     objects: 252 objects, 161 KiB
     usage:   6.1 GiB used, 54 GiB / 60 GiB avail
     pgs:     320 active+clean

可以看到集群中已經(jīng)有3個(gè)MDS組件了,但是狀態(tài)都處于standby,那是因?yàn)榧褐羞€沒有創(chuàng)建CephFS文件系統(tǒng),導(dǎo)致MDS組件無法選舉。

3.在Ceph集群中創(chuàng)建一個(gè)CephFS文件存儲(chǔ)系統(tǒng)

一個(gè)Cephfs文件存儲(chǔ)系統(tǒng)至少需要兩個(gè)Rados資源池,一個(gè)資源池用于存放文件數(shù)據(jù),另一個(gè)資源池用于存放文件的元數(shù)據(jù)信息,如果元數(shù)據(jù)資源池中的任何數(shù)據(jù)丟失,都有可能導(dǎo)致整個(gè)文件系統(tǒng)無法訪問。

對(duì)元數(shù)據(jù)資源池建議使用較低延遲的OSD,例如可以使用SSD硬盤的OSD,元數(shù)據(jù)資源池的延遲直接會(huì)影響在客戶端中文件系統(tǒng)操作的延遲。

3.1.為CephFS文件存儲(chǔ)系統(tǒng)創(chuàng)建Pool資源池

創(chuàng)建好這兩個(gè)Pool資源池后,只能為一個(gè)cephfs文件存儲(chǔ)系統(tǒng)使用,如果集群中需要?jiǎng)?chuàng)建多個(gè)cephfs文件系統(tǒng),則需要?jiǎng)?chuàng)建多個(gè)元數(shù)據(jù)池和數(shù)據(jù)池,一個(gè)元數(shù)據(jù)資源池和數(shù)據(jù)資源池只能為一個(gè)Cephfs文件系統(tǒng)提供使用。

 1.創(chuàng)建元數(shù)據(jù)資源池
 [root@ceph-node-1 ~]# ceph osd pool create cephfs_metadata 16 16
 pool 'cephfs_metadata' created
 2.創(chuàng)建數(shù)據(jù)資源池
 [root@ceph-node-1 ~]# ceph osd pool create cephfs_data 16 16
 pool 'cephfs_data' created
 3.查看創(chuàng)建的資源池
 [root@ceph-node-1 ~]# ceph osd lspools
 1 ceph-rbd-data
 2 .rgw.root
 3 default.rgw.control
 4 default.rgw.meta
 5 default.rgw.log
 6 default.rgw.buckets.index
 7 default.rgw.buckets.data
 8 cephfs_metadata
 9 cephfs_data

3.2.創(chuàng)建CephFS文件系統(tǒng)

命令格式:ceph fs new {cephfs_name} {metadata_pool} {data_pool}

 1.創(chuàng)建cephfs文件存儲(chǔ)
 [root@ceph-node-1 ~]# ceph fs new cephfs-storage cephfs_metadata cephfs_data
 new fs with metadata pool 8 and data pool 9
 2.查看創(chuàng)建的cephfs文件存儲(chǔ)
 [root@ceph-node-1 ~]# ceph fs  ls
 name: cephfs-storage, metadata pool: cephfs_metadata, data pools: [cephfs_data ]
 [root@ceph-node-1 ~]# ceph fs volume ls
 [
     {
         "name": "cephfs-storage"
     }
 ]

3.3.再次觀察Ceph集群的狀態(tài)

 [root@ceph-node-1 ~]# ceph -s
   cluster:
     id:     a5ec192a-8d13-4624-b253-5b350a616041
     health: HEALTH_OK
   services:
     mon: 3 daemons, quorum ceph-node-1,ceph-node-2,ceph-node-3 (age 24h)
     mgr: ceph-node-1(active, since 24h), standbys: ceph-node-2, ceph-node-3
     mds: cephfs-storage:1 {0=ceph-node-1=up:active} 2 up:standby                    #當(dāng)創(chuàng)建完cephfs文件系統(tǒng)后,mds組件自動(dòng)選舉一個(gè)mds組件為active狀態(tài),其余為standby狀態(tài)
     osd: 6 osds: 6 up (since 23h), 6 in (since 23h)
     rgw: 1 daemon active (ceph-node-1)
   task status:
   data:
     pools:   9 pools, 352 pgs
     objects: 274 objects, 164 KiB
     usage:   6.1 GiB used, 54 GiB / 60 GiB avail
     pgs:     352 active+clean

4.內(nèi)核級(jí)別掛載CephFS文件系統(tǒng)

掛載的操作文檔:docs.ceph.com/en/pacific/…

4.1.無需認(rèn)證的方式掛載CephFS文件系統(tǒng)

1)在客戶端中創(chuàng)建掛載目錄

 [root@ceph-node-1 ~]# mkdir /cephfs_data

2)使用內(nèi)核級(jí)別掛載Cephfs文件系統(tǒng)

CephFS系統(tǒng)可以理解為也是一個(gè)磁盤,類型是ceph的類型,直接可以通過mount命令進(jìn)行掛載。

命令格式:mount -t ceph {monitor_addr}:/ /{path} -o name=admin

掛載時(shí)最好指定所有monitor組件的地址,否則當(dāng)有一個(gè)monitor組件產(chǎn)生問題,就會(huì)影響掛載。

 1.首先確認(rèn)mount是否支持ceph類型的文件系統(tǒng),如果不支持則去安裝ceph-common包
 [root@ceph-node-1 ~]# which mount.ceph
 /usr/sbin/mount.ceph
 2.掛載cephfs文件系統(tǒng)
 [root@ceph-node-1 ~]# mount -t ceph 192.168.20.20:6789,192.168.20.21:6789,192.168.20.22:6789:/ /cephfs_data/ -o name=admin
 #這個(gè)admin用戶是ceph集群默認(rèn)的用戶,不需要指定secret key
 3.查看是否掛載成功
 [root@ceph-node-1 ~]# df -hT /cephfs_data/
 文件系統(tǒng)                                                   類型  容量  已用  可用 已用% 掛載點(diǎn)
 192.168.20.20:6789,192.168.20.21:6789,192.168.20.22:6789:/ ceph   17G     0   17G    0% /cephfs_data
 4.此時(shí)就可以在掛載目錄中寫入數(shù)據(jù)了。

4.2.使用認(rèn)證方式掛載CephFS文件系統(tǒng)

1.獲取admin用戶的Key

 [root@ceph-node-1 ~]# cat /etc/ceph/ceph.client.admin.keyring 
 [client.admin]
     key = AQBIWUhiEmaFOBAA6Jr6itUeHiLVVOeYFVpRog==
     caps mds = "allow *"
     caps mgr = "allow *"
     caps mon = "allow *"
     caps osd = "allow *"

2.通過認(rèn)證方式掛載CephFS文件系統(tǒng)

[root@ceph-node-1 ~]# mount -t ceph 192.168.20.20:6789,192.168.20.21:6789,192.168.20.22:6789:/ /cephfs_data/ -o name=admin,secret=AQBIWUhiEmaFOBAA6Jr6itUeHiLVVOeYFVpRog==

3.查看是否掛載成功

[root@ceph-node-1 ~]# df -hT /cephfs_data/
文件系統(tǒng)                                                   類型  容量  已用  可用 已用% 掛載點(diǎn)
192.168.20.20:6789,192.168.20.21:6789,192.168.20.22:6789:/ ceph   17G     0   17G    0% /cephfs_data

4.設(shè)置開機(jī)自動(dòng)掛載

[root@ceph-node-1 ~]# vim /etc/fstab 
192.168.20.20:6789,192.168.20.21:6789,192.168.20.22:6789:/      /cephfs_data    ceph    name=admin,secret=AQBIWUhiEmaFOBAA6Jr6itUeHiLVVOeYFVpRog== 0 0

也可以將用戶的Key寫入到一個(gè)文件中,然后引用這個(gè)文件,如下所示:

1.將key寫入到一個(gè)文件中
[root@ceph-node-1 ~]# ceph-authtool -p /etc/ceph/ceph.client.admin.keyring > admin.key
[root@ceph-node-1 ~]# chmod 600 admin.key 
2.掛載時(shí)引用這個(gè)Key文件
[root@ceph-node-1 ~]# mount -t ceph 192.168.20.20:6789,192.168.20.21:6789,192.168.20.22:6789:/ /cephfs_data/ -o name=admin,secretfile=/root/admin.key
3.開機(jī)自動(dòng)掛載
192.168.20.20:6789,192.168.20.21:6789,192.168.20.22:6789:/      /cephfs_data    ceph    name=admin,secretfile=/root/admin.key 0 0

5.用戶空間掛載CephFS文件系統(tǒng)

1.安裝ceph-fuse客戶端
[root@ceph-node-1 ~]# yum -y install ceph-fuse
2.創(chuàng)建掛載點(diǎn)
[root@ceph-node-1 ~]# mkdir /cephfuse-data
3.使用fuse掛載
[root@ceph-node-1 ~]# ceph-fuse -n client.admin -m 192.168.20.20:6789,192.168.20.21:6789,192.168.20.22:6789 /cephfuse-data/
2022-04-03 23:37:18.794 7f5574ca7f80 -1 init, newargv = 0x5615fadddb50 newargc=9ceph-fuse[31903]: starting ceph client
ceph-fuse[31903]: starting fuse
4.查看掛載的文件系統(tǒng)
ceph-fuse[31903]: starting fuse
[root@ceph-node-1 ~]# df -HT /cephfuse-data/
文件系統(tǒng)       類型            容量  已用  可用 已用% 掛載點(diǎn)
ceph-fuse      fuse.ceph-fuse   19G     0   19G    0% /cephfuse-data

6.查看CephFS的狀態(tài)

[root@ceph-node-1 ~]# ceph fs status cephfs-storage

以上就是Ceph集群CephFS文件存儲(chǔ)核心概念及部署使用詳解的詳細(xì)內(nèi)容,更多關(guān)于Ceph CephFS文件存儲(chǔ)部署的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • Xshell?Plus?6?下載及安裝使用圖文教程(解壓即可使用)

    Xshell?Plus?6?下載及安裝使用圖文教程(解壓即可使用)

    本文分享一波?Xshell?Plus?6?破解版,親測有效,因?yàn)槭蔷G色無安裝版本的,下載下來后,解壓即可使用,就可以直接使用了,對(duì)Xshell?Plus?6?破解下載圖文教程感興趣的朋友一起看看吧
    2022-07-07
  • ApacheBeam中的延遲數(shù)據(jù)處理方法

    ApacheBeam中的延遲數(shù)據(jù)處理方法

    Apache?Beam是一個(gè)用于批處理和流處理的統(tǒng)一編程模型,可以處理實(shí)時(shí)數(shù)據(jù)流和批量數(shù)據(jù),本文給大家介紹ApacheBeam中的延遲數(shù)據(jù)處理方法,感興趣的朋友跟隨小編一起看看吧
    2024-03-03
  • 使用微信助手搭建微信返利機(jī)器人流程

    使用微信助手搭建微信返利機(jī)器人流程

    這篇文章主要介紹了使用微信助手搭建微信返利機(jī)器人流程本文給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2019-09-09
  • MATLAB?plot函數(shù)功能及用法詳解

    MATLAB?plot函數(shù)功能及用法詳解

    plot 函數(shù)語法使用plot繪制二維線圖,這篇文章主要介紹了MATLAB?plot函數(shù)詳解,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2023-01-01
  • URL中斜杠/和反斜杠\的區(qū)別小結(jié)

    URL中斜杠/和反斜杠\的區(qū)別小結(jié)

    這篇文章主要介紹了URL中斜杠/和反斜杠\的區(qū)別小結(jié),純屬個(gè)人總結(jié),相對(duì)長篇大論較容易理解,需要的朋友可以參考下
    2014-07-07
  • VS2019 自定義項(xiàng)目模板的實(shí)現(xiàn)方法

    VS2019 自定義項(xiàng)目模板的實(shí)現(xiàn)方法

    這篇文章主要介紹了VS2019 自定義項(xiàng)目模板的實(shí)現(xiàn)方法,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-04-04
  • Vscode常用快捷鍵列表、插件安裝、console.log詳解

    Vscode常用快捷鍵列表、插件安裝、console.log詳解

    對(duì)于開發(fā)者來說,在開發(fā)過程必須要掌握Vscode常用快捷鍵列表、插件安裝、console.log的相關(guān)知識(shí),今天通過本文實(shí)例圖文相結(jié)合給大家介紹的非常詳細(xì),需要的朋友參考下吧
    2021-05-05
  • 語言編程花絮內(nèi)建構(gòu)建順序示例詳解

    語言編程花絮內(nèi)建構(gòu)建順序示例詳解

    這篇文章主要為大家介紹了語言編程花絮內(nèi)建構(gòu)建順序示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-03-03
  • 網(wǎng)址(URL)支持的最大長度是多少?最大支持多少個(gè)字符?

    網(wǎng)址(URL)支持的最大長度是多少?最大支持多少個(gè)字符?

    這篇文章主要介紹了網(wǎng)址(URL)支持的最大長度是多少?最大支持多少個(gè)字符?本文總結(jié)了IIS、apache服務(wù)器及瀏覽器軟件Internet Explorer、Firefox、Opera、chrome等主流的瀏覽器軟件支持情況,需要的朋友可以參考下
    2015-07-07
  • 使用阿里大于(大魚)平臺(tái)進(jìn)行發(fā)送手機(jī)驗(yàn)證碼的流程

    使用阿里大于(大魚)平臺(tái)進(jìn)行發(fā)送手機(jī)驗(yàn)證碼的流程

    這篇文章主要介紹了使用阿里大于(大魚)平臺(tái)進(jìn)行發(fā)送手機(jī)驗(yàn)證碼的流程,非常不錯(cuò),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2019-10-10

最新評(píng)論