cloud-init
is absolute cancer. Its code is horrible. It has no documentation at all.
It took me 5 fucking hours to figure out how to properly configure networking on recent
cloud-init
(Ubuntu 16.04 cloud image
) with local datasource.
It's not mentioned anywhere you need to provide dsmode: local
. (but only if you need network-config,
besides that everything is fine; someone below noted that -m
flag does the same thing, good to know) Of course nobody needs documentation for network-config
format
either. (cloudinit/net/__init__.py
is a protip, enjoy the feces dive)
Oh, and by the way - no, it's not possible to provide network-config
to uvt-kvm
without patching shit.
Use -N
flag for cloud-localds for network-config
.
You're lucky you figured it out in 5 hours. I've been struggling with this for 2 days now trying to figure out why my network config is being ignored. I didn't need the
cloud-localds -m
or to setdsmode: local
to get it to work though. Specifyingcloud-localds --network-config=...
did the trick for me. This is what I ended up with if it helps anyone else: https://github.com/brennancheung/playbooks/tree/master/cloud-init-lab