- État Nouveau
- Pourcentage achevé
- Type Anomalie
- Catégorie Services locaux → VM
- Assignée à Personne
- Système d'exploitation Freebox Server V7 (Delta)
- Sévérité Basse
- Priorité Très Basse
- Basée sur la version 4.7.5
- Due pour la version Non décidée
-
Échéance
Non décidée
- Votes
- Privée
Ouverte par _fvt - 17/04/2023
Dernière modification par _fvt - 17/04/2023
FS#37969 - Cloud-Init Network Configuration not applied
Bonjour,
J’utilise cloud-init pour configurer ma VM (debian).
Cette VM lance ensuite un docker-compose (fichier copié via cloud-init, docker et docker compose installés via cloud-init, et compose lancé via cloud-init, avec redirection d’une caméra USB vers homebridge-cameraui, …).
En résumé, quand je supprime et recréé la VM, je n’ai qu’à coller le cloud-init et tout repart, sauf pour la partie Network:
Dans ce compose il y a une partie pihole, utilisé comme DNS et DHCP.
J’aimerais avoir le DHCP de la freebox désactivé et l’assignement d’une IP à cette VM via cloud-init.
Le seul souci dans cette automatisation est que la partie Network de cloud-init ne fonctionne pas, je suis donc obligé de laisser le DHCP de la freebox activé avec une seule IP dans le range et une réservation MAC sur cette IP pour la VM, ce qui n’est pas très pratique (l’adresse MAC de la VM n’est pas affichée dans l’UI freebox donc je dois la démarrer une première fois avant de mettre en place la réservation, en prenant garde a ne pas avoir activé le DHCP freebox avant d’avoir mis la réservation sinon l’adresse est prise par un autre bail d’un équipement connecté, …).
Est-ce que quelqu’un a déjà réussi a faire fonctionner le module Network de cloud-init avec une VM ? Est-ce du a une limitation des VM freebox ?
Exemple de cloud-init (tout fonctionne sauf la partie Network):
#cloud-config cloud_final_modules: - [network, always] - [apt-configure, always] # force apt sources updates - [package-update-upgrade-install, always] - [write-files, always] - [write-files-deferred, always] - [runcmd, always] - [scripts-user, always] # runcmd only create the user script but not run it, so you need this too in order to have runcmd run again - [users-groups, always] - [ssh, always] network: version: 2 ethernets: switchports: match: {name: "enp*"} bonds: bond0: interfaces: [switchports] mode: balance-alb dhcp4: false dhcp6: false addresses: [192.168.10.2/24] gateway4: 192.168.10.1 nameservers: search: [home.lan, lan, .] addresses: [192.168.10.2, 192.168.10.1] ssh_authorized_keys: - ssh-rsa XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX home@192.168.10.2 system_info: default_user: name: home groups: [docker] package_update: true package_upgrade: true packages: [docker, docker-compose, vim, htop, ucommon-utils, v4l2loopback-dkms, v4l-utils, alsa-utils, ffmpeg] package_reboot_if_required: true write_files: - encoding: "gzip+base64" content: XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX owner: home:root permissions: '0440' path: /home/home/compose-home.yaml runcmd: - [modprobe, v4l2loopback, "video_nr=101"] # Create virtual device, only one for the moment as v4l2loopback devices can still handle mutliple readers - [pdetach, /usr/bin/ffmpeg, -nostdin, -loglevel, error, -f, v4l2, -input_format, mjpeg, -video_size, "1280x720", -framerate, 20, -i, /dev/video0, -f, v4l2, -codec, copy, /dev/video101] # clone video0 to video101 so that it can be read by multiple processes in parallel. Using pdetach to run it in backgroups as had issues to escape ampersand - [/usr/bin/systemctl, start, docker] # needed if freshly installed - [/usr/bin/docker-compose, -f, /home/home/compose-home.yaml, up, -d, --force-recreate, --remove-orphans] # force recreate containers to avoid issues and always have a clean startup
Le schema de config est bien valide testé avec
cloud-init schema --system
.
La freebox et donc la VM sont redémarrés une fois par semaine, d’où le lancement de modules cloud-init en “always” pour maintenir le tout a jour automatiquement (et simplifier un changement de configuration type clé SSH ou autre). La VM est recréée seulement en cas de Mise a jour de l’OS majeure.
Merci d’avance pour votre aide,
Francis.
Chargement...
Activer les raccourcis clavier
- Alt + ⇧ Shift + l Se connecter/Se déconnecter
- Alt + ⇧ Shift + a Ouvrir une tâche
- Alt + ⇧ Shift + m Mes recherches
- Alt + ⇧ Shift + t Rechercher par ID de tâche
Liste des tâches
- o Ouvrir la tâche sélectionnée
- j Déplacer le curseur vers le bas
- k Déplacer le curseur vers le haut
Détails de la tâche
- n Tâche suivante
- p Tâche précédente
- Alt + ⇧ Shift + e ↵ Enter Modifier cette tâche
- Alt + ⇧ Shift + w Surveiller
- Alt + ⇧ Shift + y Fermer cette tâche
Édition de la tâche
- Alt + ⇧ Shift + s Enregistrer la tâche