Subject: [DISCUSS] Replacing the default built-in CentOS template in CloudStack
Hi all, I'd like to start a discussion on replacing the default built-in template that ships with every CloudStack installation. The original GitHub discussion is here, and you're welcome to comment there as well: https://github.com/apache/cloudstack/discussions/13797 Today, the built-in templates registered for each hypervisor are quite outdated: - KVM: CentOS 5.5 (64-bit) no GUI http://download.cloudstack.org/releases/2.2.0/eec2209b-9875-3c8d-92be-c001bd8a0faf.qcow2.bz2 - XenServer: CentOS 5.6 (64-bit) no GUI http://download.cloudstack.org/templates/builtin/centos56-x86_64.vhd.bz2 - vSphere: CentOS 5.3 (64-bit) no GUI http://download.cloudstack.org/releases/2.2.0/CentOS5.3-x86_64.ova These templates are no longer practical, even for basic testing: 1. The VM deploys, but the SSH service doesn't work, so it's of little use for validating a fresh installation. 2. They're starting to break outright on newer hypervisors. On ACS 4.22 with XenServer 8.4, deploying a VM from the default CentOS template fails with "Cannot find Template CentOS 7 on XenServer host", because XenServer 8.4 has deprecated the CentOS 7 guest template (tracked in https://github.com/apache/cloudstack/issues/13798). What I'd like to see is a new default template that is: - current, and in line with what users actually run today - small in footprint, so it downloads quickly and can be used for quick testing right after installation - functional for the core guest features: root password reset, SSH keys, user data, and cloud-init Candidates I've looked at: - macchinina (https://github.com/NuxRo/macchinina) - Alpine Linux cloud images (https://alpinelinux.org/cloud/) - CirrOS (https://github.com/cirros-dev/cirros) - Debian cloud images (https://cloud.debian.org/images/cloud/) - Ubuntu minimal cloud images ( https://cloud-images.ubuntu.com/minimal/releases/) - AlmaLinux Generic Cloud ( https://wiki.almalinux.org/cloud/Generic-cloud.html) - Rocky Linux (https://wiki.rockylinux.org/rocky/image/) - Fedora Cloud (https://fedoraproject.org/cloud/download/) My personal preference is between two options: 1. macchinina: built for CloudStack testing, but it needs a refresh and someone to maintain it going forward. 2. Alpine cloud image: very small and well maintained upstream. We'd need to run tests to confirm password, SSH key, and user-data behaviour across hypervisors. Most of the mainstream distro cloud images are in the 500-600 MB range, which goes against the "quick test after install" goal. I'd love to hear the community's views on: - which image (or images) you'd prefer as the default - any hypervisor-specific concerns (KVM / XenServer-XCP-ng / VMware) If there's rough consensus, I'm happy to follow up with a PR and testing across hypervisors. Thanks, Kiran Chavala
