Deploy VM on KVM host using cloud init images¶
Creating Metadata files¶
#cloud-config
hostname: vm01
fqdn: vm01.test.com
manage_etc_hosts: true
users:
- name: user
groups: sudo, admin
shell: /bin/bash
sudo: 'ALL=(ALL) NOPASSWD:ALL'
lock_passwd: false
passwd: "Hashed Password 'mkpasswd -m sha-512' "
ssh_authorized_keys:
- "ssh-rsa"
package_update: true
#package_upgrade: true
packages:
- vim
- curl
Metadata file
network-config
Downloading Cloud Images¶
For Ubuntu “Ubuntu Cloud Images - the official Ubuntu images for public clouds, Openstack, KVM and LXD“
For Debian “Index of /images/cloud“
For CentOS “CentOS Cloud Images“
For RockyLinux “Download - Rocky Linux“
For Alma Linux “Cloud Images | AlmaLinux Wiki“
Creating VM¶
virt-install \
--name vm01 \
--memory 2048 \
--vcpu 2 \
--noreboot \
--os-variant detect=on,name=ubuntu22.04 \
--network network=default \
--disk size=20,backing_store=$(pwd)/image-name, \
--cloud-init user-data=$(pwd)/user-data,meta-data=$(pwd)/meta-data,network-config=$(pwd)/network-config