Als Cloud-Administrator gehört das Ändern der Größe oder das Ändern der Ressourcen einer Instanz oder virtuellen Maschine zu den häufigsten Aufgaben.
In der Openstack-Umgebung gibt es einige Szenarien, in denen Cloud-Benutzer eine VM mit einer Variante (wie m1.smalll) drehen, bei der die Größe der Root-Partitionsfestplatte 20 GB beträgt, der Benutzer jedoch zu einem bestimmten Zeitpunkt die Größe der Root-Partition auf 40 GB erweitern möchte . Die Größenänderung der Root-Partition von VM kann also mithilfe der Option „resize“ im Befehl „nova“ durchgeführt werden. Während der Größenänderung müssen wir den neuen Flavor angeben, der eine Festplattengröße von 40 GB enthält.
Hinweis: Sobald Sie die Instanzressourcen wie RAM, CPU und Festplatte mit der Größenänderungsoption in Openstack erweitert haben, können Sie sie nicht mehr reduzieren.
Weiterlesen auf :So erstellen und löschen Sie eine virtuelle Maschine (VM) über die Befehlszeile in OpenStack
In diesem Tutorial werde ich zeigen, wie Sie die Größe einer Openstack-Instanz von der Befehlszeile aus ändern. Nehmen wir an, ich habe eine vorhandene Instanz mit dem Namen „test_resize_vm “ und der zugehörige Flavor ist „m1.small“ und die Festplattengröße der Root-Partition beträgt 20 GB.
Führen Sie den folgenden Befehl vom Controller-Knoten aus, um zu überprüfen, auf welchem Compute-Host unsere VM „test_resize_vm“ bereitgestellt wird, und ihre Geschmacksdetails
:~# openstack server show test_resize_vm | grep -E "flavor|hypervisor" | OS-EXT-SRV-ATTR:hypervisor_hostname | compute-57 | | flavor | m1.small (2) | :~#
Melden Sie sich auch bei der VM an und überprüfen Sie die Größe der Root-Partition,
[[email protected] ~]# df -Th Filesystem Type Size Used Avail Use% Mounted on /dev/vda1 xfs 20G 885M 20G 5% / devtmpfs devtmpfs 900M 0 900M 0% /dev tmpfs tmpfs 920M 0 920M 0% /dev/shm tmpfs tmpfs 920M 8.4M 912M 1% /run tmpfs tmpfs 920M 0 920M 0% /sys/fs/cgroup tmpfs tmpfs 184M 0 184M 0% /run/user/1000 [[email protected] ~]# echo "test file for resize operation" > demofile [[email protected] ~]# cat demofile test file for resize operation [[email protected] ~]#
Holen Sie sich die verfügbare Geschmacksliste mit dem folgenden Befehl,
:~# openstack flavor list +--------------------------------------+-----------------+-------+------+-----------+-------+-----------+ | ID | Name | RAM | Disk | Ephemeral | VCPUs | Is Public | +--------------------------------------+-----------------+-------+------+-----------+-------+-----------+ | 2 | m1.small | 2048 | 20 | 0 | 1 | True | | 3 | m1.medium | 4096 | 40 | 0 | 2 | True | | 4 | m1.large | 8192 | 80 | 0 | 4 | True | | 5 | m1.xlarge | 16384 | 160 | 0 | 8 | True | +--------------------------------------+-----------------+-------+------+-----------+-------+-----------+
Wir werden also die Variante „m1.medium“ für die Größenänderung verwenden. Führen Sie den folgenden nova-Befehl aus, um die Größe von „test_resize_vm“ zu ändern,
Syntax:# nova resize {VM_Name} {flavor_id} —poll
:~# nova resize test_resize_vm 3 --poll Server resizing... 100% complete Finished :~#
Bestätigen Sie nun die Größenänderung mit „openstack server –confirm“ Befehl,
~# openstack server list | grep -i test_resize_vm | 1d56f37f-94bd-4eef-9ff7-3dccb4682ce0 | test_resize_vm | VERIFY_RESIZE |private-net=10.20.10.51 | :~#
Wie wir in der obigen Befehlsausgabe sehen können, lautet der aktuelle Status der VM „verify_resize “, führen Sie den folgenden Befehl aus, um die Größenänderung zu bestätigen,
~# openstack server resize --confirm 1d56f37f-94bd-4eef-9ff7-3dccb4682ce0 ~#
Nach der Bestätigung der Größenänderung wird der Status der VM aktiv, überprüfen Sie jetzt erneut Hypervisor- und Flavor-Details für die VM
:~# openstack server show test_resize_vm | grep -E "flavor|hypervisor" | OS-EXT-SRV-ATTR:hypervisor_hostname | compute-58 | | flavor | m1.medium (3)|
Melden Sie sich jetzt bei Ihrer VM an und überprüfen Sie die Größe der Root-Partition
[[email protected] ~]# df -Th Filesystem Type Size Used Avail Use% Mounted on /dev/vda1 xfs 40G 887M 40G 3% / devtmpfs devtmpfs 1.9G 0 1.9G 0% /dev tmpfs tmpfs 1.9G 0 1.9G 0% /dev/shm tmpfs tmpfs 1.9G 8.4M 1.9G 1% /run tmpfs tmpfs 1.9G 0 1.9G 0% /sys/fs/cgroup tmpfs tmpfs 380M 0 380M 0% /run/user/1000 [[email protected] ~]# cat demofile test file for resize operation [[email protected] ~]#
Dies bestätigt, dass die Größe der VM-Stammpartition erfolgreich geändert wurde.
Hinweis: Wenn die Größenänderung aus irgendeinem Grund nicht erfolgreich war und Sie die VM auf den vorherigen Zustand zurücksetzen möchten, führen Sie den folgenden Befehl aus:
# openstack server resize --revert {instance_uuid}
Wenn Sie „openstack server show“ bemerkt haben ” Befehlsausgabe wird die VM nach der Größenänderung von compute-57 zu compute-58 migriert. Dies ist das Standardverhalten des Befehls „nova resize“ (d. h. der Befehl „nova resize“ migriert die Instanz zu einem anderen Computer und ändert dann die Größe basierend auf den Geschmacksdetails)
Falls Sie nur einen Rechenknoten haben, funktioniert nova resize nicht, aber wir können es zum Laufen bringen, indem wir den folgenden Parameter in der nova.conf-Datei auf dem Rechenknoten ändern,
Melden Sie sich beim Rechenknoten an, überprüfen Sie den Parameterwert
[[email protected] ~]# grep -i resize /etc/nova/nova.conf allow_resize_to_same_host = True [[email protected]tack-linuxtechi ~]#
Wenn „allow_resize_to_same_host “ auf „False“ gesetzt ist, dann ändern Sie es auf „True“ und starten Sie den Nova-Compute-Service neu.
Weiterlesen auf OpenStack-Bereitstellung mit Devstack auf CentOS 7 / RHEL 7-System
Das ist alles aus diesem Tutorial. Falls es Ihnen technisch weiterhilft, teilen Sie uns bitte Ihr Feedback und Ihre Kommentare mit.