Standardmäßig verwendet Ceph replizierte Pools für Datenpools. Bei Bedarf kann jedoch ein weiterer löschcodierter Datenpool zum Ceph File System hinzugefügt werden.
Vorbereitende Schritte
Bevor Sie beginnen, sollten Sie sicherstellen, dass die folgenden Voraussetzungen erfüllt sind:
- Ein laufender IBM Storage Ceph -Cluster.
- Ein vorhandenes Ceph File System.
- Pools, die BlueStore -OSDs verwenden
- Zugriff auf Stammebene auf einen Ceph-Monitorknoten.
- Das installierte Paket
attr .
Informationen zu dieser Task
Ceph-Dateisysteme (CephFS), die durch erasure-codierte Pools gesichert werden, verwenden weniger Gesamtspeicher als Ceph-Dateisysteme, die durch replizierte Pools gesichert werden. Während erasure-codierte Pools weniger Gesamtspeicher belegen, verwenden sie auch mehr Speicher und Prozessorressourcen als replizierte Pools.Wichtig: Verwenden Sie für Produktionsumgebungen den replizierten Standarddatenpool für CephFS. Bei der Erstellung von I-Nodes in CephFS wird mindestens ein Objekt im Standarddatenpool erstellt. Es ist besser, einen replizierten Pool für die Standarddaten zu verwenden, um die Schreibleistung für kleine Objekte zu verbessern und um die Leseleistung für die Aktualisierung von Backtraces zu verbessern.
Weitere Informationen finden Sie unter:
Vorgehensweise
- Erstellen Sie einen löschcodierten Datenpool für CephFS.
ceph osd pool create DATA_POOL_NAME erasure
Beispiel:
[ root@mon ~]# ceph osd pool create cephfs-data-ec01 erasure
pool ' cephfs-data-ec01 ' erstellt
- Überprüfen Sie, dass der Pool hinzugefügt wurde.
[root@mon ~]# ceph osd lspools
- Überschreibungen für den erasure-codierten Pool aktivieren.
ceph osd pool set DATA_POOL_NAME allow_ec_overwrites true
Beispiel:
[ root@mon ~]# ceph osd pool set cephfs-data-ec01 allow_ec_overwrites true
pool 15 allow_ec_overwrites auf true setzen
- Überprüfen Sie den Status des Ceph File System.
ceph fs status FILE_SYSTEM_NAME
Beispiel:
[ root@mon ~]# ceph fs status cephfs-ec
cephfs-ec - 14 Kunden
=========
RANG STAAT MDS AKTIVITÄT DNS INOS DIRS CAPS
0 aktiv cephfs-ec.example.ooymyq Abrufe: 0 /s 8231 8233 891 921
POOLTYP VERWENDET VERFÜGBAR
cephfs-metadata-ec metadata 787M 8274G
cephfs-data-ec Daten 2360G 12.1T
STANDBY MDS
cephfs-ec.example.irsrql
cephfs-ec.example.cauuaj - Fügen Sie den erasure-codierten Datenpool zum vorhandenen CephFShinzu.
ceph fs add_data_pool FILE_SYSTEM_NAME DATA_POOL_NAME
Im folgenden Beispiel wird der neue Datenpool,
cephfs-data-ec01, dem vorhandenen Dateisystem mit Erasure-Code (
cephfs-ec) hinzugefügt.
[ root@mon ~]# ceph fs add_data_pool cephfs-ec cephfs-data-ec01
- Überprüfen Sie, ob der Pool mit Löschcode zum Ceph File Systemhinzugefügt wurde.
ceph fs status FILE_SYSTEM_NAME
Beispiel:
[ root@mon ~]# ceph fs status cephfs-ec
cephfs-ec - 14 Kunden
=========
RANG STAAT MDS AKTIVITÄT DNS INOS DIRS CAPS
0 aktiv cephfs-ec.example.ooymyq Abrufe: 0 /s 8231 8233 891 921
POOLTYP VERWENDET VERFÜGBAR
cephfs-metadata-ec metadata 787M 8274G
cephfs-data-ec Daten 2360G 12.1T
cephfs-data-ec01 daten 0 12.1T
STANDBY MDS
cephfs-ec.example.irsrql
cephfs-ec.example.cauuaj - Legt das Dateilayout für ein neues Verzeichnis fest.
mkdir PATH_TO_DIRECTORY
setfattr -n ceph.dir.layout.pool -v DATA_POOL_NAME PATH_TO_DIRECTORY
Im folgenden Beispiel übernehmen alle neuen Dateien, die im Verzeichnis
/mnt/cephfs/newdir erstellt werden, das Verzeichnislayout und stellen die Daten in den neu hinzugefügten erasure-codierten Pool.
[ root@mon ~]# mkdir /mnt/cephfs/newdir
[ root@mon ~]# setfattr -n ceph.dir.layout.pool -v cephfs-data-ec01 /mnt/cephfs/newdir