It would be great if it was possible to configure base networking settings (IP, gateway, dns domain, dns servers, hostname, search domains) through the regular cloud init interfaces (instead of having to create a connman service file).
Why is this important (in my opinion)? There are virtualization systems, like Proxmox VE, that allow you to configure a limited set of cloudinit parameters for a VM regarding the network config (but don't support full cloudinit scripts). This is usually enough to run any standard cloud image (Debian, CentOS, etc). It would be great if the k3os iso would behave similarly.

https://pve.proxmox.com/wiki/Cloud-Init_Support
https://pve.proxmox.com/wiki/Cloud-Init_FAQ
I stumbled upon the same issue.
Thumbs up :-)
This would also help for cloud deployments in AWS
Yes, please, meanwhile: does anybody know a converter?
I've been thinking something like this :
data_sources to the correct type in /k3os/system/config.yamlcloud-init implementationcloud-init config and apply itSide-note: XenOrchestra uses the openstack config drive mechanism whereas Proxmox seems to use the cdrom method.
Please see #341 for more details, about the inabilty of linuxkit/metadata to pick up the user-data file in the cdrom data source.
@christian-korneck: it is possible to use the proxmox cli to inject your own config into the user-data of the cloud-init ISO.
mkdir -p /var/lib/vz/snippets
cp -p your-config.yaml /var/lib/vz/snippets/
qm set 100 --cicustom user=local:snippets/your-config.yaml
You need to mount the proxmox cloud-init device in k3os, to have a look at the merged content in file user-data, as qm cloudinit dump 100 user does only list the content of the proxmox entries.
Btw, you need to replace 100 with your VMID. :smile:
it is possible to use the proxmox cli to inject your own config
qm set 100 --cicustom user=local:snippets/your-config.yaml
@pagong thanks for mentioning this workaround.
@christian-korneck @BastienM
Please, have a look at https://github.com/pagong/cloudinit-for-k3os, if you want to build cloud-init compatible ISOs, that are also usable with k3os.
For Proxmox, you will have to disable the built-in cloud-init drive, upload the generated ISO to the ISO repository and mount it as a second cdrom drive instead.
Have fun! :smiley_cat:
@christian-korneck
Please, have a look at https://github.com/pagong/jitsi-meet-on-k3os#1st-part-install-k3os-on-a-proxmox-vm,
if you want to have fully automatic installations of k3os on Proxmox.
@pagong awesome, thanks for sharing!
@pagong awesome, thanks for sharing!
Solve to you? I'm trying to build using packer but cloud-init doesn't works
@pagong and others. Allow me to chime in.
Based on the code here in the terraform-provider-libvirt. One should be able to use that Terraform providers cloud-init ISO creation feature to create a supported K3OS cloud-init/config ISO. I'm thinking that to be the case as @pagong 's code in does the same thing as the one in the terraform provider repo. Except it's a different command to generate the ISO.
The above comment for those that want to automate their K3OS/K3S deployment. Terraform could be a good choice for many.
I hope that helps.
@larssb : Thanks for the hint to have a look at terraform.
However, if k3os is using the fixed, upstream linuxkit, then my little tool may no longer be needed.
Just to keep this feature request alive: Thanks for all the workarounds mentioned in this thread. However they're all workarounds that - in a situation where cloudinit actually provides valid network infos to the VM - still require one of:
My expectation as an enduser would still be that a VM booting with the vendor provided k3os ISO can work with standard cloudinit network config that gets passed to it. Similar to all the Linux cloud images (openstack images) out there (like debian, fedora, etc).
Most helpful comment
Just to keep this feature request alive: Thanks for all the workarounds mentioned in this thread. However they're all workarounds that - in a situation where cloudinit actually provides valid network infos to the VM - still require one of:
My expectation as an enduser would still be that a VM booting with the vendor provided k3os ISO can work with standard cloudinit network config that gets passed to it. Similar to all the Linux cloud images (openstack images) out there (like debian, fedora, etc).