====== Configuration de l'environnement WSL pour Proxmox ====== L'installation de Proxmox est faite * en utilisant la **distribution Debian** de WSL ; * en modifiant le fichier **%UserProfile%.wslconfig** qui définit l'environnement WSL de l'utilisateur. Cela a une incidence sur toutes les distributions mises en oeuvre par l'utilisateur ; * en modifiant le fichier **/etc/wsl.conf** spécifique à la distribution Debian utilisée pour installer Proxmox. ===== Configuration de l'environnement WSL de l'utilisateur ===== Création / modification du fichier %UserProfile%\.wslconfig ^ Paramètre ^ Valeur par défaut de WSL ^ Valeur utilisée pour WSL ^ |Accès réseau|Mode d'accès réseau est NAT (autres modes réseau : Aucun ; Mirrored ; virtioProxy) |NAT | |cgroups | mode hybride support des cgroups v1 et cgroups v2) | forcer l'utilisation des cgroups v2| ==== Mode d'accès réseau NAT ==== Le fichier de configuration WSL de l'utilisateur (%UserProfile%.wslconfig) doit contenir la ligne suivante dans la section [wsl2] : [wsl2] networkingMode = NAT L'hôte Windows dispose d'un nouvelle carte virtuelle qui servira de passerelle aux distributions. Cette carte ressemble à : PS> ipconfig Carte Ethernet vEthernet (WSL (Hyper-V firewall)) : Suffixe DNS propre à la connexion. . . : Description. . . . . . . . . . . . . . : Hyper-V Virtual Ethernet Adapter Adresse physique . . . . . . . . . . . : 00-15-5D-2C-A1-12 DHCP activé. . . . . . . . . . . . . . : Non Configuration automatique activée. . . : Oui Adresse IPv6 de liaison locale. . . . .: fe80::ce37:51cb:f536:f230%27(préféré) Adresse IPv4. . . . . . . . . . . . . .: 172.28.32.1(préféré) Masque de sous-réseau. . . . . . . . . : 255.255.240.0 Passerelle par défaut. . . . . . . . . : * La distribution reçoit une adresse IP. Pour connaître l'adresse IP de la distribution Debian depuis l'hôte Windows PS> wsl -d debian hostname -I * depuis la distribution WSL, instruction pour connaîter l'adresse IP de l'hôte Windows (passerelle de la distribution) ip route show | grep -i default | awk '{ print $3}' * l'accès à une application de la distribution se fait depuis l'hôte Windows avec l'adresse localhost ou de l'adresse IP de la distribution. ==== Configurer WSL pour utiliser cgroups v2 ==== Les conteneurs LXC de Proxmox utilisent les **cgroups**. Par défaut, **WSL2** fonctionne en mode **hybride**, c'est-à-dire qu'il prend en charge à la fois les **cgroups v**1 et les **cgroups v2**. **Proxmox** utilise les **cgroups v2** et la configuration par défaut de WSL2 empêche l'utilisation de **noVNC** pour les conteneurs LXC. Cela affiche le message d'erreur suivant : Connection failed (Error 500: can't open '/sys/fs/cgroup/blkio//lxc/100/blkio.throttle.io_service_bytes_recursive' - No such file or directory) Pour **forcer WSL2** à passer entièrement aux **cgroups v2** (utilisation de **noVNC** avec les conteneurs LXC ; meilleure intégration avec **Systemd** ; utilisation des fonctionnalités spécifiques à cgroup v2), il faut modifier le fichier de configuration WSL de l'utilisateur (**%UserProfile%\.wslconfig**) en ajoutant ou en modifiant la ligne suivante dans la section [wsl2] : [wsl2] kernelCommandLine = systemd.unified_cgroup_hierarchy=1 cgroup_no_v1=all ===== Configuration de l'environnement de la distribution Debian utilisée pour Proxmox ===== Modification du fichier **/etc/wsl.conf** de la distribution Debian : ^ Paramètre ^ Valeur par défaut pour la distribution Debian ^ Valeur utilisée pour la distribution Debian ^ |systemd | support de systemd | garder le support de systemd| |nom de l'hôte | l'hôte Proxmox reprend l nom du PC | Donner le nom pve (Proxmox Virtual Environment) à l'hôte Proxmox| |Accès réseau | WSL utilise NAT pour les distributions | garder le mode NAT de WSL| |Adressage IP | WSL modifie l'adresse IP et le serveur DNS à chaque démarrage de la distribution | Désactiver la réécriture de l'adresse IP et du serveur DNS à chaque démarrage de la distribution| ==== Vérifier l'activation de systemd (cela est fait défaut)==== WSL prend en charge le gestionnaire de système/service systemd depuis la version 0.67.6+ Pour activer systemd, modifier le fichier **/etc/wsl.conf** de la distribution avec les droits root, pour ajoutez ces lignes : [boot] systemd=true Fermez ensuite la distribution WSL (wsl.exe --shutdown depuis PowerShell), et redémarrez l'instance WSL. systemd doit maintenant être en cours d’exécution et cela se vérifie à l’aide de la commande suivante qui affiche l’état des services. : systemctl list-unit-files --type=service ==== Configuration réseau ==== Important : une configuration incorrecte de la configuration IP de la distribution ne permettra pas d'accéder à l'interface Web de Proxmox * Configurer WSL2 : * pour ne pas réécrire le fichier **/etc/hosts** ainsi que le fichier **/etc/resolv.conf** à chaque démarrage de la distribution, en ajoutant ces lignes au fichier **/etc/wsl.conf** de la VM Debian avec la création d'une rubrique [network]. * pour personnaliser le nom de la distribution afin de l'appeler **pve** (Proxmox Virtual Environment). Il sera nécessaire de mettre à jour le fichier **/etc/hosts** en conséqudnce (voir plus loin dans le document). Le fichier **/etc/wsl.conf**contient déjà une section [boot] pour activer **systemd** : [network] hostname = pve generateHosts = false generateResolvConf = false * modifier ou créez le fichier **/etc/resolv.conf** pour indiquer l'adresse IP du serveur de nom de votre choix nameserver 8.8.8.8 * prenez connaissance de l'adresse IP de la distribution (ici 192.168.165.155/20) : # ip a 2: eth0: mtu 1500 qdisc mq state UP group default qlen 1000 link/ether 00:15:5d:71:da:df brd ff:ff:ff:ff:ff:ff inet 192.168.165.155/20 brd 192.168.175.255 scope global eth0 * mettre à jour le fichier **/etc/hosts** en ajoutant une entrée pour votre adresse IP du poste car le nom d’hôte de votre machine doit pouvoir être résolu via **/etc/hosts**. Pour cela il faut remplacer l’adresse 127.0.1.1 présente par défaut par l'adresse IP de votre distribution. Par exemple, si votre adresse IP de la distribution est **192.168.165.155/20** et pour utiliser le nom **pve**, votre fichier **/etc/hosts** pourrait ressembler à : 127.0.0.1 localhost #127.0.0.1 PC-perso. PC-perso 192.168.165.155 pve. pve # The following lines are desirable for IPv6 capable hosts ::1 localhost ip6-localhost ip6-loopback ff02::1 ip6-allnodes ff02::2 ip6-allrouters * tester si votre configuration est correcte à l’aide de la commande hostname : # hostname pve # hostname --ip-address 192.168.165.155 # should return your IP address here ====== Retour accueil Installer Proxmox avec WSL ====== * [[reseau:cloud:proxmox:installwsl|Installer Proxmox avec WSL]]