Init repo

This commit is contained in:
Ghislain
2025-12-18 21:26:22 +01:00
commit 853a7234a4
11 changed files with 586 additions and 0 deletions

58
README.md Normal file
View File

@@ -0,0 +1,58 @@
![Proxmox](https://img.shields.io/static/v1?style=for-the-badge&message=Proxmox&color=E57000&logo=Proxmox&logoColor=FFFFFF&label=) ![Packer](https://img.shields.io/badge/packer-%23E7EEF0.svg?style=for-the-badge&logo=packer&logoColor=%2302A8EF)
# Déploiement Packer d'une machine Debian sur Proxmox
## Qu'est ce que Packer ?
> Packer est une solution opensource permettant de construire des images machine pour de multiples plateformes cloud. Il est utilisé dans une approche « d'infrastructure as code » afin de pouvoir maintenir facilement les logiciels déployés sur les serveurs. - Syloe
L'objectif de ce dépôt est de déployer une template de machine virtuelle Debian pré-configurée. *(Authentification par clé SSH, ou installation d'un agent de supervision à la fin de l'installation)*
## Démarrer le projet
Pré-requis:
- [j2cli](https://pypi.org/project/j2cli/)
- [Packer](https://packer.io)
Editez le fichier `build.sh` pour y mettre les identifiants de votre Proxmox :
```bash
export proxmox_url="https://IP_PROXMOX:8006/api2/json"
export proxmox_node="NOM_NOEUD"
export proxmox_username="root@pam" # packer@pve si vous créez un utilisateur "packer".
export proxmox_password="Password"
```
*Pensez à vérifier que les noms des pools de stockages sont les mêmes que vous (local, local-zfs)*.
Il sera **obligatoire** de fournir une clé ssh qui sera ajoutée à l'utilisateur *root* de la machine.
```bash
export vm_keys=$(echo "$(cat ~/.ssh/id_ed25519.pub)")
```
Il est possible d'ajouter plusieurs clés de cette manière :
```bash
export vm_keys=$(echo "$(cat ./KeyDEPLOY.id_rsa.pub)\n$(cat ./KeyINFRA.id_rsa.pub)\n$(cat ~/.ssh/id_rsa.pub)")
```
Valider la config :
```bash
packer validate *.pkr.hcl
```
Commande de démarrage :
```bash
source ./build.sh
```
# TroubleShooting
## No matching host key type found
Si vous êtes sur Ubuntu, vous devrez ajouter le ssh-rsa en algorithme de chiffrement compatible.
Voici l'erreur sur laquelle vous tomberez :
```
proxmox: fatal: [default]: UNREACHABLE! => {"changed": false, "msg": "Failed to connect to the host via ssh: Unable to negotiate with 127.0.0.1 port 32985: no matching host key type found. Their offer: ssh-rsa", "unreachable": true}
```
La solution est d'accepter cet algorithme dans votre fichier `~/.ssh/config`.
```
Host 127.0.0.1
HostKeyAlgorithms +ssh-rsa
PubkeyAcceptedAlgorithms +ssh-rsa
```