Outils pour utilisateurs

Outils du site


reseau:cloud:proxmox:installproxmoxwsl

Installation de Proxmox avec WSL

Installation de la distribution Debian de WSL avec le nom pve

  • installer WSL et la distribution Debian en la renommant pve en tant qu'administrateur depuis l'invite de commande cmd ou Powershell :
PS/> wsl --install -d debian --name pve
Installation en cours : Sous-système Windows pour Linux
[=                          3,0%                           ]
Debian GNU/Linux a été installé.
L’opération demandée est réussie. Les modifications ne seront pas effectives avant que le système ne soit réamorcé.
  • redémarrage de Windows si c'est la première installation de WSL
  • vérifier la présence de la distribution pve (distribution installée mais stoppée):
PS/> wsl -l -v

Modifier la configuration de WSL

Créez / modifiez le fichier de configuration WSL de l'utilisateur (%UserProfile%.wslconfig) pour :

  • définir le mode réseau de WSL en NAT (configuration par défaut)
  • forcer WSL2 à passer entièrement aux cgroups v2

Le fichier .wslconfig doit contenir dans la section [wsl2] :

[wsl2]
networkingMode =  NAT
kernelCommandLine = systemd.unified_cgroup_hierarchy=1 cgroup_no_v1=all

Configurer la distribution pve

  • démarrez la distribution pve
wsl -d pve
  • définissez le compte utilisateur sio et son mot de passe Sio1234*
  • passer root et changer le mot de passe car il devra être utilisé pour se connecter à l'interface d'administration de Proxmox
# Passer en root
$ sudo -i
 
# Définir le mot de passe du compte root. Nécessaire pour se logger à l'interface Web d'administration de Proxmox.
passwd
 
# Vérifier la version de Debian pour connaître quelle version récente de Proxmox est installable
# cat /etc/os-release
# VERSION="12 (bookworm)"
Se rendre à l'URL du WIki de PVE (https://pve.proxmox.com/wiki/FAQ#faq-support-table) et prenez connaissance de la version à installer. Pour Debian 12 c'est PVE 8.x.

Vérifier l'activation de systemd (cela est fait défaut)

Vérifier dans le fichier /etc/wsl.conf la présence de la ligne suivante dans la rublique boot:

[boot]
systemd=true

Depuis Powershell, fermez puis relancer la distribution WSL Debian

PS> wsl.exe --shutdown
PS> wsl -d pve

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.confcontient 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

Modification manuelle du fichier /etc/hosts (ou bien voir ci-après pour une modification automatique)

  • prenez connaissance de l'adresse IP de la distribution (pour exemple 172.28.38.112/20) :
# ip a
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
    link/ether 00:15:5d:23:ef:de brd ff:ff:ff:ff:ff:ff
    inet 172.28.38.112/20 brd 172.28.47.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 172.28.38.112/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
172.28.38.112        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

Modification automatique du fichier /etc/hosts

  • Création du fichier /usr/local/bin/pvepreup.sh avec le contenu suivant :
#!/bin/bash

ip4addr=`ip -4 a show eth0 | awk '/inet .* scope global/ {split($2,out,"/");print out[1]}'`

awk "/^127\.0\.0\.1.*`hostname`/ {next} /`hostname`/ {\$1 = \"$ip4addr\"} // {print}" /etc/hosts > /etc/hosts.new && mv /etc/hosts.new /etc/hosts
  • création du fichier /etc/systemd/system/pvepreup.service :
[Unit]
Description=Fix /etc/hosts before starting PVE
Before=pve-cluster.service
After=network.target
DefaultDependencies=no
Before=shutdown.target
Conflicts=shutdown.target

[Service]
ExecStart=/usr/local/bin/pvepreup.sh
KillMode=mixed
TimeoutStopSec=10
Type=oneshot

[Install]
WantedBy=multi-user.target
  • activer le service
chmod +x /usr/local/bin/pvepreup.sh
systemctl daemon-reload
systemctl enable pvepreup
systemctl status pvepreup

Tests

  • tester si votre configuration est correcte à l’aide de la commande hostname :
# hostname
pve

# hostname --ip-address
172.28.38.112 

Installer les prérequis

apt update && apt upgrade -y
apt install -y apt-transport-https python3-requests lsb-release
  • Ajouter le dépôt de Proxmox VE
echo "deb [arch=amd64] http://download.proxmox.com/debian/pve bookworm pve-no-subscription" > /etc/apt/sources.list.d/pve-install-repo.list
  • Ajoutez la clé du dépôt de Proxmox VE en tant que root (ou utilisez sudo):
apt install -y wget

wget https://enterprise.proxmox.com/debian/proxmox-release-bookworm.gpg -O /etc/apt/trusted.gpg.d/proxmox-release-bookworm.gpg

# verifier la clé
sha512sum /etc/apt/trusted.gpg.d/proxmox-release-bookworm.gpg 
7da6fe34168adc6e479327ba517796d4702fa2f8b4f0a9833f5ea6e6b48f6507a6da403a274fe201595edc86a84463d50383d07f64bdde2e3658108db7d6dc87  /etc/apt/trusted.gpg.d/proxmox-release-bookworm.gpg 

Mettre à jour le référentiel et le système

apt update && apt full-upgrade

Installer le noyau Proxmox VE

apt install -y proxmox-default-kernel
systemctl reboot

Installer et configurer de Postfix

L'installation et la configuration de Postfix est nécessaire pour pouvoir ensuite installer Proxmox

  • installation de Postfix
  • choisissez comme configuration Local only
apt install postfix

Installer Proxmox

Lancer l'installation depuis un shell root

apt install -y proxmox-ve  open-iscsi chrony

Recommended: Remove the os-prober Package The os-prober package scans all the partitions of your host to create dual-boot GRUB entries. But the scanned partitions can also include those assigned to virtual machines, which one doesn't want to add as boot entry.

If you didn't install Proxmox VE as dual boot beside another OS, you can safely remove the os-prober package:

apt remove -y os-prober

Permettre l'utilisation des conteneurs LXC

Proxmox détecte qu'il est virtualisé et ne permet pas la création de conteneurs LXC.

Pour le permettre, modifiez la condition suivante dans le fichier /lib/systemd/system/lxcfs.service

  • remplacez
[Unit]
ConditionVirtualization=!container
  • par
[Unit]
ConditionVirtualization=container

Vérifiez que tout fonctionne

Redémarrer la distribution pve et se connecter avec le compte root depuis PowerShell:

PS> wsl --shutdown # If you need to reboot
PS> wsl -d pve --user root

Proxmox devrait fonctionner. L’interface utilisateur Web est accessible à l’adresse https://localhost:8006.

Pour un accès en SSH, déposez votre clé publique dans /root/.ssh/authorized_keys.

L'adresse IP de la distribution pve est dans le plan d'adressage 172.28.32.0/20 de WSL en mode réseau NAT.

Exemple :

# ip a
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
    link/ether 00:15:5d:a5:6c:be brd ff:ff:ff:ff:ff:ff
    inet 172.28.38.112/20 brd 172.28.47.255 scope global eth0

Créer un pont (bridge) vmbr0 avec du NAT pour les conteneurs LXC et les VM

Il est nécessaire de créer des ponts (bridge) ou switch virtuel pour la connexion réseau des conteneurs LXC et des VM de Proxmox.

Proxmox permet alors de réaliser des infrastructures réseaux basées sur plusieurs VLAN en associant un pont (bridge) distinct à chaque VLAN.

Pour permettre à des conteneurs LXC ou des VM d'accéder au réseau local et ensuite à Internet, vous devez créer un bridge avec le plan d'adressage de votre choix et configurer du NAT avec iptables :

Créer un bridge vmbr0 dans Proxmox en configurant du NAT avec iptables

Accéder aux conteneurs LXC et aux VM depuis l'hôte Windows

Les conteneurs LXC et les VM qui utilisent un pont (bridge) avec du NAT, accèdent au réseau local et à Internet.

Pour que ces conteneurs LXC et VM soient accessible depuis votre hôte Windows, ajoutez une route statique persistante à Windows en tant qu'administrateur en utilisant les informations suivantes :

  • l'adresse IP de la distribution pve (pour exemple 172.28.32.112) : ce sera la passerelle pour accéder au réseau des conteneurs LXC et des VM.
  • l'adresse de réseau du pont (bridge) (pour exemple vmbr0 avec l'adresse réseau 10.0.0.0/24)
route -p add 10.0.0.0/24 172.28.32.112 

Debogage

# log
journalctl -xe

# les services
systemctl status pve-cluster 

Exporter / importer / renommer la distribution pve

  • Exporter la distribution
wsl --export pve C:\chemin\vers\pve.tar
  • Désenregistrer l'ancienne distribution :
wsl --unregister pve
  • Importer la distribution avec un nouveau nom :
wsl --import nouveaupve C:\nouvel\emplacement C:\chemin\vers\pve.tar

Retour accueil Installer Proxmox avec WSL

reseau/cloud/proxmox/installproxmoxwsl.txt · Dernière modification : 2025/05/04 22:13 de admin