Ceph Cluster mit Raspberry PIs aufbauen: Unterschied zwischen den Versionen

Zur Navigation springen Zur Suche springen
K
KKeine Bearbeitungszusammenfassung
(5 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 28: Zeile 28:
su -
su -
</syntaxhighlight>
</syntaxhighlight>
==== SSH via root erlauben ====
<syntaxhighlight lang="bash">
vi /etc/ssh/sshd_config
</syntaxhighlight><syntaxhighlight lang="bash">
# Den Eintrag finden
#PermitRootLogin prohibit-password
# Aktivieren und auf 'yes' ändern
PermitRootLogin yes
</syntaxhighlight>
====Feste IP einrichten (/etc/dhcpcd.conf)====
====Feste IP einrichten (/etc/dhcpcd.conf)====
Damit die Ceph-Nodes sich beim nächsten DHCP-Lease noch verständigen können setzen wir bei allen eine statische IP.
Damit sich die Ceph-Nodes nach dem nächsten DHCP-Lease noch verständigen können, setzen wir bei allen eine statische IP.


Dafür editieren wir die Datei <code>/etc/dhcpcd.conf</code>:<syntaxhighlight lang="bash">
Dafür editieren wir die Datei <code>/etc/dhcpcd.conf</code>:<syntaxhighlight lang="bash">
Zeile 82: Zeile 94:
</syntaxhighlight>Die IPv6 Einträge können ruhigen gewissen gelöscht werden.
</syntaxhighlight>Die IPv6 Einträge können ruhigen gewissen gelöscht werden.


Am wichtigsten ist es aber den Eintrag '''"127.0.1.1 cephpi-a"''' zu entfernen, da der Cluster mit den absoluten Adressen arbeiten soll. <ref>https://pve.proxmox.com/wiki/Install_Proxmox_VE_on_Debian_Buster#Install_a_standard_Debian_Buster_.28amd64.29</ref>
Am wichtigsten ist es aber den Eintrag '''"127.0.1.1 cephpi-a"''' zu entfernen, da der Cluster mit den absoluten Adressen arbeiten soll.


Danach werden die Hostnamen der Nodes hinzugefügt, so dass es am Ende so aussehen sollte:<syntaxhighlight lang="bash">
Danach werden die Hostnamen der Nodes hinzugefügt, so dass es am Ende so aussehen sollte:<syntaxhighlight lang="bash">
Zeile 92: Zeile 104:
</syntaxhighlight>
</syntaxhighlight>


==== Abhängigkeiten installieren ====
<syntaxhighlight lang="bash">
apt update
apt upgrade
</syntaxhighlight>Die Abhängigkeiten 'lvm2' und 'Docker' installieren:<syntaxhighlight lang="bash">
apt install lvm2
curl -sSL https://get.docker.com | sh
</syntaxhighlight><syntaxhighlight lang="bash">
systemctl enable --now docker
</syntaxhighlight>
===Ceph installieren (1. Node)===
'''Diese Installation ist nur beim ersten Node notwendig!'''
Cephadm herunterladen und ausführbar machen:<syntaxhighlight lang="bash">
curl --silent --remote-name --location https://github.com/ceph/ceph/raw/pacific/src/cephadm/cephadm
chmod +x cephadm
</syntaxhighlight>Jetzt kann mit Cephadm die Installation gestartet werden:<syntaxhighlight lang="bash">
./cephadm bootstrap --mon-ip <Node IP>
</syntaxhighlight>'''Hinweis zum Monitoring:'''
Das Monitoring beinhaltet einen Prometheus & Grafana Server.
Zusammen liefern diese etliche Statistiken zu den OSDs, Pools, Hosts, etc und dienen auch der Generierung von Alarm-Meldungen.
Wer Speicher, CPU oder RAM sparen möchte, kann zum deaktivieren einfach <code>--skip-monitoring-stack</code> ans Ende des Befehls hängen.
Nach der Installation sollte das Ceph Dashboard unter folgender URL erreichbar sein:
https://<Node-IP>:8443/
===Weitere Nodes installieren===
Alle Punkte unter '''Systemeinstellungen''' sollten bereits ausgeführt sein! 
Zuerst muss das Ceph SSH Zertifikat auf die neuen Nodes übertragen werden.
Dazu auf dem 1. Node folgenden Befehl ausführen:
Als Adresse die anderen Nodes auswählen, z.B. cephpi-b<syntaxhighlight lang="bash">
ssh-copy-id -f -i /etc/ceph/ceph.pub root@cephpi-b
</syntaxhighlight>
Als Adresse die anderen Nodes auswählen, z.B. cephpi-b
Danach im Ceph Dashboard unter '''Cluster -> Host''' den neuen Node hinzufügen.


Die weitere Installation geschieht automatisch per SSH und könnte ein paar Minuten dauern.
==Quellen==
==Quellen==
https://docs.ceph.com/en/latest/rados/configuration/ceph-conf/
https://docs.ceph.com/en/latest/rados/configuration/ceph-conf/

Navigationsmenü