Server/storage-ng: Unterschied zwischen den Versionen

Aus C3D2
Zur Navigation springen Zur Suche springen
Keine Bearbeitungszusammenfassung
Zeile 134: Zeile 134:
   ceph auth import -i /etc/ceph/ceph.client.fnord,keyring
   ceph auth import -i /etc/ceph/ceph.client.fnord,keyring


Wir können uns vom Erfolg der Einrichtung überzeugen in dem wir folgendes eingeben
  ceph auth get client.fnord
  [client.fnord]
key = XXXXXXXXXXXXXXXXXXXXX
caps mds = "allow"
caps mon = "allow r"
caps osd = "allow rw pool=cpool_data"


== Einhängen vom CephFS ==
== Einhängen vom CephFS ==

Version vom 5. Januar 2022, 06:07 Uhr

Storage-NG

Storage-ng nutzt ceph um einen verteilten Speicher anzubieten.


storage-ng.hq.c3d2.de

Um es einfach zu machen den storage zu erreichen, kann man storage-ng.hq.c3d2.de nutzten. Er bietet verschiedene Dienste an, um das darunter liegdende Dateisystem zu erreichen.

* http
* samba
* tftp
* TODO: webdav

Es eine virtuelle Machine im HA modus die direkt auf der Storage Hardware läuft.

Konfiguration über nixos.

Tips

Der default storage pool für das cephfs ist auf mäßige Geschwindigkeit ausgelegt, nicht auf Effizienz. Um ein Verzeichnis effizient zu nutzen kann der archive pool genutzt werden:

 setfattr -n ceph.dir.layout.pool -v cephfs_archive [folder]

Siehe auch Ceph Docu

Leider beim Schreiben spürbar langsamer. Wenn es schnell gehen soll in ein normales Verzeichnis schieben und dann auf storage im screen verschieben.

CephFS

Ceph ist ein verteiltes Dateisystem über mehrere Nodes, daher spricht man auch von einem Ceph Cluster.

Eine gute Einführung über die Grundlagen und Architektur von CephFS erhält man unter [1]

Es gibt 4 verschiedenen Zugriffswege auf den Ceph-Storage

  • radosgw
  • RADOS Block Device
  • CephFS
  • librados


Dashboard

Um sich eine einfache Übersicht zu verschaffen sei auf das Ceph-Dashboard verwiesen. Mit dem Nutzer k-ot einloggen. Das Dashboard bietet eine guten Überblick über alle involvierten Server und kann einem die Hosts, OSDs, Crush-Maps, Pools und viele weitere Details mit samt Konfiguration im Browser darstellen.

Pools

Daten sind in unterschiedlichen Pools organisiert die unterschiedliche Charakteristiken besitzen.

rados lspools
ceph osd lspools
Name Funktion Hardware Replikation
vms Backing store für VMS z.Z. alle SAS und ~300 GB Platten replicated_osd (soll replicated_rule)
cephfs_data Default storage fur cephfs alle 2 TB+ Plaaten. cephfs_data (mirror 1/2)
cephfs_archive Langsamer aber effizienter backing store alle 2 TB+ Plaaten. cephfs_archive (~raid5 k=2 m=1)
cephfs_metadata Metadata cephfs SSD von allen Servern. cephfs_metadata (mirror 2/3)

Hardware Server

Alle Server des Verbundes nehmen proxmox als Betriebsystem.

Server Hardware Services Bemerkungen
server3.hq.c3d2.de osd, mon, mds Default für storage VM
server4.hq.c3d2.de osd, mon
server5.hq.c3d2.de osd, mon, mds

Nutzerverwaltung

Um Zugriff auf den Storage Cluster zu erhalten muss man einen Schlüsselbund erstellen.

Beispiel für einen neuen Nutzer fnord

  ceph-authtool --create-keyring /etc/ceph/ceph.client.fnord.keyring --gen-key -n client.fnord


Als nächstes geben wir dem neu erstellten Nutzer die Berechtigungen:

  ceph-authtool -n client.fnord --cap mds 'allow' --cap osd 'allow rw pool=cpool_data' --cap mon 'allow r' /etc/ceph/ceph.client.fnord.keyring

gibt fnord die Möglichkeit schreibend und lesend auf den *cpool_data* zu zugreifen

Danach importieren wir den Schlüssel:

  ceph auth import -i /etc/ceph/ceph.client.fnord,keyring

Wir können uns vom Erfolg der Einrichtung überzeugen in dem wir folgendes eingeben

  ceph auth get client.fnord
  [client.fnord]

key = XXXXXXXXXXXXXXXXXXXXX caps mds = "allow" caps mon = "allow r" caps osd = "allow rw pool=cpool_data"

Einhängen vom CephFS

Folgende Optionen für das Einhängen zu setzen:

    172.22.99.13:6789,172.22.99.15:6789,172.22.99.16:6789:/ on /mnt/pve/cephfs type ceph (rw,relatime,name=admin,secret=<hidden>,acl,wsize=16777216,_netdev)
    172.22.99.13:6789,172.22.99.15:6789,172.22.99.16:6789:/ on /mnt/pve/cephfs-backups type ceph (rw,relatime,name=admin,secret=<hidden>,acl,wsize=16777216,_netdev)
    172.22.99.13:6789,172.22.99.15:6789,172.22.99.16:6789:/ on /mnt/pve/cephfs-iso type ceph (rw,relatime,name=admin,secret=<hidden>,acl,wsize=16777216,_netdev)