Instanzspeicher verwalten
Der Instanzspeicher bietet schnellen und kosteneffizienten temporären Speicher zur Verbesserung der Leistungswerte für bestimmte cloudnative Workloads (bzw. Apps oder Services). Weitere Informationen finden Sie unter Informationen zum Instanzspeicher.
Um eine Instanzspeicherplatte mit Ihrer virtuellen Serverinstanz bereitzustellen, wählen Sie ein Profil aus, das Instanzspeicher enthält. Die Instanzspeicher-Festplattengeräte können nicht live angeschlossen oder getrennt werden, da sie als Teil des Instanzprofils selbst erworben wurden. Die allgemeinen Profilfamilien (Balanced, Compute und Memory) und einige spezielle Profilfamilien (Very High Memory und Storage Optimized) verfügen alle über Profiloptionen mit Instanzspeicher. Alle Instanzprofile der 3. Generation enthalten Instanzspeicher. Weitere Informationen finden Sie unter Instanzprofile der 3. Generation. Die Menge des Instanzspeichers ist proportional auf die Anzahl der zugeordneten vCPUs des Profils abgestimmt. Weitere Informationen über Profile finden Sie unter x86-64 instance profiles.
Bereitstellen einer virtuellen Serverinstanz mit Instanzspeicher in der Konsole
Bevor Sie eine virtuelle Serverinstanz mit Instanzspeicher erstellen, müssen Sie IBM Cloud VPCerstellen.
Führen Sie die folgenden Schritte aus,um eine Virtual Server-Instanz mit Instanzspeicher bereitzustellen:
- Gehen Sie in der Konsole IBM Cloud auf Navigation - Menü- Symbol
> Infrastruktur
> Compute > Virtuelle Serverinstanzen.
- Klicken Sie auf der Seite „Virtuelle Serverinstanzen für VPC“ auf „Erstellen“ und geben Sie die erforderlichen Informationen ein. Weitere Informationen zu bestimmten Feldern finden Sie unter Virtuelle Server erstellen.
- Um Ihr Instanzspeicherprofil auszuwählen, klicken Sie auf „ Alle Profile anzeigen “. Alle ox2-Profile und -Profile mit dem Buchstaben "d" an der vierten Position des Profilnamens enthalten Instanzspeicher. Beispiele für Profile mit Instanzspeicher sind bx2d-2x8 und ox2-2x16. Verwenden Sie die Kontrollkästchen, um die Liste zu filtern. Eine Liste der Instanzprofile finden Sie unter x86-64-Instanzprofile.
- Wählen Sie das Profil aus, das Sie verwenden möchten, und klicken Sie auf Speichern. Die Instanzspeicherplatten werden der Virtual Server-Instanz nach dem Bootdatenträger und vor den remote angeschlossenen Blockspeicherdatenträgern (falls vorhanden) zugeordnet.
- Wenn Ihre Instanz für die Bereitstellung vorbereitet ist, klicken Sie auf Virtual Server-Instanz erstellen.
Nächste Schritte
Nachdem die Instanz erstellt wurde, ordnen Sie der Instanz eine variable IP-Adresse zu. Anschließend können Sie eine Verbindung zu Ihrer Instanz herstellen. Weitere Informationen finden Sie unter Verbindung zu Linux-Instanz herstellen oder Verbindung zu Windows-Instanz herstellen. Wenn Sie über eine Instanz mit variabler IP-Adresse verfügen, ist es nicht erforderlich, eine zweite variable IP einer anderen Instanz zuzuweisen. Sie können eine Verbindung zur ersten Instanz mit variabler IP-Adresse herstellen und dann über SSH eine Verbindung zur zweiten Instanz unter Verwendung der privaten Teilnetz-IP-Adresse herstellen, die der Instanz automatisch zugeordnet wird.
Bereitstellen einer virtuellen Serverinstanz mit Instanzspeicher über die CLI
Um eine virtuelle Serverinstanz mit Instanzspeicher bereitzustellen, befolgen Sie die Anweisungen unter Virtuelle Server über die Befehlszeilenschnittstelle erstellen. Wählen Sie ein Profil aus, das eine Instanzspeicherplatte enthält. Weitere Informationen zu Profilen finden Sie unter Instanzprofile.
Virtual Server-Instanz mit Instanzspeicher mithilfe der API bereitstellen
Um eine virtuelle Serverinstanz mit Instanzspeicher bereitzustellen, befolgen Sie die Anweisungen unter REST-APIs zum Erstellen von VPC-Ressourcen verwenden. Wählen Sie ein Profil aus, das eine Instanzspeicherplatte enthält. Weitere Informationen zu Profilen finden Sie unter Instanzprofile.
Die API (oder CLI) ist nützlich, um den Schnittstellentyp zu bestimmen, der zum Zuordnen der Instanzspeicherplatten verwendet wird. Das Instanzobjekt, das von einer Erstellungsoperation (oder get) zurückgegeben wird, meldet die Instanzplatten
im Array disks, wie in der folgenden Beispielteilausgabe dargestellt.
"disks": [
{
"created_at": "2022-04-19T17:13:28Z",
"href": "https://sample-region.iaas.cloud.ibm.com/v1/instances/vsi_aba03916-8804-46ae-9275-b7dc196e94b3/disks/c4e4d137-a44f-47b8-beb0-a22dc8f8c6ea",
"id": "c4e4d137-a44f-47b8-beb0-a22dc8f8c6ea",
"interface_type": "virtio_blk",
"name": "babbling-drove-grove-catnap",
"resource_type": "instance_disk",
"size": 600
}]
Dieses Beispiel zeigt den Schnittstellentyp virtio_blk.
Angepasste Images mit Instanzspeicherplatte verwenden
Wenn Sie angepasste Images verwenden, stellen Sie sicher, dass im Image die richtigen Einheitentreiber für die Verwendung der Platten geladen werden.
Wenn Ihre Instanzspeichereinheit den Schnittstellentyp virtio_blk aufweist, muss der Treiber libvirt virtio installiert sein. Der libvirt virtio Treiber wird automatisch mit allen IBM bereitgestellten Betriebssystemen
installiert. Alle allgemeinen Profile mit Instanzspeicher bieten nur virtio_blk-Verbindungen.
Instanzspeicher über Ihre Instanz verwenden
Blockeinheiten in Ihrer Instanz auflisten
Nach der Anmeldung bei Ihrer Instanz können Sie mit dem lsblk Befehl die Linux® Blockgeräte auflisten. Im folgenden Beispiel verfügt die bereitgestellte Instanz über zwei Instanzplatten mit je 600 GB und über zwei Datenträger
mit je 50 GiB. Eine Liste benutzerdefinierter Spalten wird für den lsblk Befehl angegeben, um einige Unterschiede zwischen Instanzspeicher und Remote Block Storage hervorzuheben.
Instanzfestplatten werden in Gigabyte (GB) gemessen, aber lsblk zeigt die Größe in Gibibyte ( GiB ) an.
$ lsblk -o NAME,SIZE,MAJ:MIN,TYPE,PHY-SEC,LOG-SEC,MOUNTPOINT
NAME SIZE MAJ:MIN TYPE PHY-SEC LOG-SEC MOUNTPOINT
vda 100G 252:0 disk 512 512
├─vda1 1G 252:1 part 512 512 /boot
└─vda2 99G 252:2 part 512 512
├─cl-root 97G 253:0 lvm 512 512 /
└─cl-swap 2.1G 253:1 lvm 512 512
vdb 558.8G 252:16 disk 4096 4096
vdc 558.8G 252:32 disk 4096 4096
vdd 50G 252:48 disk 512 512
vde 50G 252:64 disk 512 512
vdf 366K 252:80 disk 512 512
vdg 44K 252:96 disk 512 512
In diesem Beispiel sind alle Geräte Block Storagevirtio_blk Geräte:
vdaist das Startvolume.vdbundvdcsind die 600-GB-Instanzspeicherfestplatten. Unter Linux®folgen Instanzspeicherplatten dem Bootdatenträger mit dem ersten Datenträger/dev/vdb. Da der Befehl lsblk „G“-Einheiten als base-2 Gibibyte anzeigt, wird die Größe als 558.8GiBs angezeigt. Die Spaltenwerte für die Sektorgröße können je nach Betriebssystem oder Profilgenerierung unterschiedlich sein. Beispielsweise könnenx3d-Instanzprofilfamilien mit einer Sektorgröße von 512 Byte für lokale Platten bereitstellen.vddundvdesind Remote-Datenvolumes, die an die Instanz angehängt sind. Da diese Datenmengen in denselben Einheiten angefordert werden, wielsblksie angezeigt werden, bleibt ihre Größe unverändert GiBs (50).vdfundvdgsind kleine Blockvolumes, die für die Cloud-Init-Konfiguration der Instanz verwendet werden.
Verwenden des Metadatenservice zum Auflisten von Instanzspeicher
Der Metadatenservice kann innerhalb der Instanz verwendet werden, um Informationen zur Instanz abzurufen, einschließlich Instanzspeicherplatten. Zum Abrufen von Metadateninformationen muss die Metadatenservicefunktionalität aktiviert werden, wenn die Instanz bereitgestellt wird oder indem die Instanz später aktualisiert wird. Weitere Informationen zum Aktivieren und Verwenden von Prozeduren finden Sie unter Auf Metadaten aus einer Instanz zugreifen.
Wenn Sie eine Instanz mit aktiviertem Metadatenservice haben, zeigen die folgenden Schritte ein Beispiel für die Verwendung von Instanzspeichermetadaten aus einem virtuellen Linux-Server.
-
Rufen Sie ein kurzlebige Instanzidentitätstoken ab.
instance_identity_token=`curl -X PUT "http://api.metadata.cloud.ibm.com/instance_identity/v1/token?version=2022-03-01" -H "Metadata-Flavor: ibm" -H "Accept: application/json" -d '{ "expires_in": 300}' | jq -r '(.access_token)'`Verwenden Sie HTTPS anstelle von, HTTP wenn der Endpunkt für den sicheren Metadatendienst aktiviert ist. Möglicherweise müssen Sie die Pakete
curloderjqinstallieren, bevor Sie den Befehl curl ausführen.jqist ein Drittanbieter-Tool, das unter der MIT-Lizenz steht. -
Verwenden Sie das Token, um Instanzmetadaten abzurufen, wählen Sie den Abschnitt
disksaus und speichern Sie die JSON in einer Bash-Variablen.disks=$(curl -sS -X GET "http://api.metadata.cloud.ibm.com/metadata/v1/instance?version=2024-02-20" -H "Authorization: Bearer $instance_identity_token" | jq -r '.disks') -
Führen Sie eine Schleife über
virtio-Einheiten in/dev/disk/by-idaus und korrelieren Sie Einheitenpfade mit den im vorherigen Schritt gespeicherten Instanzplatteninformationen.for ln in $(ls /dev/disk/by-id/virtio*); do b=$(basename $ln); s=${b#virtio-}; disk=$(echo $disks | jq -r ".[] | select(.id | startswith(\"$s\"))"); if [ -n "$disk" ]; then echo "$ln $(readlink -f $ln) $(echo $disk | jq -r '(.size|tostring) + " " + .name')";fi;done
Im Folgenden sehen Sie eine Beispielausgabe des vorherigen Befehls, bei dem die Spaltenreihenfolge (1) nach ID-Pfad, (2) symlink-Einheitenziel, (3) Größe in GB und (4) den Cloud-UI/CLI/API-Plattennamen lautet:
/dev/disk/by-id/virtio-0736-35db69bb-d09b-4 /dev/vdc 600 palmtree-vacuumed-judiciary-wharf
/dev/disk/by-id/virtio-0736-874803ac-2593-4 /dev/vdb 600 lunacy-dismantle-dotted-fiddling
In diesem Fall sind die Plattennamen die zufällig generierten Namen mit vier Wörtern, aber diese können so bearbeitet werden, dass sie benutzerdefinierte Namen enthalten. Weitere Informationen finden Sie unter Standardnamen aktualisieren.
Instanzspeicherplatten partitionieren, formatieren und anhängen
Die Instanzspeicherplatten können auf die gleiche Art partitioniert, mit einem Dateisystem formatiert und an ein hierarchisches Dateisystem angehängt werden wie die remote angeschlossenen Blockdatenträger.
- Anweisungen für Linux®finden Sie unter Block Storage for VPC-Datenträger zur Verwendung einrichten(Linux) oder Konfigurieren eines Speichers mit einer einzelnen Platteninstanz mithilfe des Cloud-Konfigurationsscripts.
- Unter Windows® verwenden Sie die Benutzeroberfläche „Computerverwaltung“, um ein Blockvolume online zu schalten, zu partitionieren und zu formatieren. Weitere Informationen finden Sie unter Block Storage for VPC-Datenträger für die Verwendung einrichten(Windows).
Das folgende lsblk-Beispiel zeigt die Ausgabe nach der Anmeldung bei einer bx3d-48x240-Instanz und der Partitionierung vdc in zwei primäre Partitionen, wobei sie mit separaten Dateisystemen formatiert
und angehängt werden. Der Befehl grep mit regulärem Ausdruck wird verwendet, um die Ausgabe auf die vdb- und vdc-Geräte zu beschränken, die über den Metadatendienst bezogen werden (siehe vorheriger Abschnitt).
$ lsblk | grep -E "NAME|vd[b|c]"
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS
vdb 252:16 0 726.4G 0 disk
vdc 252:32 0 726.4G 0 disk
├─vdc1 252:33 0 200G 0 part /mnt/localdisk1
└─vdc2 252:34 0 526.4G 0 part /mnt/localdisk2
Aufgrund der Kurzlebigkeit des Instanzspeichers sollten Sie den Mount-Eintrag in der Datei Linux® /etc/fstab der VM mit der nofail Option konfigurieren oder den Mount-Eintrag ganz weglassen. Durch diese Einstellung
wird ein Mountfehler beim Booten vermieden.
Das folgende Beispiel zeigt einen Mounteintrag mit der Option nofail.
/dev/vdb1 /mnt/inststg1 ext4 defaults,nofail 0 0
Instanzspeicherdetails eines Instanzprofils suchen
Suchen Sie in der Web-Benutzeroberfläche oder der CLI nach der Spalte „Instanzspeicher“, wenn Sie Instanzprofile filtern. Sie kann Storage(GB) heißen.
Die folgenden Beispiele zeigen mögliche Spaltenwerte und ihre Bedeutung:
- 1 x 150 GB – Eine einzelne Blockeinheit mit 150 GB wird der Virtual Server-Instanz als Instanzspeicher zugeordnet.
- 2 x 600 GB – Zwei Instanzspeicher-Blockgeräte mit jeweils 600 GB (insgesamt 1200 GB) sind angeschlossen.
In einigen Kontexten wird möglicherweise ein Schnittstellentyp (in der Regel virtio_blk) für ein Instanzprofil oder für eine angehängte Instanzfestplatte angezeigt. Das folgende Beispiel zeigt Details, die von der Befehlszeilenschnittstelle
für ein bestimmtes Instanzprofil abgerufen wurden.
ibmcloud is in-pr bx2d-48x192
Getting instance profile bx2d-48x192 under account YYYYYY as user vpc-user@myco.com...
Name bx2d-48x192
Architecture amd64
vCPU Manufacturer intel
Family balanced
vCPUs 48
Memory(GiB) 192
GPU Model Manufacturer Count Memory(GiB)
- - - -
Numa Count -
Bandwidth(Mbps) 80000
Volume bandwidth(Mbps) -
Instance Storage Disks Quantity Size Supported interface types
2 900 virtio_blk
Min NIC Count 1
Max NIC Count 10
Instanzspeicherinformationen melden
Im folgenden CLI-Beispiel werden Instanzspeicherinformationen für Ihre Virtual Server-Instanz gemeldet. Ersetzen Sie Ihre eigene Instanz-ID oder Ihren Namen.
ibmcloud is instance-disks 0716_f8c0fd3b-cada-46c3-91f6-c271937ef488
Listing disks of instance 0716_f8c0fd3b-cada-46c3-91f6-c271937ef488 under account YYYYYY as user vpc-user@myco.com...
ID Name Size Interface Type
0716-6ebed02f-c421-4b06-a73b-f334413e84b3 clunky-refocus-tidings-underpaid 600 virtio_blk
0716-54ee0659-d92a-4d4c-ac6b-8f03cb178a07 linguini-epiphany-lush-preschool 600 virtio_blk
Einen Standardnamen aktualisieren
Sie können die benutzerdefinierten Namen der Instanzspeicherfestplatten mit dem folgenden CLI-Befehl aktualisieren. Ersetzen Sie die letzten beiden Parameter durch Ihre eigene Instanz-ID und Platten-ID.
ibmcloud is instance-disk-update 0716_f8c0fd3b-cada-46c3-91f6-c271937ef488 0716-6ebed02f-c421-4b06-a73b-f334413e84b3 --name my-instance-disk1
Updating instance disk 0716-6ebed02f-c421-4b06-a73b-f334413e84b3 of instance 0716_f8c0fd3b-cada-46c3-91f6-c271937ef488 under account YYYYYY as user vpc-user@myco.com...
ID 0716-6ebed02f-c421-4b06-a73b-f334413e84b3
Name my-instance-disk1
Size 600
Interface Type virtio_blk
Created 2020-10-29T22:57:15-05:00
$ ibmcloud is instance-disks 0716_f8c0fd3b-cada-46c3-91f6-c271937ef488
Listing disks of instance 0716_f8c0fd3b-cada-46c3-91f6-c271937ef488 under account YYYYYY as user vpc-user@myco.com...
ID Name Size Interface Type
0716-6ebed02f-c421-4b06-a73b-f334413e84b3 my-instance-disk1 600 virtio_blk
0716-54ee0659-d92a-4d4c-ac6b-8f03cb178a07 linguini-epiphany-lush-preschool 600 virtio_blk