Eigene Images in die pluscloudopen importieren - z. B. Talos Linux

Importieren Sie eigene Images in ihr Projekt in der pluscloudopen

Überblick

Obwohl die pluscloudopen eine große Anzahl von gängigen Cloud Images anbietet, kann es vorkommen, dass für ein Projekt Images aus anderen Quellen (oder auch selbsterstellte Images) importiert werden müssen. In diesem Tutorial wird am Beispiel von Talos Linux erklärt wie das geht und was dabei zu beachten ist.

Import

Um ein Image in ein Projekt in der pluscloudopen importieren zu können, müssen wir es zunächst herunterladen. Entweder auf unseren lokalen Arbeitsplatz oder auf eine in der pluscloudopen gestartete Instanz. Im Fall von Talos Linux lassen wir uns ein passendes Image in der Talos Image Factory erstellen. Im Menü wählen wir:

  • Hardware Type: Cloud Server
  • Talos Version: 1.12.6
  • Cloud: OpenStack
  • Machine Architecture: amd64
  • System Extensions: keine
  • Customization: keine
  • Bootloader: auto

Auf der nächsten Seite wird uns unter First Boot der Download-Link für unser Disk Image präsentiert.

Per Kommandozeile

Wenn wir das Image auf der Kommandozeile importieren wollen, können wir es einfach mit wget herunterladen:

ubuntu@ubuntu:/data wget -c https://factory.talos.dev/image/376567988ad370138ad8b2698212367b8edcb69b5fd68c80be1f2ec7d603b4ba/v1.12.6/openstack-amd64.raw.xz

Die heruntergeladene Datei ist mit xz komprimiert worden. Sie muß mit xz -d openstack-amd64.raw.xz ausgepackt werden und benötigt dann etwas über vier Gigabyte Plattenplatz. Um sie an der Kommandozeile in die pluscloudopen zu importieren, wird ein installierter und konfigurierter OpenStack-Client benötigt. Die Installation und Konfiguration haben wir in dieser Dokumentation unter Einführung/Grundlagen beschrieben. Mit dem OpenStack-Client wird das Image dann wie folgt importiert:

ubuntu@ubuntu:/data openstack image create \
                         --disk-format raw \
                         --container-format bare \
                         --file /data/openstack-amd64.raw \
                         --property os_type=linux \
                         --property hw_disk_bus=scsi \
                         --property hw_machine_type=q35 \
                         --property hw_rng_model=virtio \
                         --community \
                         "Talos Linux v1.12.6 openstack"

Mit diesem Kommando erhalten wir ein Image, welches wir danach zum Erzeugen von Instanzen in der pluscloudopen benutzen können.

Per WebGui

Ähnlich zum Vorgehen auf der Kommandozeile können Images auch über die WebGui importiert werden. Der Dialog dafür findet sich im Menü Projekt/Compute/Abbilder

und kann durch Klick auf “Create Image” geöffnet werden. Im Dialog

Create Image

ist darauf zu achten als “Format” ebenfalls “Raw” auszuwählen. Unter “Image Source” muß man dann die auf den Arbeitsplatz heruntergeladene und ausgepackte Image-Datei angeben. Je nach Wunsch kann auch noch die Sichtbarkeit des Images in der pluscloudopen eingestellt werden

  • Privat: das Image ist nur im eigenen Projekt zu sehen und verwendbar
  • Community: das Image ist auch für alle anderen in der Kategorie “Community” sichtbar
  • Shared: das Image ist in einem oder mehreren anderen Projekten sichtbar.

Weiterhin kann man das Image gegen versehentliches Löschen schützen, in dem man den Wert “Protected” auf “Yes” setzt. Mit dem Klick auf “Next” öffnet sich der Dialog

Metadata.

Hier können und sollten verschiedene Metadaten gesetzt werden. Manche dieser auch “Properties” genannten Werte, können sich auf die Performance von Instanzen, die dieses Image verwenden, auswirken. Andere helfen bei der Auswahl und Verwaltung, wenn man aus vielen Images, eine gezielte Auswahl treffen will.

Properties

Wie oben schon erwähnt, ist es wichtig, bei selbst kreirten oder importierten Images, die richtigen Properties/Metadaten zu setzen, um einerseits ihre Performance in der pluscloudopen positiv zu beeinflussen und um sie später an Hand von Filtern leichter verwalten zu können.

Die von Plusserver automatisch in die pluscloudopen importierten Images haben schon viele Image-Properties gesetzt, die als Orientierung dienen können. Als Beispiel hier bei einem aktuellen Ubuntu Image:

(openstack-client) ubuntu@ubuntu:~$ openstack image show --fit 05ccd070-88dd-41ca-bc3b-b829f84d5dae
+------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| Field            | Value                                                                                                                                                                                          |
+------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| checksum         | af18ea56b7c16171a22ed2597232596c                                                                                                                                                               |
| container_format | bare                                                                                                                                                                                           |
| created_at       | 2026-03-06T13:25:55Z                                                                                                                                                                           |
| disk_format      | raw                                                                                                                                                                                            |
| file             | /v2/images/05ccd070-88dd-41ca-bc3b-b829f84d5dae/file                                                                                                                                           |
| id               | 05ccd070-88dd-41ca-bc3b-b829f84d5dae                                                                                                                                                           |
| min_disk         | 8                                                                                                                                                                                              |
| min_ram          | 512                                                                                                                                                                                            |
| name             | Ubuntu 24.04                                                                                                                                                                                   |
| owner            | b8fd6cf7468d469685654d270526232a                                                                                                                                                               |
| properties       | architecture='x86_64', direct_url='rbd://a5bf811b-566d-4079-ace1-0e3396c22512/images/05ccd070-88dd-41ca-bc3b-b829f84d5dae/snap', hotfix_hours='0', hw_disk_bus='scsi', hw_machine_type='q35',  |
|                  | hw_rng_model='virtio', hw_scsi_model='virtio-scsi', hw_watchdog_action='reset', hypervisor_type='qemu', image_build_date='2026-02-25', image_description='Ubuntu 24.04', image_name='Ubuntu    |
|                  | 24.04', image_original_user='ubuntu', image_source='https://cloud-images.ubuntu.com/releases/noble/release-20260225/ubuntu-24.04-server-cloudimg-amd64.img', internal_version='20260225',      |
|                  | locations='[{'url': 'rbd://a5bf811b-566d-4079-ace1-0e3396c22512/images/05ccd070-88dd-41ca-bc3b-b829f84d5dae/snap', 'metadata': {'store': 'rbd'}}]', os_distro='ubuntu',                        |
|                  | os_glance_failed_import='', os_glance_importing_to_stores='', os_hash_algo='sha512',                                                                                                           |
|                  | os_hash_value='7447fc99609fa9ec76065e8a2a7496dfc04d2fd73949f05cd02cfd3fac4d0b47519a45668cc45e266f5cc32a4df9de7fbdfb2e6ac0d8533762ad205489c5df59', os_hidden='False', os_purpose='generic',     |
|                  | os_version='24.04', owner_specified.openstack.md5='', owner_specified.openstack.object='images/Ubuntu 24.04 (20260225)', owner_specified.openstack.sha256='', provided_until='none',           |
|                  | replace_frequency='monthly', stores='rbd', uuid_validity='last-3'                                                                                                                              |
| protected        | False                                                                                                                                                                                          |
| schema           | /v2/schemas/image                                                                                                                                                                              |
| size             | 3758096384                                                                                                                                                                                     |
| status           | active                                                                                                                                                                                         | 
| tags             | managed_by_plusserver, os:ubuntu                                                                                                                                                               |
| updated_at       | 2026-03-06T13:27:03Z                                                                                                                                                                           |
| virtual_size     | 3758096384                                                                                                                                                                                     |
| visibility       | public                                                                                                                                                                                         |
+------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+

Insbesondere bei automatisiert erstellten bzw. importierten Images helfen Properties wie image_build_date, image_version, image_name, etc. dabei, die Images auch autmatisiert zu Filtern, um z. B. immer die aktuellste Variante innerhalb einer Packer Buildpipeline zu verwenden:

  source_image_filter {
    filters { 
      name = "Debian 11"
    }
    most_recent = "true"
  }

Umgekehrt kann das weglassen von Properties wie z. B. hw_machine_type dazu führen, dass sich etwa nicht die gewünschte Anzahl von Volumes an einer Instanz mounten läßt.

In der OpenStack Dokumentation findet sich eine Liste von hilfreichen Image Properties.

Zuletzt geändert 30.03.2026: typos (5589cc0)