IBM Cloud Docs
VPC-Aspekte bei der Verwendung angepasster Images in einem privaten Katalog

VPC-Aspekte bei der Verwendung angepasster Images in einem privaten Katalog

Wenn Sie ein angepasstes Image für andere Konten in Ihrem Unternehmen freigeben oder veröffentlichen möchten, müssen Sie einen privaten Katalog erstellen. Ein privater Katalog bietet Ihnen die Möglichkeit, den Zugriff auf Produkte für mehrere Konten zu verwalten, während sich diese Konten innerhalb desselben Unternehmens befinden. Mit Ausnahme eines verschlüsselten Image können Sie jedes vorhandene angepasste Image eines virtuellen x86-Servers mit einem privaten Katalog gemeinsam nutzen.

In der Konsole können Sie benutzerdefinierte Bilder in einem privaten Katalog finden, indem Sie auf das Symbol Navigationsmenü Menü-Symbol > Infrastruktur VPC-Symbol > Berechnen > Bilder > Bilder katalogisieren klicken.

Weitere Informationen zu privaten Katalogen finden Sie im Lernprogramm Image eines virtuellen Servers für VPC integrieren.

Angepasste Images können auch im IBM Cloud®-Katalog und in anderen (nicht unternehmensspezifischen) Konten veröffentlicht werden. Dieser Prozess erfordert das Onboarding in das IBM Cloud® Partner Center.

Voraussetzungen und Einschränkungen

Bevor Sie ein angepasstes Image in einen privaten Katalog importieren, muss Folgendes ausgeführt werden.

  • Privaten Katalog erstellen
  • Erstellen und importieren Sie das angepasste Image in IBM Cloud VPC

Für angepasste Images in einem privaten Katalog gelten die folgenden Einschränkungen:

  • Muss ein x86-Image sein
  • Kann nicht verschlüsselt werden
  • Kann nicht mit einem Bare-Metal-Profil verwendet werden
  • Kann jeweils nur in einer Version eines Katalogproduktangebots in einem privaten Katalog vorhanden sein
  • Muss den Status available haben

Verwendung von kontoübergreifenden Bildreferenzen in einem privaten Katalog in der Konsole

Instanzen, die Sie bereitstellen, gehören zu Ihrem Konto. Images, die über einen privaten Katalog mit Ihrem Konto geteilt werden, können zu anderen Konten gehören. Wenn Sie eine Instanz aus einem Image bereitstellen, das zu einem anderen Konto gehört oder aus einer Instanzvorlage, die ein solches Image angibt, gehört das Image trotzdem zu dem anderen Konto, obwohl die Instanz zu Ihrem Konto gehört. Ein Verweis auf ein solches Image kann in Details der Instanz und zugehörigen Ressourcen vorhanden sein. Beispielsweise können Details zu seinem Bootdatenträger und zu allen Momentaufnahmen, die von diesem Bootdatenträger erstellt wurden, auf dieses Image verweisen. Unabhängig von Ihren Berechtigungen können Sie nicht über die ID oder CRN auf das referenzierte Image zugreifen und Versuche schlagen fehl, als ob das Image nicht vorhanden wäre.

Außerdem ist es möglich, dass das referenzierte Image denselben Namen wie ein angepasstes Image in Ihrem Account hat. Diese Bildnamen gelten jedoch für zwei unterschiedliche Bilder in zwei verschiedenen Konten. Die ID und CRN geben jeweils ein Image in IBM Cloud®eindeutig an. Um ein mögliches Abrufen oder Verwenden des falschen Bildes zu verhindern, verwenden Sie beim Ausschneiden und Einfügen der Identität eines Bildes außerhalb der Benutzerschnittstelle dessen ID oder CRN anstelle des Namens.

Kontenübergreifende Imageverweise in einem privaten Katalog in der Befehlszeilenschnittstelle verwenden

Instanzen, die Sie bereitstellen, gehören zu Ihrem Konto. Images, die über einen privaten Katalog mit Ihrem Konto geteilt werden, können zu anderen Konten gehören. Wenn Sie eine Instanz aus einem Image bereitstellen, das zu einem anderen Konto gehört oder aus einer Instanzvorlage, die ein solches Image angibt, gehört das Image trotzdem zu dem anderen Konto, obwohl die Instanz zu Ihrem Konto gehört. Ein Verweis auf ein solches Image kann in Details der Instanz und zugehörigen Ressourcen vorhanden sein. Beispielsweise können Details zu seinem Bootdatenträger und zu allen Momentaufnahmen, die von diesem Bootdatenträger erstellt wurden, auf dieses Image verweisen. Unabhängig von Ihren Berechtigungen können Sie nicht über die ID auf diesen Typ von angepasstem Image zugreifen und Versuche schlagen fehl, als ob das Image nicht vorhanden wäre.

Imageverweise werden an einigen verschiedenen Stellen in der Befehlszeilenschnittstelle verwendet. Wenn Sie beispielsweise den Befehl ibmcloud is instance verwenden, um Instanzdaten abzurufen, wird in der Ausgabe Folgendes angezeigt.

Image                                 ID                                          Name
                                      r006-6cab2dbd-4e57-4dc5-810b-b7366cb78999   test-image

Wenn Sie versuchen, Informationen zu diesem Image mithilfe seiner ID abzurufen,

ibmcloud is image r006-6cab2dbd-4e57-4dc5-810b-b7366cb78999

In diesem Fall schlägt dieser Versuch mit einem Fehler wie dem folgenden fehl:

FAILED
Response HTTP Status Code: 404
Error code: not_found
Error message: The requested resource does not exist, or cannot be accessed.
Error target name: id, type: parameter
Trace ID: d8b4d382-2993-4a89-a371-1db991b510d8

Dieser Fehler bedeutet, dass das Image in Ihrem Konto nicht vorhanden ist. Wenn die Instanz mithilfe eines gemeinsam genutzten Katalogimages in einem anderen Konto bereitgestellt wurde, ist diese Ausgabe die Ausgabe, die immer angezeigt wird, auch wenn das Image im Eignerkonto vorhanden ist.

Außerdem ist es möglich, dass das referenzierte Image denselben Namen wie ein angepasstes Image in Ihrem Account hat. Diese Bildnamen gelten jedoch für zwei unterschiedliche Bilder in zwei verschiedenen Konten. Während die CLI sowohl die ID als auch den Namen verwendet, um ein Image zu identifizieren, identifiziert nur die ID ein Image in IBM Cloud®eindeutig.

Stellen Sie sicher, dass Ihre CLI-basierte Automatisierung Fehler bei der Suche nach Imagereferenzen ordnungsgemäß behandelt und nicht davon ausgeht, dass nicht zugängliche Images gelöscht wurden, selbst wenn sie mit uneingeschränktem Zugriff auf Ihre Images ausgeführt werden. Um einen möglichen Abruf oder die Verwendung des falschen Image nach Name zu vermeiden, geben Sie stattdessen die Image-ID an.

Kontoübergreifende Imageverweise in einem privaten Katalog in der API verwenden

Instanzen, die Sie bereitstellen, gehören zu Ihrem Konto. Images, die über einen privaten Katalog mit Ihrem Konto geteilt werden, können zu anderen Konten gehören. Wenn Sie eine Instanz aus einem Image bereitstellen, das zu einem anderen Konto gehört oder aus einer Instanzvorlage, die ein solches Image angibt, gehört das Image trotzdem zu dem anderen Konto, obwohl die Instanz zu Ihrem Konto gehört. Ein Verweis auf ein solches Image kann in Details der Instanz und zugehörigen Ressourcen vorhanden sein. Beispielsweise können Details zum Bootdatenträger und zu allen Momentaufnahmen, die von diesem Bootdatenträger erstellt werden, auf dieses Image verweisen. Unabhängig von Ihren Berechtigungen können Sie nicht über id, crn oder href auf ein solches Image zugreifen und Versuche schlagen fehl, als ob das Image nicht vorhanden wäre.

In der API wird eine Bildreferenz an Stellen wie den image-Eigenschaften der Antwortschemas Instance und BareMetalServerInitialization und in den source_image-Eigenschaften der Antwortschemas Volume und Snapshot angezeigt. Im folgenden Beispiel werden Instanzdaten abgerufen, um zu veranschaulichen, wie dieser Fehler auftreten kann.

curl -X GET "$vpc_api_endpoint/v1/instances/r006-44905aa4-119d-5622-00ce-face32b78999?version=2022-09-06&generation=2" -H "Authorization: Bearer $iam_token" | jq -r '(.image)'

Das Beispiel verwendet jq als Parser, ein Drittanbieter-Tool, das unter der MIT-Lizenz lizenziert ist. jq ist möglicherweise nicht auf allen VPC-Images vorinstalliert, die beim Erstellen einer Instanz verfügbar sind. Möglicherweise müssen Sie vor der Verwendung jq installieren oder einen anderen Parser Ihrer Wahl verwenden.

Wenn Sie diesen Befehl ausführen, wird die folgende Ausgabe angezeigt.

{
  "crn": "crn:v1:bluemix:public:is:us-south:a/123456::image:r006-6cab2dbd-4e57-4dc5-810b-b7366cb78999",
  "href": "https://us-south.iaas.cloud.ibm.com/v1/images/r006-6cab2dbd-4e57-4dc5-810b-b7366cb78999",
  "id": "r006-6cab2dbd-4e57-4dc5-810b-b7366cb78999",
  "name": "test-image"
}

Wenn Sie versuchen, Informationen zu diesem Image mithilfe des zugehörigen id abzurufen,

curl -X GET "$vpc_api_endpoint/v1/images/r006-6cab2dbd-4e57-4dc5-810b-b7366cb78999?version=2022-09-06&generation=2" -H "Authorization: Bearer $iam_token"

dann schlägt dieser Versuch mit HTTP 404 (nicht gefunden) fehl. Dieser Statuscode bedeutet, dass das Image in Ihrem Konto nicht vorhanden ist. Wenn die Instanz mithilfe eines gemeinsam genutzten Katalogimages in einem anderen Konto bereitgestellt wurde, ist diese Antwort die Antwort, die Sie immer erhalten, auch wenn das Image noch im Eignerkonto vorhanden ist.

Außerdem ist es möglich, dass das referenzierte Image denselben Namen wie ein angepasstes Image in Ihrem Account hat. Diese Bildnamen gelten jedoch für zwei unterschiedliche Bilder in zwei verschiedenen Konten. id, crn und href geben jeweils ein Image in IBM Cloud®eindeutig an.

Stellen Sie sicher, dass Ihre Clients Suchfehler bei Imagereferenzen ordnungsgemäß behandeln und nicht davon ausgehen, dass nicht zugängliche Images gelöscht wurden, auch wenn sie mit uneingeschränktem Zugriff auf Ihre Images ausgeführt werden. Um einen möglichen Abruf oder die Verwendung des falschen Image durch name zu vermeiden, geben Sie stattdessen das Image id, crn oder href an.

Kontoübergreifende Imageverweise in einem privaten Katalog in Terraform verwenden

Instanzen, die Sie bereitstellen, gehören zu Ihrem Konto. Images, die über einen privaten Katalog mit Ihrem Konto geteilt werden, können zu anderen Konten gehören. Wenn Sie eine Instanz aus einem Image bereitstellen, das zu einem anderen Konto gehört oder aus einer Instanzvorlage, die ein solches Image angibt, gehört das Image trotzdem zu dem anderen Konto, obwohl die Instanz zu Ihrem Konto gehört. Ein Verweis auf ein solches Image kann in Details der Instanz und zugehörigen Ressourcen vorhanden sein. Beispielsweise können Details zu seinem Bootdatenträger und zu allen Momentaufnahmen, die von diesem Bootdatenträger erstellt wurden, auf dieses Image verweisen. Unabhängig von Ihren Berechtigungen können Sie nicht über die ID auf diesen Typ von angepasstem Image zugreifen und Versuche schlagen fehl, als ob das Image nicht vorhanden wäre.

Bildverweise werden an einigen verschiedenen Stellen im Terraform verwendet. Wenn Sie beispielsweise die Instanzdatenquelle verwenden, um Instanzdaten abzurufen, sehen Sie Folgendes in der Datenquellenantwort.

"image": "r006-e0d3b6fb-5421-4421-9061-0ca9f79a4990"

Wenn Sie versuchen, Informationen zu diesem Image mithilfe der zugehörigen Datenquelle abzurufen,

data "ibm_is_image" "example" {
  identifier = "r006-e0d3b6fb-5421-4421-9061-0ca9f79a4990"
}

In diesem Fall schlägt dieser Versuch mit einem Fehler wie dem folgenden fehl:

Error: [ERROR] No image found with id  r006-e0d3b6fb-5421-4421-9061-0ca9f79a4990

Dieser Fehler bedeutet, dass das Image in Ihrem Konto nicht vorhanden ist. Wenn die Instanz mithilfe eines gemeinsam genutzten Katalogimages in einem anderen Konto bereitgestellt wurde, ist diese Ausgabe die Ausgabe, die Sie immer sehen, auch wenn das Image noch im Eignerkonto vorhanden ist.

Außerdem ist es möglich, dass das referenzierte Image denselben Namen wie ein angepasstes Image in Ihrem Account hat. Diese Bildnamen gelten jedoch für zwei unterschiedliche Bilder in zwei verschiedenen Konten. Während das Terraform sowohl die ID als auch den Namen verwendet, um ein Image zu identifizieren, identifiziert nur die ID ein Image in IBM Cloud®eindeutig. Um einen möglichen Abruf oder die Verwendung des falschen Image nach Namen zu vermeiden, geben Sie stattdessen die Image-ID an. Weitere Informationen finden Sie unter Imagedatenquelle.

Angepasstes Image in einem privaten Katalog löschen

Ein angepasstes Image kann nicht gelöscht, für eine andere Version wiederverwendet oder für ein anderes Produktangebot wiederverwendet werden, während dieses angepasste Image aus einem privaten Katalog verwaltet wird.

Wenn Sie den privaten Katalog, der Produktangebote enthält, direkt löschen, werden die Produktangebote nicht sofort entfernt. Die angepassten Images, die vom privaten Katalog verwaltet werden, werden nach dem Datum, an dem Sie den privaten Katalog gelöscht haben, 7 Tage lang vom Katalog verwaltet.

Wenn Sie das angepasste Image sofort wiederverwenden oder löschen wollen, stellen Sie sicher, dass Sie es zuerst aus der zugeordneten Version im Produktangebot des privaten Katalogs entfernen oder das Produktangebot löschen.

Informationen zum Löschen eines veröffentlichten oder gemeinsam genutzten angepassten Image aus dem privaten Katalog finden Sie im Lernprogramm Unterstützung für ein privates Produkt einstellen. Informationen zum Löschen des gesamten privaten Katalogs finden Sie im Lernprogramm Privaten Katalog über die Konsole löschen.

Instanzgruppen und privater Katalog

Sie können ein angepasstes Image in einem privaten Katalog verwenden, um eine Instanzgruppe zu erstellen. Sie müssen jedoch zunächst eine Service-zu-Service-Richtlinie für globalcatalog-collection.instance.retrieve erstellen, bevor Sie die Instanzgruppe erstellen können. Weitere Informationen finden Sie unter Angepasstes Image in einem privaten Katalog mit einer Instanzgruppe verwenden.

Die Informationen darüber, welches angepasste Image in einem privaten Katalog, der für die Bereitstellung einer Instanz verwendet wurde, nicht über alle IBM Cloud VPC-Ressourcen hinweg persistent gespeichert wird. Informationen zum angepassten Image in einem privaten Katalog sind in Snapshot for VPC oder Image from Volume nicht verfügbar. Die Betriebssysteminformationen, die bei der Bereitstellung eines virtuellen Servers erforderlich sind, sind verfügbar.

Angepasstes Image in einen privaten Katalog importieren

Nachdem Ihr angepasstes Image in IBM Cloud VPCimportiert wurde, können Sie dieses angepasste Image in einen privaten Katalog importieren.