Skip to main content

Volumes rozruchowe i nierozruchowe w NSIS

Każdy volume ma wskaźnik o nazwie bootable, który pokazuje, czy można z niego uruchomić system operacyjny. Wskaźnik ten można ustawić ręcznie w dowolnym momencie. Jeśli ustawisz go na volume, który nie zawiera bootowalnego systemu operacyjnego, a następnie spróbujesz uruchomić z niego maszynę wirtualną, w odpowiedzi zobaczysz błąd.

W tym artykule

  • wyjaśnimy praktyczne różnice między volume bootable i volume non-bootable oraz

  • przedstawimy procedury w Horizon i OpenStack CLI, aby sprawdzić, czy volume jest bootable, czy nie.

Volume bootable i non-bootable

Volume bootable i non-bootable mają następujące podobieństwa:

  • Przechowywanie danych: oba typy mogą przechowywać dane (niezależnie od tego, czy są bootable, czy nie).

  • Odporność: mogą zostać zachowane nawet po usunięciu instancji

  • Snapshots: umożliwiają tworzenie snapshots, które reprezentują stan volume w określonym momencie.

Ze snapshot można utworzyć dodatkowe volume, dzięki czemu volume działają zarówno jako środek do przechowywania danych, jak i ich przesyłania.

Bootable volume zazwyczaj służą jako dysk rozruchowy dla maszyny wirtualnej, podczas gdy non-bootable volume zazwyczaj działają tylko jako magazyn danych. Volume startowe mogą również zawierać dane, ale jedna część ich pojemności będzie przeznaczona na system operacyjny, który zawierają.

Z drugiej strony, non-bootable mogą

  • dodać więcej przestrzeni dyskowej do instancji (szczególnie w przypadku aplikacji, które wymagają dużej ilości danych) i

  • oddzielić dane od systemu operacyjnego, aby ułatwić tworzenie kopii zapasowych i zarządzać danymi.

Co będziemy omawiać

  • Jakie volume pojawiają się podczas tworzenia maszyny wirtualnej za pomocą Horizon dashboard?

  • Próba utworzenia maszyny wirtualnej z non-bootable volume przy użyciu interfejsu OpenStack CLI

  • Sprawdzanie, czy volume jest bootable

  • Sprawdzanie, czy volume snaphsot został utworzony z volume startowego

  • Modyfikowanie statusu bootable volume

  • Co się stanie, jeśli uruchomisz maszynę wirtualną z volume, który nie ma funkcjonalnego systemu operacyjnego?

Wymagania wstępne

Nr 1 Konto

Potrzebne jest konto hostingowe NSIS z dostępem do interfejsu Horizon: https://horizon.cloudferro.com.

Nr 2 Działający klient OpenStack CLI

Zakładamy, że jesteś zaznajomiony z klientem OpenStack CLI. Jeśli nie, oto kilka artykułów, które pomogą ci zacząć:

Po zainstalowaniu tego oprogramowania należy się uwierzytelnić, aby zacząć z niego korzystać: Jak aktywować dostęp OpenStack CLI do chmury NSIS przy użyciu uwierzytelniania dwuskładnikowego.

Nr 3 Znajomość procesu tworzenia maszyn wirtualnych w ramach OpenStack

Podczas tworzenia nowej maszyny wirtualnej w środowisku OpenStack można zdecydować, jakiej pamięci masowej ma ona używać do uruchamiania systemu operacyjnego. Oto niektóre z dostępnych opcji:

Artykuł Jak utworzyć nową maszynę wirtualną Linux w OpenStack Dashboard Horizon na NSIS Cloud pokazuje ogólną procedurę tworzenia maszyny wirtualnej, podczas gdy artykuły Maszyna wirtualna utworzona z opcją Create New Volume ustawioną na Yes na NSIS Cloud i Maszyna wirtualna utworzona z opcją Create New Volume ustawioną na No na NSIS Cloud omawiają różne opcje związane z wolumenami.

Jeśli utworzysz maszynę wirtualną z opcją Create new volume ustawioną na Yes, volume startowy zostanie dodany do listy twoich volume.

Jakie volume pojawiają się podczas tworzenia maszyny wirtualnej za pomocą Horizon dashboard?

Podczas tworzenia maszyny wirtualnej za pomocą pulpitu nawigacyjnego Horizon wyświetlane są tylko volume startowe.

Załóżmy, że mamy dwa volume o nazwach pierwszy volume i drugi volume i powiedzmy, że pierwszy z nich jest non-bootable , podczas gdy drugi, drugi volume, jest bootable.

Tak wyglądają one na pulpicie nawigacyjnym Horizon:

../_images/bootable-versus-nonbootable-volume-21_creodias.png

Podczas tworzenia instancji, jeśli wybierzemy Volume z rozwijanego menu Select Boot Source, tylko drugi volume będzie widoczny, ponieważ jest on bootable.

../_images/bootable-versus-nonbootable-volume-22_creodias.png

Próba utworzenia maszyny wirtualnej z non-bootable volume przy użyciu interfejsu OpenStack CLI

Klient OpenStack CLI zablokuje również próbę utworzenia instancji z volume nie dającego się uruchomić. Jeśli tak się stanie, zwróci komunikat podobny do tego:

Block Device cf3143bf-d227-4fa3-9224-c078f1ebdbad is not bootable. (HTTP 400) (Request-ID: req-d15e8fd6-028f-4d6b-904f-32dc78ccc3ad)

Sprawdzanie, czy volume jest bootable

Sprawdzanie, czy volume jest bootable przy użyciu pulpitu nawigacyjnego Horizon

Przejdź do Volumes -> Volumes na pulpicie nawigacyjnym Horizon. Powinieneś zobaczyć listę swoich volume:

../_images/bootable-versus-nonbootable-volume-09_creodias.png

Na tym ekranie, w wierszu zawierającym volume, który chcesz zmodyfikować, sprawdź wartość kolumny Bootable. Na powyższym zrzucie ekranu status bootable dla volume my-volume został podświetlony niebieskim prostokątem. Pokazuje to, że ten volume jest rzeczywiście bootable.

Sprawdzanie, czy volume jest bootable przy użyciu klienta OpenStack CLI

Wykonaj następujące polecenie, aby wyświetlić listę volume:

openstack volume list

Powinieneś otrzymać wynik podobny do tego:

../_images/bootable-versus-nonbootable-volume-16_creodias.png

Zawiera informacje o volume, takie jak ich identyfikatory, nazwy i rozmiary. Aby sprawdzić, czy volume jest bootable, wykonaj poniższe polecenie:

openstack volume show -c bootable <<volume_id>>

Powinna pojawić się informacja, czy volume jest bootable:

../_images/bootable-versus-nonbootable-volume-07_creodias.png

Sprawdzanie, czy volume snapshot został utworzony z bootable volume

Jeśli chcesz utworzyć maszynę wirtualną z volume snapshot, upewnij się, że volume, z którego został utworzony volume snapshot, jest bootable.

Sprawdzanie, czy volume snapshot został utworzony z bootable volume przy użyciu pulpitu nawigacyjnego Horizon

Przejdź do sekcji Volume -> Snapshots na pulpicie nawigacyjnym Horizon. Powinna zostać wyświetlona lista volume snapshot:

../_images/bootable-versus-nonbootable-volume-01_creodias.png

Kliknij nazwę volume snapshot, z którego chcesz utworzyć maszynę wirtualną:

../_images/bootable-versus-nonbootable-volume-02_creodias.png

Powinny zostać wyświetlone informacje o volume snapshot. Kliknij nazwę volume, z którego został utworzony snapshot:

../_images/bootable-versus-nonbootable-volume-03_creodias.png

W sekcji Specs sprawdź wartość o nazwie Bootable. Tutaj jest ona podświetlona czerwonym prostokątem:

../_images/bootable-versus-nonbootable-volume-04_creodias.png

Sprawdzanie, czy volume snapshot został utworzony z bootable volume przy użyciu klienta OpenStack CLI

Wykonaj następujące polecenie, aby wyświetlić listę volume snapshot:

openstack volume snapshot list

Pojawi się lista volume snapshot, podobna do tej:

../_images/bootable-versus-nonbootable-volume-05_creodias.png

Aby zobaczyć konkretne dane o volume, wykonaj to polecenie:

openstack volume snapshot show <<volume_snapshot_id>>

i zastąp <<volume_snapshot_id>> identyfikatorem volume, który chcesz utworzyć.

W tym przykładzie ten identyfikator to cd101818-d690-4905-8b4c-465d868cc07f. W związku z tym tak wyglądałoby wyświetlanie większej ilości informacji o tym volume:

../_images/bootable-versus-nonbootable-volume-06_creodias.png

Pole volume_id zawiera identyfikator volume, z którego został utworzony volume snapshot. Poniższe polecenie dostarczy informacji o tym volume (zastąp <<volume_id>> tym identyfikatorem woluminu):

openstack volume show -c bootable <<volume_id>>

Powinna pojawić się informacja, czy volume jest bootable:

../_images/bootable-versus-nonbootable-volume-07_creodias.png

Modyfikowanie statusu bootable volume

Modyfikowanie stanu rozruchowego volume przy użyciu pulpitu nawigacyjnego Horizon

Wykonaj czynności opisane w sekcji Sprawdzanie, czy volume jest bootable, metoda Korzystanie z pulpitu nawigacyjnego Horizon - uzyskaj dostęp do listy volume w pulpicie nawigacyjnym Horizon.

Jeśli chcesz zmienić status rozruchowy volume, przejdź do wiersza zawierającego informacje o tym volume. Następnie w kolumnie Actions wybierz Edit Volume:

../_images/bootable-versus-nonbootable-volume-10_creodias.png

Powinno zostać wyświetlone następujące okno:

../_images/bootable-versus-nonbootable-volume-11_creodias.png

Aby zmienić status bootable, wystarczy zaznaczyć lub odznaczyć (w zależności od tego, co chcemy osiągnąć) pole wyboru Bootable i kliknąć Submit.

W powyższym przykładzie volume o nazwie my-volume miał włączony status bootable. Jeśli chcemy go wyłączyć, możemy odznaczyć pole wyboru Bootable:

../_images/bootable-versus-nonbootable-volume-12_creodias.png

i kliknij Submit.

Następujący komunikat powinien pojawić się w prawym górnym rogu pulpitu nawigacyjnego Horizon:

../_images/bootable-versus-nonbootable-volume-13_creodias.png

Wartość kolumny Bootable również powinna ulec zmianie:

../_images/bootable-versus-nonbootable-volume-14_creodias.png

Modyfikowanie statusu rozruchowego volume przy użyciu klienta OpenStack CLI

Uzyskaj identyfikator i status rozruchowy volume, który chcesz zmodyfikować, postępując zgodnie z sekcją Sprawdzanie, czy volume jest bootable, metoda Użycie klienta OpenStack CLI.

Z non-bootable do bootable

Jeśli twój volume jest obecnie non-bootable i chcesz go zmienić na bootable, wykonaj poniższe polecenie. Zastąp w nim <<volume_id>> identyfikatorem volume, który chcesz zmodyfikować:

openstack volume set --bootable <<volume_id>>

Jeśli polecenie powiodło się, dane wyjściowe powinny być puste. Możesz teraz ponownie sprawdzić status volume, jak wyjaśniono w sekcji Sprawdzanie, czy volume jest bootowalny.

Z bootable do non-bootable

Z drugiej strony, jeśli twój volume jest obecnie bootable i chcesz uczynić go non-bootable, wykonaj poniższe polecenie. Zastąp <<volume_id>> identyfikatorem volume, który chcesz zmodyfikować:

openstack volume set --non-bootable  <<volume_id>>

Jeśli polecenie powiodło się, dane wyjściowe powinny być puste. Możesz teraz ponownie sprawdzić status volume, jak wyjaśniono w sekcji Sprawdzanie, czy volume jest bootable.

Co się stanie, jeśli uruchomisz maszynę wirtualną z volume, który nie ma funkcjonalnego systemu operacyjnego?

Technicznie możliwe jest uruchomienie maszyny wirtualnej z volume, który ma status ustawiony na bootable, ale nie zawiera systemu operacyjnego, który można uruchomić.

W takim przypadku maszyna wirtualna powinna zostać uruchomiona, ale jej BIOS nie wykryje możliwego do uruchomienia systemu operacyjnego. W konsoli sieciowej powinieneś zobaczyć, że BIOS wyświetla odpowiedni komunikat, podobny do tego:

../_images/bootable-versus-nonbootable-volume-08_creodias.png