|
|
[[_TOC_]]
|
|
|
|
|
|
# Préparation
|
|
|
|
|
|
## Enregistrement des informations administratives
|
|
|
|
|
|
Voir [Check-list - Arrivée d'un·e nouveau·elle utilisateurice](fonctionnement_technique/procedures/Check-List-:-Arrivée-d'un·e-utilisateurice)
|
|
|
|
|
|
## Création de l'utilisateur dans Proxmox
|
|
|
|
|
|
Note : il faut avoir un compte administrateur dans Proxmox
|
|
|
|
|
|
* Se connecter à Proxmox : https://proxmox.gresille.org
|
|
|
* Dans la colonne de gauche, sélectionner `Vue serveur` > `Datacenter (gresille-infra)` puis `Permissions` > `Utilisateurs`
|
|
|
|
|
|

|
|
|
|
|
|
* Cliquer ensuite sur `Ajouter` pour afficher la fenêtre d'ajout.
|
|
|
|
|
|
Remplir alors au moins les champs indiqués ci-dessous. Les champs `Prénom`, `Nom` et `E-Mail` sont facultatifs, car ces infos seront semi-publiques (accessibles à tou·te·s les utilisateurices).
|
|
|
|
|
|

|
|
|
|
|
|
Proxmox ne propose visiblement pas de réinitialiser le mot de passe par mail. Partant du principe que les utilisateurs seront créés lors d'une permanence, il faudra générer un mot de passe aléatoire à changer à la prochaine connexion.
|
|
|
|
|
|
Il est également possible d'utiliser l'API de Proxmox en ligne de commande, pour créer les utilisateurs automatiquement :
|
|
|
https://pve.proxmox.com/wiki/User_Management#_command_line_tool
|
|
|
|
|
|
## Attribuer l'accès à Proxmox à l'utilisateurice
|
|
|
|
|
|
Depuis juillet 2023, l'accès à Promox nécessite de passer par un bastion SSH installé sur Monarque. Il faut donc récupérer la clé SSH de la personne et créer un utilisateur sur Monarque en utilisant Ansible --> voir le README de Ansible.
|
|
|
|
|
|
Puis l'utilisateurice doit utiliser une méthode décrite dans [la doc publique](https://forge.gresille.org/salle-serveur/doc-publique/-/wikis/doc_usager/Machines-virtuelles) pour accéder à l'interface Proxmox.
|
|
|
|
|
|
## Attribution d'une IP et d'un VLAN
|
|
|
|
|
|
Il s'agit d'enregistrer la machine dans [Netbox](https://netbox.gresille.org) et de lui attribuer une adresse IP.
|
|
|
|
|
|
* Se connecter à https://netbox.gresille.org avec un compte administrateur
|
|
|
|
|
|
* Dans [le menu Tenants](https://netbox.gresille.org/tenancy/tenants/) créer un Tenant si nécessaire (si l'identifiant Forge n'apparaît pas dans la liste)
|
|
|
* Name : l'identifiant Forge
|
|
|
* Group : Users
|
|
|
|
|
|
* Consulter la liste des IP allouées : https://netbox.gresille.org/ipam/prefixes/5/ip-addresses/
|
|
|
* ajouter une IP libre en cliquant sur `X IPs available`
|
|
|
* noter cette adresse IP pour la suite. Elle est de la forme `193.23.164.XXX/32`
|
|
|
* associer l'adresse au Tenant group `Users`
|
|
|
* associer l'adresse au Tenant correspondant à l'identifiant Forge
|
|
|
|
|
|
* Pinger cette IP pour être sûre qu'elle n'est pas déjà utilisée :
|
|
|
* `ping 193.23.164.XXX`
|
|
|
* Si l'hôte de destination est injoignable, cela signifie que l'IP est disponible !
|
|
|
|
|
|
* Créer la machine virtuelle dans Netbox : https://netbox.gresille.org/virtualization/virtual-machines/add/
|
|
|
* Donner un nom unique à la VM, par exemple `vm42`
|
|
|
* Rôle : `Machine virtuelle`
|
|
|
* Status : `Active`
|
|
|
* Cluster : `Cluster Prod`
|
|
|
* Tenant Group : `Users`
|
|
|
* Tenant : l'identifiant Forge
|
|
|
|
|
|
Il n'est pas nécessaire de remplir les détails techniques (CPU, mémoire) ou de mettre une adresse IP à ce niveau
|
|
|
|
|
|
* Ajouter une interface réseau à la description de la VM dans Netbox (bouton `Add interfaces` en haut à droite)
|
|
|
* Choisir simplement le nom `eth0`
|
|
|
|
|
|
* Ajouter une adresse IP à cette interface (bouton "+" sur la ligne de l'interface "eth0")
|
|
|
* Mettre l'IP allouée à la première étape : `193.23.164.XXX/32`
|
|
|
* Status : `Active`
|
|
|
* Tenant Group : `Users`
|
|
|
* Tenant : l'identifiant Forge
|
|
|
* Cocher `Make this the primary IP for the device/VM`
|
|
|
|
|
|
On peut déterminer le VLAN attribué à l'utilisateur (nécessaire pour la suite) à partir de l'adresse IP : si l'adresse est `193.23.164.XXX/32`, alors le VLAN est `2XXX`.
|
|
|
|
|
|
C'est tout bon côté Netbox ! On retourne dans Proxmox !
|
|
|
|
|
|
# Installation
|
|
|
|
|
|
## Installation par template
|
|
|
|
|
|
Permet une installation très rapide d'une VM sous Debian.
|
|
|
|
|
|
### Templates disponibles
|
|
|
|
|
|
- `template-debian10`
|
|
|
- `template-debian11` (à utiliser en priorité)
|
|
|
|
|
|
Tous les templates ont un utilisateur nommé `gresille`, dont le mot de passe est défini par cloud-init.
|
|
|
|
|
|
### Installation pas à pas
|
|
|
|
|
|
* Dans le menu de gauche, dans le cluster `miramelle-cluster`, choisir un template
|
|
|
|
|
|

|
|
|
|
|
|
* À partir du template désiré, créer un clone complet (clic droit sur le template).
|
|
|
* Choisir le mode "Full clone" et non le mode par défaut "Linked clone".
|
|
|
* Laisse l'ID attribué par Proxmox
|
|
|
* Nommer la VM selon ce qui a été enregistré dans Netbox, par exemple `vm42`
|
|
|
* Choisir le pool de ressource : `Users`
|
|
|
* Choisir le target storage : `zpool-fast` par défaut, ou `zpool-big` si il s'agit d'une VM qui aura besoin de beaucoup d'espace disque.
|
|
|
* Attribuer les droits à l'utilisateur Proxmox créé [plus haut](#creation-de-lutilisateur-dans-proxmox) comme indiqué [plus bas](#attribution-des-droits).
|
|
|
* Laisser quelques minutes si nécessaire pour que le clone se termine.
|
|
|
* Configuration matérielle de la VM :
|
|
|
* Si l'utilisateur veut plus de RAM ou de CPU : définir les bons paramètres dans Hardware.
|
|
|
* Si l'utilisateur veut un disque plus gros que le défaut : agrandir le disque de la VM (Hardware / sélectionner le disque / bouton "Resize disk"). Attention, il faut le faire avant le premier boot de la VM : cloud-init va alors automatiquement redimensionner la partition et le système de fichier lors du boot.
|
|
|
* On sélectionne la VM et on va dans le menu `cloud-init` puis on applique les paramètres suivants :
|
|
|
* User : gresille
|
|
|
* Password : le mot de passe SSH de l'utilisateur (choisit par l'utilisateur, ou généré aléatoirement et à changer)
|
|
|
* Clés SSH : téléverser la clé de l'utilisateur (peut être fait plus tard par l'utilisateur lui-même)
|
|
|
* Domaine DNS : laisser vide
|
|
|
* Serveur DNS : `100.100.100.100`
|
|
|
* IPv4 : `193.23.164.XXX/32` (on remplace bien sûr par l'IP attribuée [plus haut](#attribution-dune-ip-et-dun-vlan))
|
|
|
* Gateway IPv4 : `100.100.100.100`
|
|
|
* IPv6 : `2a10:a080:110X:XX00::1/64` où XXX est le même qu'en IPv4
|
|
|
* Gateway IPv6 : `fe80::100`
|
|
|
|
|
|
* Cliquer ensuite sur `Régénérer l'image` dans cloud-init
|
|
|
* Modifier le tag du VLAN choisi [plus haut](#attribution-dune-ip-et-dun-vlan) :
|
|
|
* Sélectionner la VM puis menu `Matériel`
|
|
|
* Double-clic sur `Carte réseau`
|
|
|
* Modifier `Tag VLAN`
|
|
|
* Démarrer la machine (bouton `Démarrer`)
|
|
|
* Demander à l'utilisateur de se connecter
|
|
|
* soit en SSH `ssh gresille@193.23.164.XXX`
|
|
|
* soit via la console dans l'interface Proxmox)
|
|
|
* Une fois la VM correctement démarrée, supprimer le disque cloud-init : `Matériel` > `Lecteur CloudInit` > `Supprimer`. Il n'est plus nécessaire et empêcherait de migrer la VM.
|
|
|
* Rebooter la VM depuis Proxmox pour que la suppression du disque cloud-init soit appliquée.
|
|
|
|
|
|
|
|
|
## Installation manuelle
|
|
|
|
|
|
Si l'utilisateur veut un autre système que Debian ou veut une installation spécifique (partitionnement, taille de la VM, etc…)
|
|
|
|
|
|
### Création de la VM
|
|
|
|
|
|
Suivre les étapes pour créer la VM.
|
|
|
|
|
|
Pour le disque : bien cocher la case `discard`.
|
|
|
|
|
|
Pour le réseau : utiliser le bridge `vmbr0` en indiquant bien le VLAN :
|
|
|
|
|
|

|
|
|
|
|
|
Après avoir créé la VM, donner les droits dessus à l'utilisateur ([voir le chapitre plus bas](#attribution-des-droits)) :
|
|
|
|
|
|
### Installation du système
|
|
|
|
|
|
Une installation manuelle est nécessaire si l'utilisateur veut chiffrer le disque de sa machine virtuelle, ou si il veut un OS pour lequel on n'a pas de template.
|
|
|
|
|
|
Dans ce cas, on attache une ISO d'installeur Debian ou autre, et l'utilisateur installe sa VM comme il l'entend.
|
|
|
|
|
|
Pour la configuration réseau, l'utilisateur devra suivre [la documentation dédiée](doc_usager/Configuration-réseau)
|
|
|
|
|
|
### Post-installation
|
|
|
|
|
|
Supprimer le lecteur CD (dans Hardware) : sa présence empêcherait la migration de VM.
|
|
|
|
|
|
Dans Options, activer "Start at boot" pour que la VM soit lancée au démarrage de la machine physique.
|
|
|
|
|
|
## Attribution des droits
|
|
|
|
|
|
Après avoir créé la VM (automatiquement ou manuellement), il faut que l'utilisateur ait les droits pour la manager.
|
|
|
|
|
|
* Dans la vue Datacenter, cliquer sur le menu Permissions (et non sur un des sous-menus !).
|
|
|
|
|
|

|
|
|
|
|
|
* Cliquer sur le bouton `Ajouter` puis `Permission de l'utilisateur`
|
|
|
* Chemin : sélectionner `/vms/XXX` où XXX est le numéro de la VM
|
|
|
* Utilisateur : ajouter l'utilisateur
|
|
|
[[_TOC_]]
|
|
|
|
|
|
# Préparation
|
|
|
|
|
|
## Enregistrement des informations administratives
|
|
|
|
|
|
Voir [Check-list - Arrivée d'un·e nouveau·elle utilisateurice](fonctionnement_technique/procedures/Check-List-:-Arrivée-d'un·e-utilisateurice)
|
|
|
|
|
|
## Création de l'utilisateur dans Proxmox
|
|
|
|
|
|
Note : il faut avoir un compte administrateur dans Proxmox
|
|
|
|
|
|
* Se connecter à Proxmox en suivant [cette procédure](Machines-virtuelles#pour-accéder-à-linterface-de-proxmox)
|
|
|
* Dans la colonne de gauche, sélectionner `Vue serveur` > `Datacenter (gresille-infra)` puis `Permissions` > `Utilisateurs`
|
|
|
|
|
|

|
|
|
|
|
|
* Cliquer ensuite sur `Ajouter` pour afficher la fenêtre d'ajout.
|
|
|
|
|
|
Remplir alors au moins les champs indiqués ci-dessous. Les champs `Prénom`, `Nom` et `E-Mail` sont facultatifs, car ces infos seront semi-publiques (accessibles à tou·te·s les utilisateurices).
|
|
|
|
|
|

|
|
|
|
|
|
Proxmox ne propose visiblement pas de réinitialiser le mot de passe par mail. Partant du principe que les utilisateurs seront créés lors d'une permanence, il faudra générer un mot de passe aléatoire à changer à la prochaine connexion.
|
|
|
|
|
|
Il est également possible d'utiliser l'API de Proxmox en ligne de commande, pour créer les utilisateurs automatiquement :
|
|
|
https://pve.proxmox.com/wiki/User_Management#_command_line_tool
|
|
|
|
|
|
## Attribuer l'accès à Proxmox à l'utilisateurice
|
|
|
|
|
|
Depuis juillet 2023, l'accès à Promox nécessite de passer par un bastion SSH installé sur Monarque. Il faut donc récupérer la clé SSH de la personne et créer un utilisateur sur Monarque en utilisant Ansible --> voir le README de Ansible.
|
|
|
|
|
|
Puis l'utilisateurice doit utiliser une méthode décrite dans [la doc publique](https://forge.gresille.org/salle-serveur/doc-publique/-/wikis/doc_usager/Machines-virtuelles) pour accéder à l'interface Proxmox.
|
|
|
|
|
|
## Attribution d'une IP et d'un VLAN
|
|
|
|
|
|
Il s'agit d'enregistrer la machine dans [Netbox](https://netbox.gresille.org) et de lui attribuer une adresse IP.
|
|
|
|
|
|
* Se connecter à https://netbox.gresille.org avec un compte administrateur
|
|
|
|
|
|
* Dans [le menu Tenants](https://netbox.gresille.org/tenancy/tenants/) créer un Tenant si nécessaire (si l'identifiant Forge n'apparaît pas dans la liste)
|
|
|
* Name : l'identifiant Forge
|
|
|
* Group : Users
|
|
|
|
|
|
* Consulter la liste des IP allouées : https://netbox.gresille.org/ipam/prefixes/5/ip-addresses/
|
|
|
* ajouter une IP libre en cliquant sur `X IPs available`
|
|
|
* noter cette adresse IP pour la suite. Elle est de la forme `193.23.164.XXX/32`
|
|
|
* associer l'adresse au Tenant group `Users`
|
|
|
* associer l'adresse au Tenant correspondant à l'identifiant Forge
|
|
|
|
|
|
* Pinger cette IP pour être sûre qu'elle n'est pas déjà utilisée :
|
|
|
* `ping 193.23.164.XXX`
|
|
|
* Si l'hôte de destination est injoignable, cela signifie que l'IP est disponible !
|
|
|
|
|
|
* Créer la machine virtuelle dans Netbox : https://netbox.gresille.org/virtualization/virtual-machines/add/
|
|
|
* Donner un nom unique à la VM, par exemple `vm42`
|
|
|
* Rôle : `Machine virtuelle`
|
|
|
* Status : `Active`
|
|
|
* Cluster : `Cluster Prod`
|
|
|
* Tenant Group : `Users`
|
|
|
* Tenant : l'identifiant Forge
|
|
|
|
|
|
Il n'est pas nécessaire de remplir les détails techniques (CPU, mémoire) ou de mettre une adresse IP à ce niveau
|
|
|
|
|
|
* Ajouter une interface réseau à la description de la VM dans Netbox (bouton `Add interfaces` en haut à droite)
|
|
|
* Choisir simplement le nom `eth0`
|
|
|
|
|
|
* Ajouter une adresse IP à cette interface (bouton "+" sur la ligne de l'interface "eth0")
|
|
|
* Mettre l'IP allouée à la première étape : `193.23.164.XXX/32`
|
|
|
* Status : `Active`
|
|
|
* Tenant Group : `Users`
|
|
|
* Tenant : l'identifiant Forge
|
|
|
* Cocher `Make this the primary IP for the device/VM`
|
|
|
|
|
|
On peut déterminer le VLAN attribué à l'utilisateur (nécessaire pour la suite) à partir de l'adresse IP : si l'adresse est `193.23.164.XXX/32`, alors le VLAN est `2XXX`.
|
|
|
|
|
|
C'est tout bon côté Netbox ! On retourne dans Proxmox !
|
|
|
|
|
|
# Installation
|
|
|
|
|
|
## Installation par template
|
|
|
|
|
|
Permet une installation très rapide d'une VM sous Debian.
|
|
|
|
|
|
### Templates disponibles
|
|
|
|
|
|
- `template-debian10`
|
|
|
- `template-debian11` (à utiliser en priorité)
|
|
|
|
|
|
Tous les templates ont un utilisateur nommé `gresille`, dont le mot de passe est défini par cloud-init.
|
|
|
|
|
|
### Installation pas à pas
|
|
|
|
|
|
* Dans le menu de gauche, dans le cluster `miramelle-cluster`, choisir un template
|
|
|
|
|
|

|
|
|
|
|
|
* À partir du template désiré, créer un clone complet (clic droit sur le template).
|
|
|
* Choisir le mode "Full clone" et non le mode par défaut "Linked clone".
|
|
|
* Laisse l'ID attribué par Proxmox
|
|
|
* Nommer la VM selon ce qui a été enregistré dans Netbox, par exemple `vm42`
|
|
|
* Choisir le pool de ressource : `Users`
|
|
|
* Choisir le target storage : `zpool-fast` par défaut, ou `zpool-big` si il s'agit d'une VM qui aura besoin de beaucoup d'espace disque.
|
|
|
* Attribuer les droits à l'utilisateur Proxmox créé [plus haut](#creation-de-lutilisateur-dans-proxmox) comme indiqué [plus bas](#attribution-des-droits).
|
|
|
* Laisser quelques minutes si nécessaire pour que le clone se termine.
|
|
|
* Configuration matérielle de la VM :
|
|
|
* Si l'utilisateur veut plus de RAM ou de CPU : définir les bons paramètres dans Hardware.
|
|
|
* Si l'utilisateur veut un disque plus gros que le défaut : agrandir le disque de la VM (Hardware / sélectionner le disque / bouton "Resize disk"). Attention, il faut le faire avant le premier boot de la VM : cloud-init va alors automatiquement redimensionner la partition et le système de fichier lors du boot.
|
|
|
* On sélectionne la VM et on va dans le menu `cloud-init` puis on applique les paramètres suivants :
|
|
|
* User : gresille
|
|
|
* Password : le mot de passe SSH de l'utilisateur (choisit par l'utilisateur, ou généré aléatoirement et à changer)
|
|
|
* Clés SSH : téléverser la clé de l'utilisateur (peut être fait plus tard par l'utilisateur lui-même)
|
|
|
* Domaine DNS : laisser vide
|
|
|
* Serveur DNS : `100.100.100.100`
|
|
|
* IPv4 : `193.23.164.XXX/32` (on remplace bien sûr par l'IP attribuée [plus haut](#attribution-dune-ip-et-dun-vlan))
|
|
|
* Gateway IPv4 : `100.100.100.100`
|
|
|
* IPv6 : `2a10:a080:110X:XX00::1/64` où XXX est le même qu'en IPv4
|
|
|
* Gateway IPv6 : `fe80::100`
|
|
|
|
|
|
* Cliquer ensuite sur `Régénérer l'image` dans cloud-init
|
|
|
* Modifier le tag du VLAN choisi [plus haut](#attribution-dune-ip-et-dun-vlan) :
|
|
|
* Sélectionner la VM puis menu `Matériel`
|
|
|
* Double-clic sur `Carte réseau`
|
|
|
* Modifier `Tag VLAN`
|
|
|
* Démarrer la machine (bouton `Démarrer`)
|
|
|
* Demander à l'utilisateur de se connecter
|
|
|
* soit en SSH `ssh gresille@193.23.164.XXX`
|
|
|
* soit via la console dans l'interface Proxmox)
|
|
|
* Une fois la VM correctement démarrée, supprimer le disque cloud-init : `Matériel` > `Lecteur CloudInit` > `Supprimer`. Il n'est plus nécessaire et empêcherait de migrer la VM.
|
|
|
* Rebooter la VM depuis Proxmox pour que la suppression du disque cloud-init soit appliquée.
|
|
|
|
|
|
|
|
|
## Installation manuelle
|
|
|
|
|
|
Si l'utilisateur veut un autre système que Debian ou veut une installation spécifique (partitionnement, taille de la VM, etc…)
|
|
|
|
|
|
### Création de la VM
|
|
|
|
|
|
Suivre les étapes pour créer la VM.
|
|
|
|
|
|
Pour le disque : bien cocher la case `discard`.
|
|
|
|
|
|
Pour le réseau : utiliser le bridge `vmbr0` en indiquant bien le VLAN :
|
|
|
|
|
|

|
|
|
|
|
|
Après avoir créé la VM, donner les droits dessus à l'utilisateur ([voir le chapitre plus bas](#attribution-des-droits)) :
|
|
|
|
|
|
### Installation du système
|
|
|
|
|
|
Une installation manuelle est nécessaire si l'utilisateur veut chiffrer le disque de sa machine virtuelle, ou si il veut un OS pour lequel on n'a pas de template.
|
|
|
|
|
|
Dans ce cas, on attache une ISO d'installeur Debian ou autre, et l'utilisateur installe sa VM comme il l'entend.
|
|
|
|
|
|
Pour la configuration réseau, l'utilisateur devra suivre [la documentation dédiée](doc_usager/Configuration-réseau)
|
|
|
|
|
|
### Post-installation
|
|
|
|
|
|
Supprimer le lecteur CD (dans Hardware) : sa présence empêcherait la migration de VM.
|
|
|
|
|
|
Dans Options, activer "Start at boot" pour que la VM soit lancée au démarrage de la machine physique.
|
|
|
|
|
|
## Attribution des droits
|
|
|
|
|
|
Après avoir créé la VM (automatiquement ou manuellement), il faut que l'utilisateur ait les droits pour la manager.
|
|
|
|
|
|
* Dans la vue Datacenter, cliquer sur le menu Permissions (et non sur un des sous-menus !).
|
|
|
|
|
|

|
|
|
|
|
|
* Cliquer sur le bouton `Ajouter` puis `Permission de l'utilisateur`
|
|
|
* Chemin : sélectionner `/vms/XXX` où XXX est le numéro de la VM
|
|
|
* Utilisateur : ajouter l'utilisateur
|
|
|
* Rôle : `GresilleUser` |
|
|
\ No newline at end of file |