[pve-devel] [PATCH v7 qemu-server 00/10] cloudinit pending behaviour change

Mark Schouten mark at tuxis.nl
Mon Sep 5 09:29:46 CEST 2022


Hi,

Not trying to break this thread, feel free to poke me off-list if this 
message is not supposed to be sent in this thread.

Concerning cloud-init. There is something with Proxmox cloud-init that 
if you keep the cloud-init drive, after every boot, the sshd host-keys 
change. Is that something fixable? Or am I doing it wrong? :)

—
Mark Schouten, CTO
Tuxis B.V.
mark at tuxis.nl


------ Original Message ------
>From "Alexandre Derumier" <aderumier at odiso.com>
To pve-devel at lists.proxmox.com
Date 22/06/2022 13:51:56
Subject [pve-devel] [PATCH v7 qemu-server 00/10] cloudinit pending 
behaviour change

>Hi,
>
>This is an attempt to cleanup current behaviour of cloudinit online changes.
>
>Currently, we setup cloudinit options as pending, until we generate the config drive.
>
>This is not 100% true, because some option like vm name, nic mac address can be changed,
>without going to pending, so user can't known if it need to regenerated it.
>
>Also, some can are very difficult to handle, if you hotplug a nic but it's failing,so pending,
>then you defined an ipconfig, and then you revert hotplug.
>or if you delete a nic, the ipconfig is no more displayed in the gui.
>
>
>So, instead of setting cloudinit values in pending,
>this patch serie copy the current cloudinit config in a new section [special:cloudinit],
>when the config drive is generated.
>This is only an hint, to allow to display diff between the generated cloudinit
>drive, and the current vm config.
>
>A new specific cloudinit config api is added too displaying the diff between current and generated config.
>
>Reminder: This need pve-manager depency bump first to check the version for live migration.
>pve-manager patches series is available here : https://lists.proxmox.com/pipermail/pve-devel/2021-June/048542.html
>
>(I need to small fix to display nic/mac info, I'll try to fix it today)
>
>
>Changelog V1:
>
>- use [special:cloudinit] instead [CLOUDINIT] for section
>- delete config section on drive removal
>- config api: move code to new PVE::QemuServer::Cloudinit::get_pending_config
>- config api: add "qm cloudinit pending" cli
>- add update api to regenerate drive with 1 api call
>- add cloudinit hotplug option
>
>Changelog v2:
>
>- fix trailing whitespace in first patch
>- revert previous "cloudinit" check in snapshot name (":" character is already forbidden)
>
>Changelog v3:
>
>- extract the current conf from cloudinit drive instead write the special cloudinit section
>
>Changelog v4:
>
>- rebase on v2, keep current cloudinit config in vm configuration
>- pending api: display mac address change on netX
>- cleanup && fix from Fabian comments
>
>Changelog v5:
>
>- move cloudinit fast_plug_option generation outside vmconfig_hotplug_pending
>- remove cloudinit section from vm_config api
>- vzdump : skip cloudinit section - migration: check target node version && forbid migration if too old && cloudinit section exist.
>
>Changelog v6:
>
>- move last 3 patches at beginning of the patch series
>- api config: remove cloudinit in load_current_config
>- migration: move the 2 helpers in PVE::QemuServer::Helpers + code cleanup
>
>
>Changelog v7:
>
>- code cleanup
>- add an extra patch for debian control to break pve-manager <= 7.2.4
>
>Alexandre Derumier (10):
>  qemuconfig: load_current_config : delete cloudinit value
>  vzdump : skip special:cloudinit section
>  migration: test targetnode min version for cloudinit section
>  cloudinit: add cloudinit section for current generated config.
>  generate cloudinit drive on offline plug
>  cloudinit: make cloudnit options fastplug
>  api2: add cloudinit config api
>  api2: add cloudinit_update
>  add cloudinit hotplug
>  debian : control : add a break on pve-manager <= 7.2.4
>
>PVE/API2/Qemu.pm            | 111 ++++++++++++++++++++++++++++++++++++
>PVE/CLI/qm.pm               |   2 +
>PVE/QemuConfig.pm           |   8 +++
>PVE/QemuMigrate.pm          |   8 +++
>PVE/QemuServer.pm           | 100 ++++++++++++++++++++++----------
>PVE/QemuServer/Cloudinit.pm | 110 +++++++++++++++++++++++++++++++++++
>PVE/QemuServer/Helpers.pm   |  24 ++++++++
>PVE/VZDump/QemuServer.pm    |   5 +-
>debian/control              |   2 +-
>9 files changed, 337 insertions(+), 33 deletions(-)
>
>-- 2.30.2
>
>
>_______________________________________________
>pve-devel mailing list
>pve-devel at lists.proxmox.com
>https://lists.proxmox.com/cgi-bin/mailman/listinfo/pve-devel
>





More information about the pve-devel mailing list