Proxmox

Docs liées au serveur de Virtualisation Proxmox

Gestion utilisateur cli

Pour créer un utilisateur dans Proxmox, pour accés a l'interface web de gestion de Proxmox:

pveum useradd testuser@pve -comment "Just a test"

Changer MDP Utilisateur:

pveum passwd testuser@pve

Ajout d'un groupe:

pveum groupadd admin -comment "System Administrators"

Modifier le role du Groupe, et ici le mettre en tant qu'admin:

pveum aclmod / -group admin -role Administrator

Ajout utilisateur à un groupe, ici le groupe admin, pour que l'user soit admin:

pveum usermod testuser@pve -group admin 

Liens

How do I create a non root admin user?, Proxmox Forum

Remove subscription alert

Quand on utilise Proxmox sans support payant, il affiche un message d'alerte au lancement de l'interface web de gestion.

Pour le désactiver, se connecter en SSH sur la machine proxmox et taper la commande suivante:

sed -i.bak "s/data.status !== 'Active'/false/g" /usr/share/javascript/proxmox-widget-toolkit/proxmoxlib.js

Convertir Disque VHDX en Format Qemu

1. Envoyer le le fichier VHDX sur le serveur Proxmox

2. Apres création de la VM, chercher le Disque virtuel de celle ci (en format qemu):

find / -name vm-112-disk-1* (remplacer le 112 par le numero de la VM)

3. Convert vhdx to qcow:

mv vm-112-disk-0.qcow2 vm-112-disk-0.qcow2-svg # Backup VM Disk
qemu-img convert -O qcow2 ddVMFormatHyperV.vhdx vm-101-disk-0.qcow2
ls /var/lib/vz/images/112

Source: https://www.servethehome.com/converting-a-hyper-v-vhdx-for-use-with-kvm-or-proxmox-ve/2/

Commandes Memo

Activer / désactiver stockage

pvesm set <storage_name> --disable 0 / 1
# 0 → Active le storage
# 1 → Désactiver le storage

Lister les disques virtuels des VM d'un Stockage

pvesm list storage_name

Récupérer l'emplacement exacte du disque d'une VM (utiliser la commande précédente pour avoir le chemin):

pvesm path storage_name:disk_name

Exporter un disque en format RAW sous un autre format (qcow2, vmdk...):

qemu-img convert -f raw /dev/pve/vm-id-disk-number -O qcow2 export_disk_vm.qcow2

Changer le Hostname d'une machine proxmox

Pour renommer un serveur, ou un nœud proxmox, la procédure est assez classique.
Il faut aller modifier les fichiers hosts de la machine:

Et modifier les entrées avec le nouveau nom, ainsi que la correspondance IP dans le fichier hosts

Après redémarrage du serveur, il se peut que dans l'interface web, l'ancien nom apparaissent encore et que les machines soient toujours reliées à ce dernier.

Dans ce cas, il faut déplacer les fichiers dans /etc/pve/nodes, en se connectant en SSH sur le machine proxmox:

mv /etc/pve/nodes/old_hostname/* /etc/pve/nodes/new_hostname/
mv /etc/pve/nodes/old_hostname/lxc/* /etc/pve/nodes/new_hostname/lxc
mv /etc/pve/nodes/old_hostname/qemu-server/* /etc/pve/nodes/new_hostname/qemu-server
rm -rf /etc/pve/nodes/old_hostname

Le fichier /etc/pve/storage.cfg, a peut-etre aussi besoin d'être édité pour remplacer les valeurs lé à l'ancien nom.

Sources:

Renaming a PVE node
Changer le hostname d'un serveur Proxmox

Ajout d'un datastore déjà existant dans PBS

Contexte

Il se peut qu'on veuille migrer un disque contenant les donnés d'un Datastore vers une autre machine pbs.
Si on veut rajouter ce disque via l'interface web, il faut formater le disque et on perd toutes les données dessus.

De base on ne peut pas le faire via l'interface de pbs, il faut le faire à la main en SSH. 

Mise en place

On récupère l'id du disque, contenant les données de SVG:

blkid

Ce qui nous donne:

/dev/sdb1: UUID="880ed827-b387-4bf3-8274-b2adc7fde660" BLOCK_SIZE="4096" TYPE="ext4" PARTUUID="1dcca9e5-41ad-48e7-9541-502c9c79cc29"

(ici sdb1 fait référence à la partition du disque de SVG), évidement la valeur sera différente sur votre système.

On créer le dossier pour le point de montage:

mkdir /mnt/datastore/Prox-Backups

Ensuite on créer un fichier service de systemd, pour que le dossier se lance au démarrage (sur Proxmox et PBS, les stockages montées ne sont pas dans le fichier fstab, ils sont montés via systemd, au démarrage du système)

 /etc/systemd/system/mnt-datastore-Prox-Backups.mount

[Mount]
Options=defaults
Type=ext4
What=/dev/disk/by-uuid/880ed827-b387-4bf3-8274-b2adc7fde660
Where=/mnt/datastore/Prox-Backups

[Unit]
Description=Mount datatstore 'Prox-Backups' under '/mnt/datastore/Prox-Backups'

[Install]
WantedBy=multi-user.target

Bien changer l'id du disque par le bon id, récupéré plus tôt.

Pour que le service soit bien pris en compte par sytemd, sans redémarrer la machine:

systemctl daemon-reload

On monte le Datastore, afin qu'il remonte dans pbs:

systemctl reload mnt-datastore-Prox-Backups.mount

Enfin, il faut éditer (ou le créer) le fichier /etc/proxmox-backup/datastore.cfg, et ajouter ces lignes à la fin:

datastore: Prox-Backups
        path /mnt/datastore/Prox-Backups
        verify-new true

Normalement, le Datastore devrait apparaitre sur l'interface web, et les svg devraient pouvoir ce faire dessus.

→ Ici la config donnée, fait référence à un Datastore nommé "Prox-Backups", bien penser à changer cette valeur si le Datastore doit porter un nom différent.