Dans mon homelab je vais installer une machine de management afin de gérer les différentes installations et configuration de machines dans le homelab.

Pour cela rien de plus simple, on prévoit une VM sous Proxmox, branchée sur le bridge LAN de proxmox.

Je vais donc configurer un accès depuis ma machine vers au moins cette machine, en mode “bastion”. Je pourrais plus tard me connecter aux autres machines et/ou aux autres services du homelab.

Installation de la machine

Modes d’installation envisagés :

  • Création manuelle dans Proxmox
  • Création via un template Proxmox
    • depuis l’interface
    • en ligne de commande
  • Création full automatique par Terraform

Cette VM a été créée par clone manuel puis la partie cloud init a été remplie à la main.

La création du template est expliquée par boilerplates/proxmox/create_template.md

Je configure également l’ordre de boot de VM au démarrage du noeud Proxmox afin d’avoir en premier OPNSense et en second cette machine de management.

Configuration initiale

Initialement la machine clonée dispose seulement d’un minimum d’éléments. La configuration cloud-init permet d’avoir un user sudoer.

Pour l’instant je n’installe que Docker comme outil supplémentaire. Je vais ajouter tout ce que j’ai besoin via des images Docker (custom ou officielles). Ainsi le remplacement de cette machine sera simplifié en cas de pépin.

L’installation et la configuration de tailscale permettent de se connecter à la machine depuis le poste de travail. Pour ces informations voir le post Accès machines depuis l’extérieur.

Configuration spéciale pour la gestion d’autres machines

Voici les éléments d’informations pour gérer des machines supplémentaires dans le sous-réseau :

Outils nécessaires pour l’IaC:

  • ansible
  • terraform/openToFu

Point d’attention:

  • gestion de clés ssh. Il faut une paire de clés ssh afin de mettre la clé pub sur les machines installées (cloud-init ?) afin de fluidifier la config Ansible. génération puis copie manuelle puis ajout dans template de vm / config cloud-init ?

Outils intéressants:

  • serveur TFTP pour les boots PXE
  • vscode ‘serveur’ (accès web) OU option remote vscode -> permet de gérer le code sur la machine sans s’y connecter en SSH