Fragen zum Kernel / Virtualisierung

Bitte loggen sie sich ein oder registrieren sie sich.

Einloggen mit Benutzername, Passwort und Sitzungslänge
Erweiterte Suche  

Autor Thema: Fragen zum Kernel / Virtualisierung  (Gelesen 523 mal)

0 Mitglieder und 1 Gast betrachten dieses Thema.

dakasi

  • Grünschnabel
  • *
  • Offline Offline
  • Beiträge: 39
Fragen zum Kernel / Virtualisierung
« am: 22.November 2019, 18:02:23 »

Ich habe einige Fragen und Anregungen zum Kernel.
Unterstützt der verwendete Host-Kernel der Containervirtualisierung:

VPN ? (zB OpenVPN oder Wireguard)
Im Container kann man ja keine Kernelmodule nachladen, deshalb müsste der Host-Kernel die benötigten Module bereits beinhalten.

Containervirtualiserung *innerhalb* des Kunden Containers ?
zB Docker innerhalb des CBCI-vServers

Neue Kernelversionen ?
Klingt trivial, aber wenn der Kernel nie aktualisiert wird, treten Fehler auf.
Beim den bestehenden OpenVZ vServern beschweren sich inzwischen die glibc und systemd über die Kernelversion.



Gespeichert


Forum-Support2

  • EUserv Internet
  • Foren Legende
  • *
  • Offline Offline
  • Beiträge: 3634
    • http://www.euserv.de
Re: Fragen zum Kernel / Virtualisierung
« Antwort #1 am: 22.November 2019, 18:20:29 »

Ich habe einige Fragen und Anregungen zum Kernel.
Unterstützt der verwendete Host-Kernel der Containervirtualisierung:

VPN ? (zB OpenVPN oder Wireguard)
Im Container kann man ja keine Kernelmodule nachladen, deshalb müsste der Host-Kernel die benötigten Module bereits beinhalten.

Ja, VPN müßte laufen. Das müssen Sie testen, dafür machen wir den Test hier. Wenn es nicht läuft, müßten wir konkret wissen, welche Module fehlen.


Containervirtualiserung *innerhalb* des Kunden Containers ?
zB Docker innerhalb des CBCI-vServers

Siehe https://forum.euserv.de/index.php/topic,9027.0.html


Neue Kernelversionen ?
Klingt trivial, aber wenn der Kernel nie aktualisiert wird, treten Fehler auf.
Beim den bestehenden OpenVZ vServern beschweren sich inzwischen die glibc und systemd über die Kernelversion.

Ja, neue Kernel-Versionen werden wir von Zeit zu Zeit einspielen. Das ging bei OpenVZ nicht so ohne Weiteres. Im Kundencenter wird derzeit über 5.x abgestimmt.

Gespeichert
viele Grüsse / kind regards
Thomas
EUserv Foren Support
---

dakasi

  • Grünschnabel
  • *
  • Offline Offline
  • Beiträge: 39
Re: Fragen zum Kernel / Virtualisierung
« Antwort #2 am: 28.Mai 2020, 00:50:45 »

Ich habe Wireguard im CBCI Container getestet und Wireguard funktioniert nicht.
Voraussetzung für Wireguard ist entweder ein Kernel-Modul, oder ein Kernel ab Version 5.6.
Im Container kann man logischerweise keine Module nachladen.
Ab Kernel-Version 5.6 ist Wireguard bereits inkludiert.

Im Elrepo 7 Repository gibt es bereits Pakete für Kernelversion 5.6
https://elrepo.org/linux/kernel/el7/x86_64/RPMS/

Die offizielle Wireguard-Installations-Anleitung für Centos-7 empfiehlt den dieses Kernel-Paket aus Elrepo.
https://www.wireguard.com/install/#centos-7-module-tools
« Letzte Änderung: 28.Mai 2020, 00:52:22 von dakasi »
Gespeichert

Heavy

  • Grünschnabel
  • *
  • Offline Offline
  • Beiträge: 8
Re: Fragen zum Kernel / Virtualisierung
« Antwort #3 am: 05.Juni 2020, 21:37:59 »

Doch, Wireguard funktioniert in dem Container. Jedenfalls in einem VS2-free, den CBCI Betatest Container habe ich nicht mehr.

Da der Kernel die nötige Unterstützung nicht bietet, benötigt man die Userspace-Implementierung wireguard-go von https://git.zx2c4.com/wireguard-go/about/.

Das Tool muss man selber bauen, das muss aber nicht in dem Container geschehen. Dazu Go 1.13 oder neuer installieren und folgendes ausführen:

$ git clone https://git.zx2c4.com/wireguard-go
$ cd wireguard-go
$ make

Das resultierende Programm wireguard-go dann ggf. mit SCP auf den Container kopieren und im PATH ablegen, z.B. nach /usr/local/sbin/.

In der Wireguard-Konfiguration benötigt man einen Hook, der das TUN Device anlegt. Das sieht etwa so aus:

# /etc/wireguard/wg0.conf

[Interface]
PreUp = ip tuntap add dev tun0 mode tun
PostDown = ip link delete tun0
Address = 10.10.10.10
ListenPort = 51820
PrivateKey = ...

[Peer]
PublicKey = ...
AllowedIPs = 10.0.0.0/8

Damit sollte sich wireguard starten lassen:

# wg-quick up wg0
« Letzte Änderung: 07.Juni 2020, 02:31:11 von Heavy »
Gespeichert
 

Seite erstellt in 0.047 Sekunden mit 21 Abfragen.