當前位置:首頁 » 存儲配置 » ceph對象存儲使用

ceph對象存儲使用

發布時間: 2022-12-09 03:14:35

⑴ ceph 塊存儲rbd的使用,使用普通戶創建和掛載rbd

ceph@ceph-deploy:~/ceph-cluster$ ceph osd pool create rbd1-data 32 32

pool 'rbd1-data' created

ceph@ceph-deploy:~/ceph-cluster$ ceph osd pool ls

device_health_metrics

mypool

.rgw.root

default.rgw.log

default.rgw.control

default.rgw.meta

myrbd1

cephfs-metadata

cephfs-data

rbd1-data

在存儲池啟用rbd:

ceph@ceph-deploy:~/ceph-cluster$ ceph osd pool application enable rbd1-data rbd

enabled application 'rbd' on pool 'rbd1-data'

初始化存儲池:

ceph@ceph-deploy:~/ceph-cluster$ rbd pool init -p rbd1-data

創建存儲池映像文件:

映像文件的管理都是rbd命令來執行,rbd可對映像執行創建,查看,刪除,以及創建快照,克隆映像,刪除快照,查看快照,快照回滾等管理操作

ceph@ceph-deploy:~/ceph-cluster$ rbd create data-img1 --size 3G --pool rbd1-data --image-format 2 --image-feature layering

ceph@ceph-deploy:~/ceph-cluster$ rbd create data-img2 --size 5G --pool rbd1-data --image-format 2 --image-feature layering

查看存儲池映像文件

ceph@ceph-deploy:~/ceph-cluster$ rbd list --pool rbd1-data

data-img1

data-img2

列出映像更多信息

ceph@ceph-deploy:~/ceph-cluster$ rbd list --pool rbd1-data -l

NAME      SIZE  PARENT  FMT  PROT  LOCK

data-img1  3 GiB            2           

data-img2  5 GiB            2

ceph@ceph-deploy:~/ceph-cluster$ rbd --image data-img1 --pool rbd1-data info

rbd image 'data-img1':

size 3 GiB in 768 objects

order 22 (4 MiB objects)

snapshot_count: 0

id: 3ab91c6a62f5

block_name_prefix: rbd_data.3ab91c6a62f5

format: 2

features: layering

op_features:

flags:

create_timestamp: Thu Sep  2 06:48:11 2021

access_timestamp: Thu Sep  2 06:48:11 2021

modify_timestamp: Thu Sep  2 06:48:11 2021

ceph@ceph-deploy:~/ceph-cluster$ rbd --image data-img1 --pool rbd1-data info --format json --pretty-format

{

    "name": "data-img1",

    "id": "3ab91c6a62f5",

    "size": 3221225472,

    "objects": 768,

    "order": 22,

    "object_size": 4194304,

    "snapshot_count": 0,

    "block_name_prefix": "rbd_data.3ab91c6a62f5",

    "format": 2,

    "features": [

        "layering"

    ],

    "op_features": [],

    "flags": [],

    "create_timestamp": "Thu Sep  2 06:48:11 2021",

    "access_timestamp": "Thu Sep  2 06:48:11 2021",

    "modify_timestamp": "Thu Sep  2 06:48:11 2021"

}

鏡像(映像)特性的啟用和禁用

特性包括:

layering支持分層快照特性  默認開啟

striping條帶化

exclusive-lock:支持獨占鎖  默認開啟

object-map 支持對象映射,加速數據導入導出及已用空間特性統計等  默認開啟

fast-diff 快速計算對象和快找數據差異對比  默認開啟

deep-flatten  支持快照扁平化操作  默認開啟

journaling  是否記錄日誌

開啟:

ceph@ceph-deploy:~/ceph-cluster$ rbd feature enable object-map --pool rbd1-data --image data-img1

ceph@ceph-deploy:~/ceph-cluster$ rbd feature enable fast-diff --pool rbd1-data --image data-img1

ceph@ceph-deploy:~/ceph-cluster$ rbd feature enable exclusive-lock --pool rbd1-data --image data-img1

禁止:

ceph@ceph-deploy:~/ceph-cluster$ rbd feature disable object-map --pool rbd1-data --image data-img1

ceph@ceph-deploy:~/ceph-cluster$ rbd feature disable fast-diff --pool rbd1-data --image data-img1

ceph@ceph-deploy:~/ceph-cluster$ rbd feature disable exclusive-lock --pool rbd1-data --image data-img1

客戶端使用塊設備:

首先要安裝ceph-comman,配置授權

[root@ceph-client1 ceph_data]# yum install -y http://mirrors.aliyun.com/ceph/rpm-octopus/el7/noarch/ceph-release-1-1.el7.noarch.rpm

[root@ceph-client1 ceph_data]# yum install ceph-common -y 

授權,

ceph@ceph-deploy:/etc/ceph$ sudo -i

root@ceph-deploy:~# cd /etc/ceph/           

root@ceph-deploy:/etc/ceph# scp ceph.conf ceph.client.admin.keyring [email protected]:/etc/ceph

ubuntu系統:

root@ceph-client2:/var/lib/ceph# apt install -y ceph-common

root@ceph-deploy:/etc/ceph# sudo scp ceph.conf ceph.client.admin.keyring [email protected]:/tmp

[email protected]'s password:

ceph.conf                                                                                                                  100%  270  117.7KB/s  00:00   

ceph.client.admin.keyring

root@ceph-client2:/var/lib/ceph# cd /etc/ceph/

root@ceph-client2:/etc/ceph# cp /tmp/ceph.c* /etc/ceph/

root@ceph-client2:/etc/ceph# ll /etc/ceph/

total 20

drwxr-xr-x  2 root root 4096 Aug 26 07:58 ./

drwxr-xr-x 84 root root 4096 Aug 26 07:49 ../

-rw-------  1 root root  151 Sep  2 07:24 ceph.client.admin.keyring

-rw-r--r--  1 root root  270 Sep  2 07:24 ceph.conf

-rw-r--r--  1 root root  92 Jul  8 07:17 rbdmap

-rw-------  1 root root    0 Aug 26 07:58 tmpmhFvZ7

客戶端映射鏡像

root@ceph-client2:/etc/ceph# rbd -p rbd1-data map data-img1

rbd: sysfs write failed

RBD image feature set mismatch. You can disable features unsupported by the kernel with "rbd feature disable rbd1-data/data-img1 object-map fast-diff".

In some cases useful info is found in syslog - try "dmesg | tail".

rbd: map failed: (6) No such device or address

root@ceph-client2:/etc/ceph# rbd feature disable rbd1-data/data-img1 object-map fast-diff

root@ceph-client2:/etc/ceph# rbd -p rbd1-data map data-img1

/dev/rbd0

root@ceph-client2:/etc/ceph# rbd -p rbd1-data map data-img2

格式化塊設備admin映射映像文件

查看塊設備

root@ceph-client2:/etc/ceph# lsblk

NAME  MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT

sda      8:0    0  20G  0 disk

└─sda1  8:1    0  20G  0 part /

sr0    11:0    1 1024M  0 rom 

rbd0  252:0    0    3G  0 disk

rbd1  252:16  0    5G  0 disk

root@ceph-client2:/etc/ceph# mkfs.ext4 /dev/rbd1

mke2fs 1.44.1 (24-Mar-2018)

Discarding device blocks: done                           

Creating filesystem with 1310720 4k blocks and 327680 inodes

Filesystem UUID: 168b99e6-a3d7-4dc6-9c69-76ce8b42f636

Superblock backups stored on blocks:

32768, 98304, 163840, 229376, 294912, 819200, 884736

Allocating group tables: done                           

Writing inode tables: done                           

Creating journal (16384 blocks): done

Writing superblocks and filesystem accounting information: done

掛在掛設備

root@ceph-client2:/etc/ceph# mkdir /data/data1 -p

root@ceph-client2:/etc/ceph# mount /dev/rbd1 /data/data1/

驗證寫入數據:

root@ceph-client2:/etc/ceph# cd /data/data1/

root@ceph-client2:/data/data1# cp /var/log/ . -r

root@ceph-client2:/data/data1# ceph df

--- RAW STORAGE ---

CLASS    SIZE    AVAIL    USED  RAW USED  %RAW USED

hdd    220 GiB  213 GiB  7.4 GiB  7.4 GiB      3.37

TOTAL  220 GiB  213 GiB  7.4 GiB  7.4 GiB      3.37

--- POOLS ---

POOL                  ID  PGS  STORED  OBJECTS    USED  %USED  MAX AVAIL

device_health_metrics  1    1      0 B        0      0 B      0    66 GiB

mypool                  2  32  1.2 MiB        1  3.5 MiB      0    66 GiB

.rgw.root              3  32  1.3 KiB        4  48 KiB      0    66 GiB

default.rgw.log        4  32  3.6 KiB      209  408 KiB      0    66 GiB

default.rgw.control    5  32      0 B        8      0 B      0    66 GiB

default.rgw.meta        6    8      0 B        0      0 B      0    66 GiB

myrbd1                  7  64  829 MiB      223  2.4 GiB  1.20    66 GiB

cephfs-metadata        8  32  563 KiB      23  1.7 MiB      0    66 GiB

cephfs-data            9  64  455 MiB      129  1.3 GiB  0.66    66 GiB

rbd1-data              10  32  124 MiB      51  373 MiB  0.18    66 GiB

創建普通用戶並授權

root@ceph-deploy:/etc/ceph# ceph auth add client.huahualin mon "allow rw"  osd "allow rwx pool=rbd1-data"

added key for client.huahualin

root@ceph-deploy:/etc/ceph# ceph-authtool --create-keyring ceph.client.huahualin.keyring

creating ceph.client.huahualin.keyring

root@ceph-deploy:/etc/ceph# ceph auth  get client.huahualin -o ceph.client.huahualin.keyring

exported keyring for client.huahualin

使用普通用戶創建rbd

root@ceph-deploy:/etc/ceph# scp ceph.conf ceph.client.huahualin.keyring  [email protected]:/etc/ceph/

普通用戶映射鏡像

[root@ceph-client1 ~]# rbd --user huahualin --pool rbd1-data map data-img2

/dev/rbd0

使用普通用戶掛載rbd

[root@ceph-client1 ~]# mkfs.ext4 /dev/rbd0

[root@ceph-client1 ~]# fdisk -l /dev/rbd0

[root@ceph-client1 ~]# mkdir /data

[root@ceph-client1 ~]# mount  /dev/rbd0 /data

[root@ceph-client1 ~]# df -Th

Filesystem              Type      Size  Used Avail Use% Mounted on

devtmpfs                devtmpfs  475M    0  475M  0% /dev

tmpfs                  tmpfs    487M    0  487M  0% /dev/shm

tmpfs                  tmpfs    487M  7.7M  479M  2% /run

tmpfs                  tmpfs    487M    0  487M  0% /sys/fs/cgroup

/dev/mapper/centos-root xfs        37G  1.7G  36G  5% /

/dev/sda1              xfs      1014M  138M  877M  14% /boot

tmpfs                  tmpfs      98M    0  98M  0% /run/user/0

192.168.241.12:6789:/  ceph      67G  456M  67G  1% /ceph_data

/dev/rbd0              ext4      4.8G  20M  4.6G  1% /data

掛載rbd後會自動載入模塊libceph.ko

[root@ceph-client1 ~]# lsmod |grep ceph

ceph                  363016  1

libceph              306750  2 rbd,ceph

dns_resolver          13140  1 libceph

libcrc32c              12644  4 xfs,libceph,nf_nat,nf_conntrack

[root@ceph-client1 ~]# modinfo libceph

filename:      /lib/moles/3.10.0-1160.el7.x86_64/kernel/net/ceph/libceph.ko.xz

license:        GPL

description:    Ceph core library

author:        Patience Warnick <[email protected]>

author:        Yehuda Sadeh <[email protected]>

author:        Sage Weil <[email protected]>

retpoline:      Y

rhelversion:    7.9

srcversion:    D4ABB648AE8130ECF90AA3F

depends:        libcrc32c,dns_resolver

intree:        Y

vermagic:      3.10.0-1160.el7.x86_64 SMP mod_unload modversions

signer:        CentOS Linux kernel signing key

sig_key:        E1:FD:B0:E2:A7:E8:61:A1:D1:CA:80:A2:3D:CF:0D:BA:3A:A4:AD:F5

sig_hashalgo:  sha256

如果鏡像空間不夠用了,我們可以做鏡像空間的拉伸,一般不建議減小

查看rdb1-data存儲池的鏡像

[root@ceph-client1 ~]# rbd ls -p rbd1-data -l

NAME      SIZE  PARENT  FMT  PROT  LOCK

data-img1  3 GiB            2           

data-img2  5 GiB            2 

比如data-img2空間不夠了,需要拉伸,將data-img2擴展到8G

[root@ceph-client1 ~]# rbd resize --pool rbd1-data --image data-img2 --size  8G

Resizing image: 100% complete...done.

可以通過fdisk -l查看鏡像空間大小,但是通過df -h就看不到

[root@ceph-client1 ~]# lsblk

NAME            MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT

sda              8:0    0  40G  0 disk

├─sda1            8:1    0    1G  0 part /boot

└─sda2            8:2    0  39G  0 part

  ├─centos-root 253:0    0  37G  0 lvm  /

  └─centos-swap 253:1    0    2G  0 lvm  [SWAP]

sr0              11:0    1 1024M  0 rom 

rbd0            252:0    0    8G  0 disk /data

[root@ceph-client1 ~]# fdisk -l /dev/rbd0

Disk /dev/rbd0: 8589 MB, 8589934592 bytes, 16777216 sectors

Units = sectors of 1 * 512 = 512 bytes

Sector size (logical/physical): 512 bytes / 512 bytes

I/O size (minimum/optimal): 4194304 bytes / 4194304 bytes

將掛載設置開機啟動

[root@ceph-client1 ~]# vi /etc/rc.d/rc.local

rbd --user huahualin --pool rbd1-data map data-img2

mount /dev/rbd0 /data

[root@ceph-client1 ~]# chmod a+x  /etc/rc.d/rc.local

[root@ceph-client1 ~]# reboot

⑵ 【ceph】對象存儲 - bucket命名規范

用於存儲 日誌文件的 存儲桶的名稱必須符合非美國標准區域的命名要求。Amazon S3 將存儲桶名稱定義為符合以下規則的一個或多個標簽(用句點分隔開):

警告
由於 S3 允許您的存儲桶用作可公開訪問的 URL,因此您選擇的存儲桶名稱必須具有全局唯一性。如果其他一些賬戶已使用您選擇的名稱創建存儲桶,則必須使用其他名稱。有關更多信息,請參閱 Amazon Simple Storage Service 開發人員指南 中的存儲桶局限和限制。

參考
https://docs.aws.amazon.com/zh_cn/awscloudtrail/latest/userguide/cloudtrail-s3-bucket-naming-requirements.html

⑶ 如何使用ceph

Ceph是一個 Linux PB 級分布式文件系統。

其命名和UCSC(Ceph 的誕生地)的吉祥物有關,這個吉祥物是 "Sammy",一個香蕉色的蛞蝓,就是頭足類中無殼的軟體動物。這些有多觸角的頭足類動物,是對一個分布式文件系統高度並行的形象比喻。
Ceph 最初是一項關於存儲系統的 PhD 研究項目,由 Sage Weil 在 University of California, SantaCruz(UCSC)實施。

簡單定義為以下3項:
1. 可輕松擴展到數 PB 容量
2. 支持多種工作負載的高性能(每秒輸入/輸出操作[IOPS]和帶寬)
3. 高可靠性
但是,這些目標之間會互相競爭(例如,可擴展性會降低或者抑制性能或者影響可靠性)。Ceph 的設計還包括保護單一點故障的容錯功能,它假設大規模(PB 級存儲)存儲故障是常見現象而不是例外情況。
它的設計並沒有假設某種特殊工作負載,但包括了適應變化的工作負載,並提供最佳性能的能力。它利用 POSIX 的兼容性完成所有這些任務,允許它對當前依賴 POSIX 語義(通過以 Ceph 為目標的改進)的應用進行透明的部署。

Ceph 生態系統架構可以劃分為四部分:
1. Clients:客戶端(數據用戶)
2. cmds:Metadata server cluster,元數據伺服器(緩存和同步分布式元數據)
3. cosd:Object storage cluster,對象存儲集群(將數據和元數據作為對象存儲,執行其他關鍵職能)
4. cmon:Cluster monitors,集群監視器(執行監視功能)

⑷ 如何配置Ceph對象存儲作為KVM虛擬機外部存儲

Ceph對象存儲只有在特定環境中才能夠發揮最佳性能表現。這款產品在研發過程中考慮到雲環境相關需求,且價格適中,能夠輕松擴展成PB級存儲。
但是部署Ceph並不簡單,IT員工必須對產品進行充分了解。
相比於現在大部分數據中心使用的傳統SAN產品,Ceph能夠大幅度降低存儲成本。這使得Ceph成為一種適用於大規模環境的理想存儲產品,但是並不適用於只需要幾台虛擬機的小型企業。

⑸ ceph(第一步) 基礎架構

ceph 是什麼?
ceph 是一種開源存儲軟體。底層實現了對象存儲,並以此為基礎對外提供對象存儲介面、塊存儲介面、文件級存儲介面。

ceph 結構包含兩個部分:

ceph 版本:Nautilus

官網的一張架構圖:

對於這張圖,一開始沒有看懂它想表達什麼,後來明白了。如下圖:

相關名詞解釋:

ceph 組件分為兩部分:

此部分介紹構成 ceph 集群的基礎組件。
其中包含 OSD、Manager、MDS、Monitor。

此部分介紹 ceph 對外提供各種功能的組件。
其中包含:Block Device、Object Storage、Filesystem。

前面兩個部分主要介紹了 ceph 的一些組件及對外提供的功能。
這部分主要介紹 ceph 的存儲邏輯。

首先,在對象存儲中,一切都是扁平化的,並且存儲的最小單元為對象(obj)。存儲 obj 如下圖:

ceph 在對象存儲的基礎上提供了更加高級的思想。

當對象數量達到了百萬級以上,原生的對象存儲在索引對象時消耗的性能非常大。ceph 因此引入了 placement group (pg)的概念。一個 pg 就是一組對象的集合。如下圖:

obj 和 pg 之間的映射由 ceph client 計算得出。

討論 pg 時,不得不提的另外一個名詞:pgp。
pgp 決定了 pg 和 osd 之間的映射關系。一般將 pgp_num 設置成和 pg_num 一樣大小。

這里還有一個名詞需要提一下,在 ceph 中會經常見到 crush 演算法。簡單來說,crush 演算法就是指 ceph 中數據如何存儲、讀取的過程。

由於 ceph 集群面對許多的獨立項目,因此 ceph 還引入了 ceph pool 的概念用於劃分不同的項目。
ceph pool 是對 ceph 對象的邏輯劃分,並不是物理劃分。

pg 和 ceph pool 的區別:

像大多數集群軟體一樣,ceph 也提供了緩存的概念。稱之為 Cache Tier(緩存層,在具體使用時有時會稱之為緩存池)。
緩存池對用戶來說是透明的,因此不會改變用戶的原有使用邏輯。以下緩存池的介紹,均為底層邏輯。
在沒有緩存池時,ceph client 直接指向存儲池。
在添加緩存池後,ceph client 指向緩存池,緩存池再指向存儲池。

官方原話:
When pg_num is increased for any pool, every PG of this pool splits into half, but they all remain mapped to their parent OSD.
Until this time, Ceph does not start rebalancing. Now, when you increase the pgp_num value for the same pool, PGs start to migrate from the parent to some other OSD, and cluster rebalancing starts. This is how PGP plays an important role.
By Karan Singh
個人翻譯:
當一個池增加 pg 數量時,這個池中的所有 pg 都會變化。但是原 pg 的實際物理存儲位置不會改變。
當一個池增加 pgp 的數量時,pg 的實際物理存儲位置會發生改變。

首先,截至目前,沒有具體查到資料證明以下觀點。(基於一致性hash的猜想)

圖中出現了一個新詞: vosd ,這個是指虛擬 osd。它的數量等於 pgp 的數量,而 pgp 一般又等於 pg。

pgp 的數量就是 vosd 的數量。

引入 pg 可以實現 pool 概念,以及優化碎片管理(這一點十分不確定)。

引入 pgp(vosd),是為了在增加 osd 時可以讓數據更加均衡的分布。

如猜想圖:
當我們增加池的 pg 數量時,不會改變 vosd,因此原 pg 與 vosd 之間的映射未變,原 pg 的實際物理位置也不會發生變化。只是會影響同一個池中 obj 的分布。
當我們增加池的 pgp 數量時,相當於改變了 vosd,通過 hash 計算出的部分 pg 與 vosd 之間的映射就要發生改變,從而導致 pg 的實際物理位置發生改變。

與一致性hash不同的地方:
一般情況下,一致性hash只有一層虛擬化層,並且虛擬化層是根據物理硬體而變化的。但是ceph卻是一種反著來的意思。

當 ceph 增加一個 osd 時,pg 的物理位置也會發生改變。
在該猜想下:
當增加 osd 時,並不會增加 vosd 的數量,原部分 vosd 會映射到新的 osd 上,因此產生一種部分 pg 的實際物理位置發生變化的情況。

創建池時,會分配固定的 pg,以及設置與 pg 一樣大小的 pgp。
注意,一般 pg 數量都設置為 2 的次方。

嚴格意義上,我們無論為池分配多少個 pg 都沒有問題。但有時候 pg num 配置小了會報錯,配置大了也會報錯。這不是因為這么配置不對,是因為有其它的參數在限制我們隨意配置 pg num。

比如:
osd 有兩個配置,當每個 osd 的 pg num 過少(默認30)時會告警,當每個 osd 的 pg num 過多(默認300)也會告警。

所以,想要入門使用 ceph,還是需要了解許多基礎知識才可以。否則,各種意外。

https://docs.ceph.com/docs/master/architecture/

https://ceph.com/pgcalc/

⑹ 如何集成Ceph對象存儲

Glance集成Glance是OpenStack中的映像服務。默認情況下,映像存儲在本地控制器,然後在被請求時復制到計算主機。計算主機緩存鏡像,但每次更新鏡像時,都需要再次復制。Ceph為Glance提供了後端,允許鏡像存儲在Ceph中,而不是本地存儲在控制器和計算節點上。這大大減少了抓取鏡像的網路流量,提高了性能,因為Ceph可以克隆鏡像而不是復制鏡像。此外,它使得在OpenStack部署或諸如多站點OpenStack之類的概念的遷移變得更簡單。安裝Glance使用的Ceph客戶端。創建Ceph用戶並將主目錄設置為/etc/ceph。將Ceph用戶添加到sudoers。在Ceph管理節點。為Glance鏡像創建CephRBD池。創建將允許Glance訪問池的密鑰環。將密鑰環復制到OpenStack控制器上的/etc/ceph。設置許可權,讓Glance可以訪問Ceph密鑰環。將密鑰環文件添加到Ceph配置。創建原始Glance配置的備份。更新Glance配置。重新啟動Glance。下載Cirros鏡像並將其添加到Glance。將QCOW2轉換為RAW。建議Ceph始終使用RAW格式。將鏡像添加到Glance。檢查Ceph中是否存在Glance圖像。Cinder集成Cinder是OpenStack中的塊存儲服務。Cinder提供了關於塊存儲的抽象,並允許供應商通過提供驅動程序進行集成。在Ceph中,每個存儲池可以映射到不同的Cinder後端。這允許創建諸如金、銀或銅的存儲服務。你可以決定例如金應該是復制三次的快速SSD磁碟,銀應該是復制兩次,銅應該是使用較慢的擦除編碼的磁碟。為Cinder卷創建一個Ceph池。創建一個密鑰環以授予Cinder訪問許可權。將密鑰環復制到OpenStack控制器。創建一個只包含OpenStack控制器上的身份驗證密鑰的文件。設置密鑰環文件的許可權,以便Cinder可以訪問。將密鑰環添加到OpenStack控制器上的Ceph配置文件中。使KVMHypervisor訪問Ceph。在virsh中創建一個密鑰,因此KVM可以訪問Ceph池的Cinder卷。為Cinder添加一個Ceph後端。在所有控制器上重新啟動Cinder服務。創建Cinder卷。在Ceph中列出Cinder卷。將Ceph與Nova計算集成Nova是OpenStack中的計算服務。Nova存儲與默認的運行虛擬機相關聯的虛擬磁碟鏡像,在/var/lib/nova/instances下的Hypervisor上。在虛擬磁碟映像的計算節點上使用本地存儲有一些缺點:·鏡像存儲在根文件系統下。大鏡像可能導致文件系統被填滿,從而導致計算節點崩潰。·計算節點上的磁碟崩潰可能導致虛擬磁碟丟失,因此無法進行虛擬機恢復。Ceph是可以直接與Nova集成的存儲後端之一。在本節中,我們將看到如何配置。為Nova創建驗證密鑰環。將密鑰環復制到OpenStack控制器。在OpenStack控制器上創建密鑰文件。設置密鑰環文件的許可權,以便Nova服務可以訪問。確保安裝所需的rpm軟體包。更新Ceph配置。讓KVM可以訪問Ceph。在virsh中創建一個密鑰,這樣KVM可以訪問Cinder卷的Ceph池。備份Nova配置。更新Nova配置以使用Ceph後端。重新啟動Nova服務。列表Neutron網路。啟動使用在Glance步驟中添加的Cirros鏡像的臨時VM實例。等待直到VM處於活動狀態。在Ceph虛擬機池中列出鏡像。我們現在應該看到鏡像存儲在Ceph中。

⑺ 【ceph】對象存儲的目錄/文件夾概念

對象存儲(OSS)中文件夾的概念僅是一個邏輯概念,在通過API/SDK的方式設置文件夾的時候可以指定object對應的key值包括前面的目錄即可實現該功能。例如,定義object的key為abc/1.jpg就會在該bucket下創建一個abc的文件夾,而在文件夾下即會有一個1.jpg的文件。

對象存儲(OSS)中的文件夾其實是一個大小為0KB的空文件。因此,用戶創建一個key值為1/的object就會定義文件夾1;並且如果用戶創建文件abc/1.jpg,系統是不會創建abc/這個文件的,因此在刪除abc/1.jpg後將不會再存在abc這個文件夾。

由於對象存儲(OSS)採用的是分布式存儲的方式,object並不是根據文件夾進行物理存儲的。也就是說並不是一個文件夾下的所有的文件都會存儲在一起的。在後端存儲的過程中不同的文件夾的文件僅僅是key值的前綴不一樣。因此這種架構下就會導致無法很方便的統計某個文件夾下的匯總信息,如文件夾大小、文件夾PV數等。而想要遍歷某個文件夾下的所有的文件也需要首先通過ListObject介面獲取文件夾下的所有文件的key值(這里需要通過prefix指定文件夾),然後再進行操作。

在邏輯上「中國.mp4」將存放到目錄「videos」中

https://help.aliyun.com/knowledge_detail/39527.html
https://www.jianshu.com/p/4212d37c0e0f

⑻ Ceph之對象存儲

RGW 全稱為Rados GateWay,是Ceph 對象存儲網關,用於向客戶端應用程序提供存儲界面,提供RestFul API 介面
Ceph對象網關是一個構建在librados之上的對象存儲介面,它為應用程序訪問Ceph 存儲提供了一個RESTFul 風格的網關。Ceph 對象存儲支持兩種介面:

1.用戶: 對象存儲應用的使用者,一個用戶擁有一個或者多個存儲桶。RGW 向您提供的用戶賬號寶琨了AK(AccessKeyID)和SK(SecretAccessKeyID)。通過使用AK和SK 對稱加密的方法來驗證某個請求的發送至身份。

參考blog: https://blog.z0ukun.com/?p=2765

熱點內容
開放上網如何設密碼 發布:2025-09-24 11:31:08 瀏覽:555
編譯原理語義分析實驗報告 發布:2025-09-24 11:24:18 瀏覽:747
手機電腦文件夾同步 發布:2025-09-24 11:17:13 瀏覽:391
華為怎麼關閉安卓系統 發布:2025-09-24 10:56:48 瀏覽:1003
其他配置是什麼意思 發布:2025-09-24 10:52:52 瀏覽:45
倩女幽魂巧燕腳本 發布:2025-09-24 10:26:28 瀏覽:68
linux下c的編譯 發布:2025-09-24 10:14:39 瀏覽:946
禁用firefox緩存 發布:2025-09-24 10:10:24 瀏覽:93
java行讀取txt文件 發布:2025-09-24 09:55:01 瀏覽:700
我的世界電腦版基岩版伺服器推薦 發布:2025-09-24 09:51:50 瀏覽:889