Opened 5 years ago
Closed 4 years ago
#4469 closed Defekt (erledigt)
GlusterFS auf paedml einbinden
| Reported by: | Rüdiger Kupper | Owned by: | bau |
|---|---|---|---|
| Priority: | schnell erledigen | Milestone: | Fileserver: Gluster eingebunden über paedml |
| Component: | Server: Fileserver | Severity: | beeinträchtigt den Unterricht einiger Lehrer |
| Keywords: | Cc: | bau |
Description
Primär muss erst einmal der paedml auf unsere zwei Gluster-Volumnes "fast-storage" und "slow-storage" zugreifen. Das sollte am Besten über das native GlusterFS passieren.
Da haben wir ein kleines Problem: Der GlusterFS-Client wird für Ubuntu über ein PPA zur Verfügung gestellt. Unser Linuxmuster 6.2 basiert auf Ubuntu 12.04 LTS. Das PPA bietet Pakete aber erst ab Ubuntu 16.04. Das kommt aber erst mit Linuxmuster 7.
Mögliche Abhilfe:
- Nicht die Ubuntu-spezifischen, sondern die allgemeinen Debian-Pakete verwenden (keine Ahnung, ob das passt?
- Die Gluster-Volumes über das Gluster-NFS-Interface einbinden (nicht optimal)
- Auf LML 7 updaten ;-).
Change History (20)
comment:1 by , 5 years ago
comment:2 by , 5 years ago
Aber selbst dann wüsste ich nicht, die Pakete für welche Debian-Version ich eibinden sollte?
https://download.gluster.org/pub/gluster/glusterfs/LATEST/Debian/
Glaube irgendwie nicht, dass das funktioniert.
Es gibt auch ein glusterfs-client-Paket in den Standard-Paketquellen von Ubuntu 12.04. Das ist jedoch völlig veraltet (Gluster Version 3, aktuell ist Version 10). Damit gelingt es mir auch nicht, unsere Gluster-Volumes einzubinden:
2022-04-23 18:05:23.162489] I [glusterfsd.c:1493:main] 0-/usr/sbin/glusterfs: Started running /usr/sbin/glusterfs version 3.2.5 [2022-04-23 18:05:23.170076] E [glusterfsd-mgmt.c:621:mgmt_getspec_cbk] 0-glusterfs: XDR decoding error [2022-04-23 18:05:23.170147] E [glusterfsd-mgmt.c:695:mgmt_getspec_cbk] 0-mgmt: failed to fetch volume file (key:/fast-storage) [2022-04-23 18:05:23.170309] W [glusterfsd.c:727:cleanup_and_exit] (-->/usr/lib/libgfrpc.so.0(rpc_clnt_notify+0x7d) [0x7fc427d0684d] (-->/usr/lib/libgfrpc.so.0(rpc_clnt_handle_reply+0xa5) [0x7fc427d05ec5] (-->/usr/sbin/glusterfs(mgmt_getspec_cbk+0x2fd) [0x7fc4283a8e3d]))) 0-: received signum (0), shutting down [2022-04-23 18:05:23.170335] I [fuse-bridge.c:3727:fini] 0-fuse: Unmounting '/mnt/gluster/fast-storage'.
Ich vermute mal, der "XDR error" ist auf die inkompatible Gluster-Version zurückzuführen …
follow-up: 5 comment:3 by , 5 years ago
Möglich ist natürlich, die Volumes auf dem ProxmoxPaedml einzubinden und weiterzureichen. Falls der veraltet wäre, wäre ein Upgrade auf den aktuellen ProxMox möglich (lagert ja einfach auf einer SSD).
comment:4 by , 5 years ago
Okay, nächster Versuch: Glusterfs-Client aus den Sourcen kompilieren.
./configure scheitert mit
checking for malloc in -ltcmalloc_minimal... no configure: error: tcmalloc library needs to be present
Installieren des neusten Pakets in den Ubuntu-12.04-Quellen "libtcmalloc-minimal0" behebt das Problem leider nicht – auch diese Bibliothek ist wohl zu alt.
comment:5 by , 5 years ago
Replying to bau:
Möglich ist natürlich, die Volumes auf dem ProxmoxPaedml einzubinden und weiterzureichen. Falls der veraltet wäre, wäre ein Upgrade auf den aktuellen ProxMox möglich (lagert ja einfach auf einer SSD).
Gute Idee, das könnte die Lösung sein!
Heute geht mir nur leider die Zeit aus …
comment:6 by , 5 years ago
Der proxmoxpaedml hat erst mal das gleiche Problem mit dem Zertifikat:
root@proxmoxpaedml:~# wget -O - https://download.gluster.org/pub/gluster/glusterfs/10/rsa.pub | apt-key add - converted 'https://download.gluster.org/pub/gluster/glusterfs/10/rsa.pub' (ANSI_X3.4-1968) -> 'https://download.gluster.org/pub/gluster/glusterfs/10/rsa.pub' (UTF-8) --2022-04-23 19:17:26-- https://download.gluster.org/pub/gluster/glusterfs/10/rsa.pub Resolving proxyl.kg-fds.de (proxyl.kg-fds.de)... 129.143.4.2 Connecting to proxyl.kg-fds.de (proxyl.kg-fds.de)|129.143.4.2|:8080... connected. ERROR: The certificate of 'download.gluster.org' is not trusted. ERROR: The certificate of 'download.gluster.org' has expired. gpg: no valid OpenPGP data found.
Apt update zeigt aber auch 213 zu aktualisierende Pakete an. Kann man da ein "apt upgrade" wagen, oder ist das zu heikel? Nicht, dass wir den paedml abschießen.
comment:7 by , 5 years ago
Eins der Pakete ist "ca-certificates/oldoldstable 20141019+deb8u4 all [upgradable from: 20141019+deb8u2]". Das dürfte es doch sein?
comment:8 by , 5 years ago
Und ich sehe gerade: der proxmoxpaedml läuft auf Debian 8, die frühesten Gluster-Pakete gibt es für Debian 9.
comment:9 by , 5 years ago
Debian 8 hatte übrigens EOL-Datum 2020-06-30.
Die vier Gluster-Server laufen mit Debian 10, da ist EOL vorgesehen für 2022-08, das ist auch nicht mehr lang.
follow-up: 12 comment:10 by , 5 years ago
Ein Upgrade des ProxMox ist recht simpel, das System lagert auf einer 40GB SSD, diese kann vorab mit dem neuesten ProxMox vorbereitet werden (Raid und LVM2 müssen da sein), danach müssen die Netzwerk und Maschinendefinitionen (benutzt ein Datenbank-FS, siehe https://paedml.kg-fds.de/trac/wiki/AdminProxMox) drauf und dann kann man die SSD einfach austauschen.
Bei ProxMoxPaedml:
- System-LV: pve
- Storage: pve1
- Storage (Schüler-Platte): homestudent
Beim Neu-Aufsetzen:
- LV auf der SSD muss wieder pve heißen (das ist der Standard!)
- /var/lib/pve-cluster/config.db vom aktuellen ProxMoxPaedml kopieren
- /etc/network/interfaces kopieren
- Umstellen auf 1x10GE NIC?
- Wir könnten den Server auch gleich umziehen auf eine DELL T3500 Workstation (INTEL XEON = 6x 3,4GHz => 12 Threads)
comment:11 by , 5 years ago
Bietet Proxmox nicht auch einen eigenen Befehl, um das System zu aktualisieren? Habe so was in Erinnerung. Wichtig ist halt, dass wir bei mindestens Debian 9 landen.
comment:12 by , 5 years ago
Replying to bau:
Ein Upgrade des ProxMox ist recht simpel, das System lagert auf einer 40GB SSD, diese kann vorab mit dem neuesten ProxMox vorbereitet werden (Raid und LVM2 müssen da sein), danach müssen die Netzwerk und Maschinendefinitionen (benutzt ein Datenbank-FS, siehe https://paedml.kg-fds.de/trac/wiki/AdminProxMox) drauf und dann kann man die SSD einfach austauschen.
Bei ProxMoxPaedml:
- System-LV: pve
- Storage: pve1
- Storage (Schüler-Platte): homestudent
Beim Neu-Aufsetzen:
- LV auf der SSD muss wieder pve heißen (das ist der Standard!)
- /var/lib/pve-cluster/config.db vom aktuellen ProxMoxPaedml kopieren
- /etc/network/interfaces kopieren
- Umstellen auf 1x10GE NIC?
- Wir könnten den Server auch gleich umziehen auf eine DELL T3500 Workstation (INTEL XEON = 6x 3,4GHz => 12 Threads)
Die Maßnahmen klingen ozmehin nicht übel, das wäre schon man ein erster Schritt hin zum paedml-Upgrade. Schnellere NIC und mehr Prozessorkraft kann der auch gut gebrauchen. Aber wie schnell können wir das umsetzen? Eigentlich wollte ich, dass jetzt schon der Datentransfer vom psedml zu Gluster läuft...
comment:13 by , 5 years ago
Die NFS-Variante könnte eine Zwischenlösung sein:
https://docs.gluster.org/en/latest/Administrator-Guide/NFS-Ganesha-GlusterFS-Integration/
comment:14 by , 5 years ago
Ja, ich denke, das solltest du mal probieren. Denn, selbst wenn wir das auf den ProxMox einbinden ist es noch lange nicht in der VM - da gibt es zwar anscheinend mittlerweile Lösungen (virtio), dazu ist Ubuntu 12.04 aber auch schon wieder zu alt.
comment:16 by , 5 years ago
Noch eine Idee: Vielleicht gibt es irgendwo einen Backport einer aktuellen tcmalloc-Bibliothek für 12.04 (Precise Pangolin)?
Die Bibliothek scheint Teil diees Paketes zu sein:
https://launchpad.net/ubuntu/+source/google-perftools
Ganz unten auf der Seite ist ein "untrusted archive" erwähnt, dass einen Backport für Precise hat:
https://launchpad.net/~openstack-ubuntu-testing/+archive/ubuntu/icehouse
Das PPA enthält "google-perftools" Version 2.1-2ubuntu1.1~cloud0. Ob das ausreichend ist: keine Ahnung.
comment:18 by , 5 years ago
Hier ist noch ein PPA mit Backport:
https://launchpad.net/~yuriy-tsyba/+archive/ubuntu/ruby-tcmalloc?field.series_filter=precise
Enthält google-perftools 2.5-1ubuntu2~precise1~ppa1
comment:19 by , 5 years ago
Ich werde mir mal ein 12.04 in Virtualbox installieren und schauen, ob ich GlusterFS mit den Backports compiliert bekomme.
comment:20 by , 4 years ago
| Resolution: | → erledigt |
|---|---|
| Status: | new → closed |
Compilieren war mit passenden Optionen und nach Installieren verschiedener Abhängigkeiten erfolgreich.
Einige Infos (aus dem Developer-Manual, aktueller als im Admin-Manual):
https://docs.gluster.org/en/main/Developer-guide/Building-GlusterFS/
Compile-Optionen:
./autogen.sh ./configure --disable-linux-io_uring --with-libtirpc=no make make install ldconfig
Okay, ich habe Option 1 ausprobiert: Der Server "download.gluster.org" kann nicht erreicht werden, weil das SSL-Zertifikat nicht überprüft werden kann. Grund ist wohl ein fehlendes Root-Zertifikat auf dem paedml, da Letsencrypt im September 2021 auf ein neues Root-Zertifikat umgestiegen ist.
Siehe:
Der paedml braucht also wohl ein Update der SSL-Root-Zertifikate. Da will ich aber nicht einfach so dran herumbasteln.