Proxmox VE6 and cloud-init for Ubuntu LTS 20.04

Egner

Renowned Member
Aug 2, 2015
96
1
73
Hi,

I have a significant problem regarding ubuntu. All other template i have created are working just fine but this one doesnt.

It feels like the mount of cloud-init drive doing nothing at the boot up of the vm.

This is my cloud-init config and for me it looks fine:


cat /etc/cloud/cloud.cfg
# The top level settings are used as module
# and system configuration.

# A set of users which may be applied and/or used by various modules
# when a 'default' entry is found it will reference the 'default_user'
# from the distro configuration specified below
users:
- default

# If this is set, 'root' will not be able to ssh in and they
# will get a message to login instead as the default $user
disable_root: false
ssh_pwauth: true

# This will cause the set+update hostname module to not operate (if true)
preserve_hostname: false

# Example datasource config
# datasource:
# Ec2:
# metadata_urls: [ 'blah.com' ]
# timeout: 5 # (defaults to 50 seconds)
# max_wait: 10 # (defaults to 120 seconds)



# The modules that run in the 'init' stage
cloud_init_modules:
- migrator
- seed_random
- bootcmd
- write-files
- growpart
- resizefs
- disk_setup
- mounts
- set_hostname
- update_hostname
- update_etc_hosts
- ca-certs
- rsyslog
- users-groups
- ssh

# The modules that run in the 'config' stage
cloud_config_modules:
# Emit the cloud config ready event
# this can be used by upstart jobs for 'start on cloud-config'.
- emit_upstart
- snap
- ssh-import-id
- locale
- set-passwords
- grub-dpkg
- apt-pipelining
- apt-configure
- ubuntu-advantage
- ntp
- timezone
- disable-ec2-metadata
- runcmd
- byobu

# The modules that run in the 'final' stage
cloud_final_modules:
- package-update-upgrade-install
- fan
- landscape
- lxd
- ubuntu-drivers
- puppet
- chef
- mcollective
- salt-minion
- rightscale_userdata
- scripts-vendor
- scripts-per-once
- scripts-per-boot
- scripts-per-instance
- scripts-user
- ssh-authkey-fingerprints
- keys-to-console
- phone-home
- final-message
- power-state-change

# System and/or distro specific settings
# (not accessible to handlers/transforms)
system_info:
# This will affect which distro class gets used
distro: ubuntu
# Default user name + that default users groups (if added/used)
default_user:
name: ubuntu
lock_passwd: False
gecos: Ubuntu
groups: [adm, audio, cdrom, dialout, dip, floppy, lxd, netdev, plugdev, sudo, video]
sudo: ["ALL=(ALL) NOPASSWD:ALL"]
shell: /bin/bash
network:
renderers: ['netplan', 'eni', 'sysconfig']
# Automatically discover the best ntp_client
ntp_client: auto
# Other config here will be given to the distro class and/or path classes
paths:
cloud_dir: /var/lib/cloud/
templates_dir: /etc/cloud/templates/
upstart_dir: /etc/init/
package_mirrors:
- arches: [i386, amd64]
failsafe:
primary: http://archive.ubuntu.com/ubuntu
security: http://security.ubuntu.com/ubuntu
search:
primary:
- http://%(ec2_region)s.ec2.archive.ubuntu.com/ubuntu/
- http://%(availability_zone)s.clouds.archive.ubuntu.com/ubuntu/
- http://%(region)s.clouds.archive.ubuntu.com/ubuntu/
security: []
- arches: [arm64, armel, armhf]
failsafe:
primary: http://ports.ubuntu.com/ubuntu-ports
security: http://ports.ubuntu.com/ubuntu-ports
search:
primary:
- http://%(ec2_region)s.ec2.ports.ubuntu.com/ubuntu-ports/
- http://%(availability_zone)s.clouds.ports.ubuntu.com/ubuntu-ports/
- http://%(region)s.clouds.ports.ubuntu.com/ubuntu-ports/
security: []
- arches: [default]
failsafe:
primary: http://ports.ubuntu.com/ubuntu-ports
security: http://ports.ubuntu.com/ubuntu-ports
ssh_svcname: ssh


When i try to change the username of root or the standard user it isn't possible to change their password on boot up after i generate the cloud-init drive to the virtual machine.

I also tried to do some change to the DNS and Networking and nothing happen in the virtual machine.

So like i said before, it feels like the cloud-init drive from Proxmox is incompatible with Ubuntu 20.04.

The server also have all the cloud-init packages installed so it should not be anything in there.

Please let me know if you need more information

/Egner
 
Either purge cloud-init in the VM and install it again or run 'cloud-init clean'. The Ubuntu images seem to be preconfigured to only run cloud-init once and then never again. So to make it run again you have to clean the 'lock' files by running the cloud-init clean command.
 
I did try that, but nothing :/ it still don't doing anything when it boots up.
I tried to run cloud-init clean and also remove the cloud-init and reinstalled it once again without any success.
 
Hi guys,

Sorry to bump this old topic, but I recently came back with the need to have working cloud-init support on with latest Ubuntu images. Sadly, the latest images was still causing trouble to get its configuration via cloud-init, and I didn't want to loose time fixing the image by manually.

So I decided to tackle down the issue. The solution I came up with was to made my own image with the customization needed for it to work with Proxmox. To tool I used for this is diskimage-builder, this is a project baked by the Openstack community since most of the cloud images are created with that tool.
The code to build the image is available here: https://github.com/lion24/proxmox-images

The Ubuntu image should "just work" and it's also shipped with the qemu-guest-agent for the reporting on the Proxmox GUI.

Feel free to ping me if you need support on building the image. For now, only Ubuntu is supported, but plan is to add more ;)

Kr.
 
Last edited:
  • Like
Reactions: mira

About

The Proxmox community has been around for many years and offers help and support for Proxmox VE, Proxmox Backup Server, and Proxmox Mail Gateway.
We think our community is one of the best thanks to people like you!

Get your subscription!

The Proxmox team works very hard to make sure you are running the best software and getting stable updates and security enhancements, as well as quick enterprise support. Tens of thousands of happy customers have a Proxmox subscription. Get yours easily in our online shop.

Buy now!