Differences
This shows you the differences between two versions of the page.
| Both sides previous revisionPrevious revision | |||
| doc:ceph [2023/08/04 16:23] – Removed <!-- --> murmur | doc:ceph [Unknown date] (current) – removed - external edit (Unknown date) 127.0.0.1 | ||
|---|---|---|---|
| Line 1: | Line 1: | ||
| - | # Ceph-Setup | ||
| - | |||
| - | ## Host Setup (Stand 2017-10-17) | ||
| - | |||
| - | Vorerst verwenden wir die beiden Intel-Server für CEPH Tests. Beide | ||
| - | haben ein [RAID1](RAID1 " | ||
| - | diesem [RAID1](RAID1 " | ||
| - | |||
| - | 1. /boot - 2GB | ||
| - | 2. /rootfs - 10GB | ||
| - | 3. swap - 2GB | ||
| - | 4. /var - 2GB | ||
| - | |||
| - | ### ceph1 | ||
| - | |||
| - | ``` | ||
| - | cavy@ceph1: | ||
| - | /dev/dm-0 other, ext4, mounted on / | ||
| - | /dev/dm-1 swap, swap | ||
| - | /dev/dm-2 other, ext4, mounted on /boot | ||
| - | /dev/dm-3 other, ext4, mounted on /var | ||
| - | /dev/md0 other, [[LVM2]]_member | ||
| - | /dev/sda : | ||
| - | / | ||
| - | /dev/sdb : | ||
| - | / | ||
| - | /dev/sdc : | ||
| - | / | ||
| - | /dev/sdd : | ||
| - | / | ||
| - | /dev/sde : | ||
| - | / | ||
| - | /dev/sdf other, unknown | ||
| - | /dev/sdg other, unknown | ||
| - | /dev/sdh : | ||
| - | / | ||
| - | / | ||
| - | / | ||
| - | / | ||
| - | / | ||
| - | ``` | ||
| - | |||
| - | #### Frontalansicht mit Seriennummern der Devices für ceph1 | ||
| - | |||
| - | \|\|**HD 250GB** 5 0014ee 65921284e \*) \|\|**HD 1TB** \|\|**HD 1TB** | ||
| - | \|\|\|\|Anschlüsse \|\| \|\|**HD 250GB** 5 0014ee 603cbd93f \*) \|\|**HD | ||
| - | 1TB** \|\|**HD 1TB** 5 0014ee 603ffa30c \|\|**SSD 240G** 5 5cd2e4 | ||
| - | 14ddb886f \|\|**Hd 1TB** 5 0014ee 607768171 \|\| | ||
| - | |||
| - | ### ceph2 | ||
| - | |||
| - | ``` | ||
| - | cavy@ceph2: | ||
| - | /dev/dm-0 other, ext4, mounted on / | ||
| - | /dev/dm-1 swap, swap | ||
| - | /dev/dm-2 other, ext4, mounted on /boot | ||
| - | /dev/dm-3 other, ext4, mounted on /var | ||
| - | /dev/md0 other, [[LVM2]]_member | ||
| - | /dev/sda : | ||
| - | / | ||
| - | /dev/sdb : | ||
| - | / | ||
| - | /dev/sdc : | ||
| - | / | ||
| - | /dev/sdd : | ||
| - | / | ||
| - | /dev/sde : | ||
| - | / | ||
| - | /dev/sdf other, unknown | ||
| - | /dev/sdg other, unknown | ||
| - | /dev/sdh : | ||
| - | / | ||
| - | / | ||
| - | / | ||
| - | / | ||
| - | / | ||
| - | ``` | ||
| - | |||
| - | #### Frontalansicht mit Seriennummern der Devices für ceph2 | ||
| - | |||
| - | \|\|**HD 250GB** 5 0014ee 6ae762535 \*) \|\|**HD 1TB** \|\|**HD 1TB** 5 | ||
| - | 0014ee 607767c31 \|\|\|\|Anschlüsse \|\| \|\|**HD 250GB** 5 0014ee | ||
| - | 6ae762bc6 \*) \|\|**HD 1TB** \|\|**HD 1TB** \|\|**HD 1TB** 5 0014ee | ||
| - | 65ccbc69a \|\|**SSD 240GB** 5 5cd2e4 14ddb6321 \|\| | ||
| - | |||
| - | - ) das sind **Vermutungen** | ||
| - | |||
| - | Cluster Setup (Stand 04.04.2017) | ||
| - | -------------------------------- | ||
| - | |||
| - | **Monitore: | ||
| - | |||
| - | monmap e3: **3 mons** at | ||
| - | {**ceph1=172.16.16.17**: | ||
| - | |||
| - | **OSD\' | ||
| - | |||
| - | `. host ceph1 - `**`osd.0`` ``osd.1`` ``osd.4`**\ | ||
| - | `. host ceph2 - `**`osd.2`` ``osd.3`` ``osd.5`** | ||
| - | |||
| - | Wiederkehrende Probleme | ||
| - | ----------------------- | ||
| - | |||
| - | Wenn nach einem Reboot die Journale wieder mal nicht automatisch | ||
| - | mounten, weil sie nicht die richtige Permissions **ceph: | ||
| - | dann haben die Partitionen nicht die richtige parttype, dann folgendes | ||
| - | machen: zb ceph2: | ||
| - | |||
| - | ``` | ||
| - | . sgdisk --typecode=3: | ||
| - | . sgdisk --typecode=4: | ||
| - | . sgdisk --typecode=5: | ||
| - | ``` | ||
| - | |||
| - | Einrichtung | ||
| - | ----------- | ||
| - | |||
| - | Die Einrichtung eines **neuen** Ceph-Admin-Nodes folgt der offiziellen | ||
| - | [Dokumentation](http:// | ||
| - | von ceph. | ||
| - | |||
| - | ### Auf allen Nodes: | ||
| - | |||
| - | - User **cavy** anlegen und den ssh-key vom Admin-Node ins | ||
| - | .ssh/ | ||
| - | - User **cavy** sudo-Rechte geben | ||
| - | |||
| - | |||
| - | echo "cavy ALL = (root) NOPASSWD: | ||
| - | |||
| - | - Die ceph Sourceslist anlegen | ||
| - | - Den Ceph-Repo-Key installieren | ||
| - | |||
| - | |||
| - | wget -q -O- ' | ||
| - | |||
| - | |||
| - | ### Am Admin-Node: | ||
| - | |||
| - | - User **cavy** anlegen. Als Passwort den Hashwert einer beliebigen | ||
| - | Datei verwenden; das Passwort wird nie gebraucht werden. | ||
| - | - | ||
| - | - | ||
| - | erledigen. | ||
| - | |||
| - | |||
| - | wget -q -O- ' | ||
| - | echo deb http:// | ||
| - | |||
| - | - | ||
| - | |||
| - | |||
| - | sudo apt-get update | ||
| - | sudo apt-get install ceph-deploy | ||
| - | |||
| - | - Einen neuen cluster anlegen | ||
| - | - Die Konfigurationsdatei anpassen | ||
| - | - Den ersten Monitor anlegen | ||
| - | - | ||
| - | |||
| - | Libvirt/KVM | ||
| - | ----------- | ||
| - | |||
| - | Mehr Info dazu gibt\' | ||
| - | [Ceph-Seite](http:// | ||
| - | Leider geht noch nicht alles sauber mit dem machine-manager. Ich bin mal | ||
| - | so vorgegangen: | ||
| - | |||
| - | - | ||
| - | |||
| - | ceph osd pool create images 200 200 | ||
| - | |||
| - | - | ||
| - | |||
| - | ceph auth get-or-create client.libvirt mon 'allow r' osd 'allow class-read object_prefix rbd_children, | ||
| - | |||
| - | - Den Pool am Virtualisierungsserver mit virsh angelegt. Dazu gibt\' | ||
| - | gute Hinweise auf den Seiten von libvirt, | ||
| - | < | ||
| - | < | ||
| - | Files, die ich zum Anlegen des Pools verwendet habe sind diese: | ||
| - | |||
| - | ceph-secret.xml | ||
| - | |||
| - | <secret ephemeral=' | ||
| - | < | ||
| - | < | ||
| - | <usage type=' | ||
| - | < | ||
| - | </ | ||
| - | </ | ||
| - | |||
| - | pool-define.xml | ||
| - | |||
| - | <pool type=' | ||
| - | < | ||
| - | < | ||
| - | <host name=' | ||
| - | <host name=' | ||
| - | <host name=' | ||
| - | < | ||
| - | <auth username=' | ||
| - | <secret uuid=' | ||
| - | </ | ||
| - | </ | ||
| - | </ | ||
| - | |||
| - | - Damit legt eins (als root!) zuerst ein Secret an: | ||
| - | |||
| - | virsh secret-define ceph-secret.xml | ||
| - | |||
| - | - Dann wird das secret mit dem KEY des client.libvirt verknüpft (der | ||
| - | KEY kann auf ceph1 mit | ||
| - | ceph auth list | ||
| - | |||
| - | gefunden werden: | ||
| - | |||
| - | virsh secret-set-value dcf50f8c-4374-416f-8718-e33815f2cec0 KEY | ||
| - | |||
| - | - Damit ist das Secret irgendwo (ich hab selber keine Ahnung wo) in | ||
| - | der Virtualiseriungsumgebung gespeichert und kann später in den | ||
| - | Konfigurationsdateien verwenden werden. | ||
| - | |||
| - | - Nun kann der Pool angelegt (wieder als root!) werden: | ||
| - | |||
| - | virsh pool-define pool-define.xml | ||
| - | |||
| - | Jetzt steht der Pool mal prinzipiell auch im virt-manager zur Verfügung | ||
| - | (wo er noch gestartet werden muss). Anlegen von Files für Vserver-Images | ||
| - | funktioniert auch schon, nur das Einbinden der Images in einen Vserver | ||
| - | erfordert noch einen Zwischenschritt mit virsh. Wir verwenden übrigens | ||
| - | das selbe Secret auf allen Virtualisierungsservern, | ||
| - | auch mirgriert werden können. | ||
| - | |||
| - | VServer einrichten | ||
| - | ------------------ | ||
| - | |||
| - | Das ist jetzt auf eine eigene | ||
| - | [WikiSeite](Dokumentation/ | ||
| - | |||
| - | Snapshots | ||
| - | --------- | ||
| - | |||
| - | **Wir verwenden Snapshots als Teil des Backups, das | ||
| - | [hier](Dokumentation/ | ||
| - | |||
| - | Image Snapshots werden mit dem Tool rbd gemacht. Die Doku für die | ||
| - | derzeit verwendete CEPH-Version ist | ||
| - | [hier](http:// | ||
| - | zu finden. Um einen Snapshot von einem Image zu erstellen, muss I/O der | ||
| - | Maschine gestoppt werden. Die wahrscheinlich beste Lösung ist es, die | ||
| - | virtuelle Maschine zu pausieren (virsh suspend Domain). Dann kann ein | ||
| - | Snapshot sicher erstellt werden: | ||
| - | |||
| - | \--(Auf ceph1 ist jetzt ein Mechanismus zum automatischen erstellen von | ||
| - | Snapshots eingerichtet: | ||
| - | dokumentiert und läuft derzeit für die **nelke** und **wal**, einmal pro | ||
| - | Tag (Nacht) um 5 Minuten nach 4 Uhr. Testhalber heben wir Snapshots | ||
| - | vorerst nur für einen Tag (24 Stunden) auf.)\-- | ||
| - | |||
| - | Die CEPH-Doku hat eine eigene Seite zum Snapshot-Mechanismus: | ||
| - | mit | ||
| - | CEPH](http:// | ||
| - | |||
| - | Icinga Plugin Howto | ||
| - | ------------------- | ||
| - | |||
| - | Damit Icinga-Pluings am Ceph-Cluster ausgeführt werden können, muss sich | ||
| - | der Client authentifizieren. Aus diesem Grund muss am Ceph-Server ein | ||
| - | spezieller Keyring für den user Icinga/ | ||
| - | |||
| - | | ||
| - | |||
| - | Beim Ausführen des Plugins mit dem Keyring schauts so aus: | ||
| - | |||
| - | / | ||
| - | |||
| - | Das ganze funktioniert via nagios-nrpe-server! | ||
| - | |||
| - | Verschiedenes | ||
| - | ------------- | ||
| - | |||
| - | Ceph verwendet für einige Dinge die **Type Codes** von GPT. Diese sind | ||
| - | ([hier](http:// | ||
| - | gefunden): | ||
| - | |||
| - | - | ||
| - | - | ||
| - | - | ||
| - | hinzugefügt. Tipp von | ||
| - | [hier](https:// | ||
| - | |||
| - | TODO | ||
| - | ---- | ||
| - | |||
| - | - | ||
| - | - | ||
| - | - Auf Basis der gesammelten Daten Konzept für Cluster erstellen | ||
doc/ceph.1691166215.txt.gz · Last modified: by murmur
