Créer une VM sous Proxmox chez Online
Contexte
Création d’une machine virtuelle (VM) sous Proxmox
Debian 9 (Stretch) ou Debian 10 (Buster) :: 17/07/2019 :: MaJ avec la version 10 de Debian
Présentation
Réduction de coût oblige, je me suis lancé dans la migration de tous mes sites Internet (dont celui-ci) précédemment hébergés chez OVH (Kimsufi 2G (1 vCPU + 4 Go de RAM et 20 Go d’espace disque SSD) qui me coûtait 43€/an en 2013 et qui a subtilement progressé tous les ans pour atteindre en 2019 près de 61€/an) vers une VM que je vais créer sur un serveur dédié chez Online.
Je pars du principe que vous avez déjà un serveur dédié chez Online sous Proxmox.
Nous allons commencer par commander une nouvelle IP qu’il faudra pointer vers l’adresse MAC de la VM, puis nous créérons la VM.
Rendez-vous sur l’espace d’administration d’Online. Allez sur Serveur / Redirection d’adresses IP et cliquez sur Commander des adresses IP. En bas de la page, commandez une adresse IP seule (à 1.99€ HT). Une fois l’IP commandée, elle apparaîtra dans la liste de vos IP Failovers. Faites la glisser vers votre serveur dédié et cliquez sur Mise à jour.
Récupération de la distribution
Bien que de nombreux templates soient disponibles, essentiellement des LXC, c’est à dire des conteneurs, nous allons uploader un ISO de la dernière version stable de Debian, la 10.0.0 sortie en juillet 2019 (la 9.8 est sortie le 16/02/2019).
Vous avez 2 solutions, la première consiste à télécharger l’image ISO sur votre ordinateur puis à l’uploader via le panneau se configuration sur le serveur Proxmox, tandis qu’avec la seconde, vous téléchargerez directement l’ISO sur le serveur Proxmox. Vous l’aurez compris, cette seconde solution est la plus rapide et cela prendra moins d’1 minute.
Première solution
Commençons par récupérer la dernière version amd64 disponible sur le site officiel de Debian. Nous avons le choix entre 2 versions : la version netinst, basique mais plus légère et idéale pour un serveur, et la version xfce qui contient un environnement de bureau. Puisqu’il s’agit présentement d’installer un serveur, je vais prendre la version netinst et la configuration réseau se fera après installation.
Une fois l’ISO téléchargée, allez sur le panneau de configuration Proxmox de votre serveur et cliquez à gauche sur Local. Puis cliquez sur Content / Upload et uploadez l’ISO. Une fois fait, il apparaîtra plus bas dans la liste des images ISO.
Deuxième solution : télécharger l’ISO directement depuis le serveur Proxmox
Connectez-vous en SSH sur le serveur Proxmox, allez dans le dossier /var/lib/vz/template/iso et téléchargez directement l’image ISO.
1 2 |
$ cd /var/lib/vz/template/iso $ wget <a href="https://cdimage.debian.org/debian-cd/current/amd64/iso-cd/debian-edu-10.0.0-amd64-netinst.iso">https://cdimage.debian.org/debian-cd/current/amd64/iso-cd/debian-10.0.0-amd64-.iso</a> |
Création de la VM sous Proxmox
Création de la VM sous Proxmox
Retour dans le panneau de configuration de Proxmox, cliquez en haut à droite sur Create VM et suivez les étapes ci-dessous.
Commencez par indiquer un ID (qui n’est pas déjà utilisé) et un nom à votre VM. Vous pouvez activer le démarrage automatique et l’agent Qemu.
Sélectionnez l’image ISO (que vous avez précédemment chargé).
Indiquez l’espace disque souhaité.
Sélectionnez le nombre de cœurs.
Puis la mémoire à allouer.
Enfin conservez le bridge par défaut. Vous pouvez indiquer l’Adresse MAC que vous avez obtenu sur la Console Online.net
Depuis Proxmox démarrez ensuite la VM et cliquez sur Console pour procéder à l’installation de votre distribution Debian. Ignorez la partie réseau, nous le ferons plus tard.
Associer l'IP à l'@Mac de la VM
Maintenant que la VM est créée, retournez dans le panneau d’administration d’Online et cliquez sur Serveur / Liste des serveurs, puis sur Administrer
Descendez et retrouvez l’IP que vous avez commandé et cliquez sur + d’infos. Puis éditez l’adresse mac.
Cliquez sur le bouton de paramètres de l’adresse IP et sélectionnez Ajouter une adresse MAC virtuelle pour KVM.
Dès lors que l’adresse MAC aura été générée, copiez-la.
Retournez sur Proxmox, sélectionnez votre VM, cliquez sur Hardware et double-cliquez sur Network Device (net0) pour ouvrir les paramètres.
Collez l’adresse MAC, enregistrez et redémarrez la VM
Configuration de base
La VM est maintenant créée, je vous laisse la démarrer et installer Debian comme il le faut. Ignorez la configuration du réseau pour finaliser l’installation.
Nous allons maintenant configurer le minimum, c’est à dire le réseau et le serveur SSH pour poursuivre la configuration à distance.
Commencez par démarrer la VM et cliquez sur Console. Une fois authentifié, passez en Root et nous allons configurer le réseau.
1 |
$ su - |
Voyons quelles sont les interfaces disponibles :
1 2 3 4 5 6 7 8 9 |
$ ip a 1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo valid_lft forever preferred_lft forever inet6 ::1/128 scope host valid_lft forever preferred_lft forever 2: ens18: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 link/ether 52:00:00:00:00:00 brd ff:ff:ff:ff:ff:ff |
L’interface se nomme donc ens18. Allons créer le fichier de configuration pour l’interface ens18
1 |
$ vi /etc/network/interfaces.d/ens18.conf |
Insérez les lignes suivantes dans le fichier /etc/network/interfaces.d/ens18.conf. Il faudra taper l’adresse IP que vous avez commandé. Online fournit une IP unique qui peut être utilisé comme passerelle : 62.210.0.1.
1 2 3 4 5 6 |
auto ens18 iface ens18 inet static address XXX.XXX.XX.XX netmask 255.255.255.255 pointopoint 62.210.0.1 gateway 62.210.0.1 |
Ajoutons les DNS
1 |
vi /etc/resolv.conf |
1 2 3 |
nameserver 127.0.0.1 nameserver 185.121.177.177 nameserver 169.237.202.202 |
Redémarrons la carte réseau
1 2 |
$ ifdown ens18 $ ifup ens18 |
Vérifions la configuration réseau
1 2 3 4 5 6 7 |
$ ip a show ens18 2: ens18: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 link/ether 52:54:00:00:7e:74 brd ff:ff:ff:ff:ff:ff inet XXX.XXX.XXX.XXX peer 62.210.0.1/32 brd XXX.XXX.XXX.XXX scope global ens18 valid_lft forever preferred_lft forever inet6 XXXX::XXXX:XX:XXXX:XXXX/64 scope link valid_lft forever preferred_lft forever |
Et vérifions si le réseau fonctionne (Faites Ctrl+C pour arrêter le Ping)
1 2 3 4 |
$ ping www.google.fr PING www.google.fr (216.58.204.131) 56(84) bytes of data. 64 bytes from par21s05-in-f131.1e100.net (216.58.204.131): icmp_seq=1 ttl=58 time=0.843 ms 64 bytes from par21s05-in-f131.1e100.net (216.58.204.131): icmp_seq=2 ttl=58 time=0.872 ms |
Nous allons désormais vérifier les sources, désactiver le CDROM et activer les sources internet. Le fichier doit avoir ces lignes-ci :
1 |
$ vi /etc/apt/sources.list |
Pour Debian 9 (Stretch)
1 2 3 |
deb http://deb.debian.org/debian/ stretch main contrib non-free deb http://security.debian.org stretch/updates main contrib non-free deb http://deb.debian.org/debian/ stretch-updates main contrib non-free |
Pour Debian 10 (Buster)
1 2 3 4 5 6 7 8 |
deb http://deb.debian.org/debian buster main contrib non-free deb-src http://deb.debian.org/debian buster main contrib non-free deb http://deb.debian.org/debian-security/ buster/updates main contrib non-free deb-src http://deb.debian.org/debian-security/ buster/updates main contrib non-free deb http://deb.debian.org/debian buster-updates main contrib non-free deb-src http://deb.debian.org/debian buster-updates main contrib non-free |
Il ne reste plus qu’à mettre à jour le système et installer OpenSSH-server
1 2 |
$ apt update && apt upgrade apt install openssh-server |
Foire aux problèmes
Problème de copier/coller avec clic droit
Depuis peu (sous Debian 9 (Stretch) par ex), il n’est plus possible de coller du texte via le clic droit. Pour pouvoir à nouveau utiliser le clic droit, il va falloir éditer le fichier /usr/share/vim/vim80/defaults.vim
1
|
$ vi /usr/share/vim/vim80/defaults.vim
|
et commenter les lignes suivantes :
1
2
3
4
5
6
7
|
[...]
" In many terminal emulators the mouse works just fine. By enabling it you
" can position the cursor, Visually select and scroll with the mouse.
"if has('mouse')
" set mouse=a
"endif
[...]
|