CentOS Stream 9
Sponsored Link

OpenStack Zed : Add VM Images
2022/11/10
 
Add Virtual Machine images in Glance.
For example on here, add a CentOS Stream 9 virtual machine image.
[1]
Install KVM HyperVisor, refer to here.
It's unnecessarry to set Bridge networking on the section [2] of the link.
Furthermore, Install VM management tools, refer to here.
[2] Create a CentOS Stream 9 image on Glance service Host.
Download the ISO image of CentOS Stream 9 first into a directory before it.
# create a directory for disk image

[root@dlp ~(keystone)]#
mkdir -p /var/kvm/images
# create a disk image

[root@dlp ~(keystone)]#
qemu-img create -f qcow2 /var/kvm/images/centos-st9.img 10G
# install

[root@dlp ~(keystone)]#
virt-install \
--name centos-st9 \
--ram 4096 \
--disk path=/var/kvm/images/centos-st9.img,format=qcow2 \
--vcpus 2 \
--os-variant centos-stream9 \
--network network=default \
--graphics none \
--console pty,target_type=serial \
--location /home/CentOS-Stream-9-latest-x86_64-dvd1.iso \
--extra-args 'console=ttyS0,115200n8'
Starting install...
# after installing OS, login to the VM and configure necessary settings

CentOS Stream 9
Kernel 5.14.0-101.el9.x86_64 on an x86_64

Activate the web console with: systemctl enable --now cockpit.socket

localhost login: root

[root@localhost ~]#
useradd centos

[root@localhost ~]#
passwd centos
[root@localhost ~]#
dnf -y install cloud-init openssh-server

[root@localhost ~]#
vi /etc/cloud/cloud.cfg
# line 16 : if you'd like to allo SSH password auth, change to [1]
ssh_pwauth:   1

# line 99, 100 : change to [centos] as default user
# if you'd like to allow SSH password auth to the user, chage like follows
system_info:
  default_user:
    name: centos
    lock_passwd: false

# remove existing interface

[root@localhost ~]#
nmcli device

]DEVICE  TYPE      STATE      CONNECTION
enp1s0  ethernet  connected  enp1s0
lo      loopback  unmanaged  --
[root@localhost ~]#
nmcli connection del enp1s0

Connection 'enp1s0' (1c64654c-7a47-3f99-8bf3-d2dfa5adab79) successfully deleted.
[root@localhost ~]#
systemctl enable cloud-init sshd

[root@localhost ~]#
shutdown -h now

[3] Add the virtual image to Glance.
[root@dlp ~(keystone)]#
openstack image create "CentOS-Stream9" --file /var/kvm/images/centos-st9.img --disk-format qcow2 --container-format bare --public

+------------------+------------------------------------------------------------------------------+
| Field            | Value                                                                        |
+------------------+------------------------------------------------------------------------------+
| container_format | bare                                                                         |
| created_at       | 2022-11-10T01:26:53Z                                                         |
| disk_format      | qcow2                                                                        |
| file             | /v2/images/8367cc21-61f4-480b-8d03-90c057c7a7cf/file                         |
| id               | 8367cc21-61f4-480b-8d03-90c057c7a7cf                                         |
| min_disk         | 0                                                                            |
| min_ram          | 0                                                                            |
| name             | CentOS-Stream9                                                               |
| owner            | 939974d6fc8e400eb01f7dd749935ea3                                             |
| properties       | os_hidden='False', owner_specified.openstack.md5='', owner_specified.open... |
| protected        | False                                                                        |
| schema           | /v2/schemas/image                                                            |
| status           | queued                                                                       |
| tags             |                                                                              |
| updated_at       | 2022-11-10T01:26:53Z                                                         |
| visibility       | public                                                                       |
+------------------+------------------------------------------------------------------------------+

[root@dlp ~(keystone)]#
openstack image list

+--------------------------------------+----------------+--------+
| ID                                   | Name           | Status |
+--------------------------------------+----------------+--------+
| 8367cc21-61f4-480b-8d03-90c057c7a7cf | CentOS-Stream9 | active |
+--------------------------------------+----------------+--------+
[4] By the way, if you got an image from internet, it's OK to simply add it like follows.
[root@dlp ~(keystone)]#
wget http://cloud-images.ubuntu.com/releases/22.04/release/ubuntu-22.04-server-cloudimg-amd64.img
[root@dlp ~(keystone)]#
openstack image create "Ubuntu2204-Official" --file ubuntu-22.04-server-cloudimg-amd64.img --disk-format qcow2 --container-format bare --public

+------------------+-----------------------------------------------------------------------------+
| Field            | Value                                                                       |
+------------------+-----------------------------------------------------------------------------+
| container_format | bare                                                                        |
| created_at       | 2022-05-31T01:21:20Z                                                        |
| disk_format      | qcow2                                                                       |
| file             | /v2/images/2c1c506d-53f7-4a19-8ac9-9fe20fc1cc5a/file                        |
| id               | 2c1c506d-53f7-4a19-8ac9-9fe20fc1cc5a                                        |
| min_disk         | 0                                                                           |
| min_ram          | 0                                                                           |
| name             | Ubuntu2204-Official                                                         |
| owner            | 0609d3b3b398456187fb705ec9224c4a                                            |
| properties       | os_hidden='False', owner_specified.openstack.md5='', owner_specified.o..... |
| protected        | False                                                                       |
| schema           | /v2/schemas/image                                                           |
| status           | queued                                                                      |
| tags             |                                                                             |
| updated_at       | 2022-05-31T01:21:20Z                                                        |
| visibility       | public                                                                      |
+------------------+-----------------------------------------------------------------------------+
Matched Content