How to add Glance Cloud image to OpenStack
You can download this article in PDF format via the link below to support us.Download the guide in PDF formatClose
In this tutorial, we will study how to add a VM image to the Openstack Glance image service. I assume you already have a running Openstack setup and the glance service is running on the controller node.
What is Openstack Image Service?
The Openstack overview enables users to discover, register and retrieve virtual machine images.The default storage location for these images is /var/lib/glance/images/ The back end is a file.
Openstack Image Service also provides a REST API, which allows you to query the virtual machine image metadata and retrieve the actual image. You can store virtual machine images provided through the Image service in various locations from simple file systems to object storage systems (such as OpenStack Object Storage).
Get Glance pictures?
The easiest way to obtain a virtual machine image compatible with OpenStack is to download an image that someone else has created. Most images include the cloud-init package to support SSH key pair and user data injection.
I will show you how to add images to various operating systems by downloading work that others have already done. Of course, you can create your own images, but it is faster to get ready-made images.
Default login credentials
The following is the default login user name for the instance created from the image added soon.
Debian: debian Fedora: fedora Ubuntu: ubuntu RHEL: cloud-user CentOS: centos coreos: core Arch Linux: arch Gentoo: gentoo OpenSUSE: root Fedora CoreOS: core Cirros: username: cirros Password: cubswin:)
example:
1. Add Cirros Cloud image to Glance
wget http://download.cirros-cloud.net/0.5.1/cirros-0.5.1-x86_64-disk.img
openstack image create
--container-format bare
--disk-format qcow2
--file cirros-0.5.1-x86_64-disk.img
Cirros-0.5.1
2. Add Fedora cloud image to Openstack
wget http://fedora.mirror.liquidtelecom.com/fedora/linux/releases/32/Cloud/x86_64/images/Fedora-Cloud-Base-32-1.6.x86_64.qcow2
openstack image create
--container-format bare
--disk-format qcow2
--file Fedora-Cloud-Base-32-1.6.x86_64.qcow2
Fedora-32
3. Add CentOS cloud image to Openstack
CentOS 8:
wget https://cloud.centos.org/centos/8/x86_64/images/CentOS-8-GenericCloud-8.3.2011-20201204.2.x86_64.qcow2
openstack image create
--container-format bare
--disk-format qcow2
--file CentOS-8-GenericCloud-8.3.2011-20201204.2.x86_64.qcow2
CentOS-8
CentOS 7:
$ wget http://cloud.centos.org/centos/7/images/CentOS-7-x86_64-GenericCloud.qcow2
$ openstack image create
--container-format bare
--disk-format qcow2
--file CentOS-7-x86_64-GenericCloud.qcow2
CentOS-7
3. Add Ubuntu cloud image to Openstack
Ubuntu 20.04
wget http://cloud-images.ubuntu.com/focal/current/focal-server-cloudimg-amd64.img
openstack image create
--container-format bare
--disk-format qcow2
--file focal-server-cloudimg-amd64.img
Ubuntu-20.04
Ubuntu 18.04:
$ wget http://cloud-images.ubuntu.com/bionic/current/bionic-server-cloudimg-amd64.img
$ openstack image create
--container-format bare
--disk-format qcow2
--file bionic-server-cloudimg-amd64.img
Ubuntu-18.04
4. Add Debian Cloud Image to Openstack
Debian 10:
wget http://cdimage.debian.org/cdimage/openstack/current-10/debian-10-openstack-amd64.qcow2
openstack image create
--container-format bare
--disk-format qcow2
--file debian-10-openstack-amd64.qcow2
Debian-10
Debian 9:
$ wget http://cdimage.debian.org/cdimage/openstack/current-9/debian-9-openstack-amd64.qcow2
$ openstack image create
--container-format bare
--disk-format qcow2
--file debian-9-openstack-amd64.qcow2
Debian-9
5. Add CoreOS cloud image to Openstack
$ wget https://stable.release.core-os.net/amd64-usr/current/coreos_production_openstack_image.img.bz2
$ bunzip2 coreos_production_openstack_image.img.bz2
$ openstack image create
--container-format bare
--disk-format qcow2
--file coreos_production_openstack_image.img
CoreOS
6. Add Arch Linux cloud image to Openstack
$ wget https://linuximages.de/openstack/arch/arch-openstack-LATEST-image-bootstrap.qcow2
$ openstack image create
--container-format bare
--disk-format qcow2
--file arch-openstack-LATEST-image-bootstrap.qcow2
Arch-Linux
7. Add Gentoo Cloud image to Openstack
$ wget https://linuximages.de/openstack/gentoo/gentoo-openstack-LATEST-image-bootstrap.qcow2
$ openstack image create
--container-format bare
--disk-format qcow2
--file gentoo-openstack-LATEST-image-bootstrap.qcow2
Gentoo-Linux
8. Add Fedora CoreOS image to OpenStack
Download image
wget https://builds.coreos.fedoraproject.org/prod/streams/stable/builds/33.20201201.3.0/x86_64/fedora-coreos-33.20201201.3.0-openstack.x86_64.qcow2.xz -O fedora-coreos-qemu.qcow2.xz
Extract image:
unxz fedora-coreos-qemu.qcow2.xz
Upload the extracted picture:
openstack image create
--container-format bare
--disk-format qcow2
--file fedora-coreos-qemu.qcow2
fcos
9. Add Windows Server 2012 image
Download the image from https://cloudbase.it/windows-cloud-images/#download
$ gunzip -cd windows_server_2012_r2_standard_eval_kvm_20170321.qcow2.gz
$ openstack image create
--container-format bare
--disk-format qcow2
--file windows_server_2012_r2_standard_eval_kvm_20170321.qcow2
Windows-Server-2012-R2-Std
View the list of images available in Glance.
$ openstack image list
+--------------------------------------+---------------------+--------+
| ID | Name | Status |
+--------------------------------------+---------------------+--------+
| 0850ee38-1bdf-4379-9c69-0cf73e8b7c65 | Arch-Linux-x86_64 | active |
| e98445b6-f14f-488c-a18a-1f66c6de15c7 | CentOS-7-x86_64 | active |
| 7b4b616e-71f3-4419-9777-7aee66fad62c | Cirros-0.4.0-x86_64 | active |
| 98bbd9e6-abbc-45fa-ac95-b91b7b18ba0a | Debian-9-amd64 | active |
| 113b90b6-4e1e-4715-b9ab-456c191a82b3 | Fedora-30-x86_64 | active |
| 06c17e8a-0d4c-428a-89b5-b0eb2489f403 | Ubuntu-16.04-x86_64 | active |
+--------------------------------------+---------------------+--------+
Set image options
Now, set all images to Publicly visible And protect them fromDeleted accidentally.
IMAGE_IDS=`openstack image list | egrep '[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}' -o`
for i in ${IMAGE_IDS[@]}; do
openstack image set --public $i
openstack image set --protected $i
done
Confirm by going to Horizon Dashboard Project>Calculation>Image. You should note that the “Protected” flag for all images is set to “Yes” and the “Visibility” is also set to “Public”.
reference:
OpenStack documentation
Also check:
You can download this article in PDF format via the link below to support us.Download the guide in PDF formatClose