[FRsAG] Quel orchestrateur KVM choisir ?

Dernat Rémy remy.dernat at umontpellier.fr
Mar 12 Jan 10:13:14 CET 2021


Bonjour,

Le 20/11/2020 à 12:27, Daniel Caillibaud a écrit :
> Bonjour,
>
> Merci à ceux qui se sont penchés sur le pb, résultat des courses pour ceux
> que ça intéresse.
>
> Le 13/11/20 à 19h15, Daniel Caillibaud <ml at lairdutemps.org> a écrit :
>> Sur un host debian devant héberger des vms debian, je cherche un
>> orchestrateur kvm en cli me permettant :
>> 1) chaque vm dans son lv, avec ce lv montable sur le host
> Ça c'est visiblement pas possible en kvm, on file pas un filesystem à la vm
> mais un disque, et elle a son bootloader et sa table de partitions. Y'a des
> moyens de contournement (libguestfs), mais c'est pas simple.
>
> Ce serait possible avec xen.
>
>> 2) conf réseau permettant de définir une (ou deux) interface dans la vm
>>     sur le (ou les) bridges du host (un public et un privé, la plupart
>>     des vms n'ont pas d'ip publique)
> Ça c'est possible mais toujours assez compliqué, faut définir ça dans la VM
> (pas moyen de fixer nic/ip depuis le host dans les specs de la vm), c'est
> probablement pour ça que tout le monde passe par du dhcp.

Ça devrait être faisable avec terraform...

Cordialement,

>
>> 3) si possible pas de grub dans la vm, on la démarre avec noyau/initrd du
>>     host
> Cf 1)
>
>> 4) pas de nat (sauf snat pour que les vm privées puissent sortir sur
>>     internet), ni dhcp, ni dnsmask, ni autre fioriture. Pas besoin de HA
>> (ni drbd ni ceph)
> Cf 2)
>
> Donc kvm n'est pas adapté à ce que je voulais faire. xen pourrait faire le
> job, mais j'ai pas assez creusé car en testant proxmox6 + kvm, j'ai testé
> aussi proxmox6 + lxc, et ça marche mieux que ce que je faisais manuellement
> auparavant.
>
> Ça me permet aussi de garder une infra plus homogène (encore des hosts
> en stretch + lxc2), et de conserver ma batterie de scripts (pour le backup
> surtout, avec gestion de la rotation des snapshots, où on peut accéder à
> n'importe quel fichier de n'importe quel snapshot directement sur le
> filesystem).
>
> Je vais donc pouvoir rester encore un peu avec lxc ;-)
>
>
>
> Pour info, les pbs que j'ai eu avec systemd dans les conteneurs (avec ma
> gestion manuelle des conteneurs lxc) pour
> - host stretch/lxc2 + conteneur buster
> - host buster/lxc3 + conteneur buster
> concernaient tous des pbs de sytetmd avec les cgroup, qu'il faut régler au
> cas par cas en faisant sauter des restrictions systemd, pour notamment ces
> services (à chaque fois faut un /etc/systemd/system/xxx.service.d/override.conf)
>
> Il y a pas mal de monde a avoir des pbs, sur pleins de services, du genre
> https://forum.proxmox.com/threads/upgrade-lxc-16-04-to-18-04-problems-cgroup.51222/
> et la réponse est souvent de passer les conteneurs en mode privilégiés avec
> du nested = 1 (ce qui revient +/- à rompre l'isolation)
>
> 1) logrotate
> # logrotate.service: Failed to set up mount namespacing: Permission denied
> # logrotate.service: Failed at step NAMESPACE spawning /usr/sbin/logrotate:
>    Permission denied
> # cf https://forum.proxmox.com/threads/logrotate-issue-in-buster-lxc.56726/
> [Service]
> PrivateDevices=false
> PrivateTmp=false
> ProtectControlGroups=false
> ProtectKernelModules=false
> # lui ne devrait pas coincer (ça passe en ro /usr /boot /efi /etc), mais
> # sans ça il veut pas…
> ProtectSystem=false
>
> 2) munin-node
> # Cf https://github.com/munin-monitoring/munin/issues/1278
> [Service]
> PrivateTmp=false
> ProtectHome=false
> ProtectSystem=false
>
> 3) varnishncsa
> [Service]
> # vu qu'on tourne dans lxc sans les CAP_SYS_ADMIN, si on veut éviter de mettre dans la conf du conteneur du
> # lxc.apparmor.profile = unconfined
> # faut ajouter ça
> # pour ProtectSystem, yes passe /usr et /boot en read-only, full ajoute /etc et strict ajoute /dev /proc et /sys
> # pourquoi faut du no ? (en tout cas même avec yes ça démarre pas pour un pb de namespace)
> ProtectSystem=no
> ProtectHome=false
> PrivateTmp=false
> PrivateDevices=false
> # ça limite la sécurité dans la VM mais l'augmente vis-à-vis du host
> # (si varnish est troué il pourrait mettre plus de bazar dans la vm mais ne pourra pas accéder au host)
>
> # ça marchait sans cette option, mais y'avait régulièrement des alertes systemd (le notify ci-dessus) avec du
> # Failed to set up mount namespacing
> # on essaie ça pour voir si ça va mieux
> NoNewPrivileges=yes
>
>
> J'ai d'abord eu l'impression qu'avec proxmox6 j'avais moins de pbs, mais ça semble pas tellement le cas,
> je vais faire un autre thread pour ça.
>
-- 
Dernat Rémy
Chef de projet SI, CNRS
Infrastructure des Systèmes d'Information ISI
ISEM Montpellier

-------------- section suivante --------------
Une pièce jointe HTML a été nettoyée...
URL: <http://www.frsag.org/pipermail/frsag/attachments/20210112/fdc975f3/attachment.htm>
-------------- section suivante --------------
Une pièce jointe autre que texte a été nettoyée...
Nom: smime.p7s
Type: application/pkcs7-signature
Taille: 3623 octets
Desc: Signature cryptographique S/MIME
URL: <http://www.frsag.org/pipermail/frsag/attachments/20210112/fdc975f3/attachment.bin>


Plus d'informations sur la liste de diffusion FRsAG