Jak utworzyć instance snapshot przy użyciu Horizon na NSIS Cloud
W tym artykule dowiesz się, jak utworzyć instance snapshot na chmurze NSIS Cloud, używając dashboardu Horizon.
Instance snapshot pozwalają archiwizować stan maszyny wirtualnej. Następnie można je wykorzystać do:
tworzenia kopii zapasowych,
migracji między chmurami,
odzyskiwania po awarii oraz
klonowania środowisk do testowania lub rozwoju.
Są dostępne dwa typy storage dla instancji, ephemeral i persistent.
Plan
W rzeczywistości będziesz używał procedur opisanych w tym artykule z już istniejącymi instancjami.
Jednak aby uzyskać jasne zrozumienie procesu, podczas przeglądania tego artykułu utworzysz dwie nowe instancje, jedną z ephemeral i drugą z persistent typem storage. Nazwij je instance-which-uses-ephemeral i instance-which-uses-volume. Utworzysz instance snapshot dla każdej z nich.
Jeśli interesuje cię tylko jeden z tych typów instancji, możesz przeczytać odpowiednią sekcję tego tekstu.
Jasne jest, że po przeczytaniu sekcji o jednym typie maszyny wirtualnej możesz usunąć zasoby, które utworzyłeś, aby na przykład zaoszczędzić koszty.
Możesz też je zachować i wykorzystać do utworzenia instancji przy użyciu jednego z artykułów wymienionych w Co można zrobić dalej.
Co obejmuje ten artykuł
Utwórz instance snapshot, która używa storage ephemeral
Przejdź do listy instancji w Horizon
Wyłącz maszynę wirtualną
Utwórz snapshot
Pokaż, co zawiera snapshot dla storage ephemeral
Utwórz instance snapshot, która używa storage persistent
Przejdź do listy instancji w Horizon
Wyłącz maszynę wirtualną
Utwórz snapshot
Co robi utworzenie instance snapshot ze storage persistent?
Przegląd instance snapshot i volume snapshot, które zostały utworzone wraz z nią
Co się dzieje, kiedy istnieje wiele volume?
Pobieranie instance snapshot
Wymagania wstępne
Nr 1 Konto
Potrzebujesz konta hostingowego NSIS Cloud z dostępem do dashboardu Horizon: https://horizon.cloudferro.com.
Nr 2 Storage ephemeral vs. Storage persistent
Zobacz artykuł Opcja pamięci masowej efemerycznej i trwałej - Utwórz nowy volume w NSIS, aby zrozumieć podstawową różnicę między storage ephemeral a storage persistent w OpenStack.
Nr 3 Instancja ze storage ephemeral
Potrzebujesz maszyny wirtualnej hostowanej na chmurze NSIS Cloud.
Korzystając z któregokolwiek z następujących artykułów, utworzysz instancję ze storage ephemeral:
Ze storage ephemeral, tworzona jest tylko jedna nowa instancja. Jest to uruchomiona instancja.
Nr 4 Instancja ze storage persistent
Podczas tworzenia instancji ze storage persistent, wszystkie kroki w artykułach z Wymagania wstępnego Nr 3 są takie same, z wyjątkiem jednego: ustawiasz opcję Create New Volume na Yes. Szczegóły znajdziesz w: Opcja pamięci masowej efemerycznej i trwałej - Utwórz nowy volume w NSIS.
Ze storage persistent, tworzone są instancja i volume:
specjalny rodzaj instancji (bez storage ephemeral) oraz
volume, który jest dołączony do tej instancji.
Instancja będzie uruchamiana z volume, który został dołączony podczas tworzenia instancji.
W przeciwnym razie, instancja może mieć dwa lub więcej volume dołączonych do niej, jednak tylko jeden z nich będzie jej startowym volume.
Nr 5 Jak usunąć zasoby
Jeśli chcesz usunąć instancje, snapshot, volume i inne obiekty OpenStack, zobacz następujące artykuły:
Jak poprawnie usunąć wszystkie zasoby projektu za pomocą klientów wiersza poleceń OpenStack na NSIS.
Tworzenie instance snapshot, który używa storage ephemeral
Wykonaj Wymaganie wstępne numer 3 i utwórz instancję o nazwie instance-which-uses-ephemeral.
Przejdź do listy instancji w Horizon
Przejdź do sekcji Compute -> Instances dashboardu Horizon i zobacz listę swoich instancji.
Wyłącz maszynę wirtualną
Pierwszym krokiem podczas tworzenia snapshot jest wyłączenie maszyny wirtualnej. Najlepszą metodą jest użycie funkcji jej systemu operacyjnego. Jeśli, jak tutaj, obrazem używanym był Ubuntu 22.04. LTS, można było użyć konsoli Horizon lub dostępu SSH, aby wykonać polecenie takie jak
sudo shutdown now
Istnieje wiele takich poleceń i będą one zależały od rodzaju obrazu użytego, więc dalsze wyjaśnienia są poza zakresem tego artykułu.
Innym sposobem wyłączenia jest ten dostępny w Horizon. Można kliknąć w menu rozwijane po prawej stronie i stąd wybrać opcję Shut Off Instance.
Gdy instancja jest wyłączona, jej Status (na zrzucie ekranu poniżej oznaczonym czerwoną ramką) powinien być Shutoff:
Utwórz snapshot
W wierszu zawierającym twoją maszynę wirtualną, z menu rozwijanego w kolumnie Actions wybierz Create Snapshot:
Powinno pojawić się okno z prośbą o podanie nazwy snapshot:
Długoterminowe podejście polega na tym, aby do tej nazwy włączyć
datę,
godzinę oraz
wersję snapshot.
Albo może to być cokolwiek innego, co później przypomni ci, którą wersję snapshot użyć. Tutaj po prostu wprowadź opisową nazwę, taką jak instance_ephemeral_snapshot, i kliknij Create Snapshot.
Powinno cię teraz przekierować do sekcji Compute -> Images dashboardu Horizon. Jeśli nie, przejdź tam sam.
W tej sekcji powinieneś zobaczyć swój nowo utworzony snapshot, wraz z innymi obrazami, w tym tymi, które są dostępne domyślnie na chmurze NSIS Cloud. Poczekaj, aż jej Status (tutaj oznaczony ciemnozieloną ramką) będzie Active:
Jeśli okno twojej przeglądarki internetowej jest wystarczająco rozszerzone, powinieneś również zobaczyć rozmiar twojego snapshot, oznaczony ciemno niebieską ramką. Powinien on pokrywać się z wielkością flavora Twojej maszyny wirtualnej. W tym przykładzie wybranym flavorem był eo2a.large o rozmiarze 32 GB. Taką właśnie liczbę widzimy w niebieskiej ramce na powyższym zrzucie ekranu.
Co zawiera snapshot dla storage ephemeral
Ten instance snapshot powinien zawierać zawartość dysku startowego twojej maszyny wirtualnej. Nie będzie ona jednak zawierać zawartości żadnych volume, które mogłyby być podłączone do tej maszyny wirtualnej.
Zasada: Zawsze sprawdzaj, czy istnieją volumes podłączone do instancji. Jeśli chcesz je zachować, skopiuj lub utwórz snapshot każdego z nich.
instance snapshot, która używa storage persistent
Wykonaj Wymaganie wstępne numer 4 i utwórz instancję o nazwie instance-which-uses-volume.
Przejdź do listy instancji w Horizon
Przejdź do Compute -> Instances i zobacz listę istniejących maszyn wirtualnych. Poniższy zrzut ekranu przedstawia obie instancje utworzone w tym artykule – instance-which-uses-ephemeral i instance-which-uses-volume.
Volume, na którym zainstalowany jest system operacyjny instance-which-uses-volume, można znaleźć w sekcji Volumes -> Volumes i ma taką samą nazwę, jak jego ID – 5f92521d-6e71-4d58-a3d9-171eeb9c1e77:
Wyłącz maszynę wirtualną
Wyłącz instance-which-uses-volume. Ponownie, wybór jest między użyciem funkcji jej systemu operacyjnego a użyciem poleceń Horizon. W Horizon, najpierw wyświetl listę instancji z Compute -> Instances, a następnie użyj polecenia Shut Off Instance na instance-which-uses-volume.
Gdy jest wyłączona, jej Power State (na zrzucie ekranu poniżej oznaczonym ciemnozieloną ramką) powinien być Shut Down:
Utwórz Snapshot
W wierszu, który zawiera twoją maszynę wirtualną, z menu rozwijanego w kolumnie Actions, wybierz Create Snapshot:
Powinno pojawić się okno, w którym zostaniesz poproszony o podanie nazwy twojego snapshot:
Wprowadź opisową nazwę według własnego uznania (w tym przypadku używamy instance_persistent_snapshot) i kliknij Create Snapshot.
Powinieneś teraz zostać przekierowany do sekcji Compute -> Images na dashboardzie Horizon. Jeśli tak się nie stało, przejdź tam samodzielnie.
W tej sekcji powinieneś zobaczyć swój nowo utworzony snapshot, obok innych obrazów, w tym tych, które są dostępne domyślnie w chmurze NSIS Cloud. Pozzekaj, aż jego Status (oznaczony tutaj ciemnozielonym prostokątem) będzie Active.
Ponieważ ten snapshot nie zawiera danych zapisanych na dysku twardym maszyny wirtualnej, jego rozmiar (na powyższym zrzucie ekranu oznaczony ciemnoniebieskim prostokątem) wynosi 0 bajtów.
Co się dzieje podczas tworzenia instance snapshotu z storage persistent?
Podczas tworzenia snapshotu instancji ze storage persistent tworzone są następujące elementy:
Snapshot volume, który służy jako dysk startowy instancji
Snapshot innych volume podłączonych do maszyny wirtualnej (jeśli istnieją).
instance snapshot, który wydaje się mieć rozmiar 0 bajtów (ponieważ nie zawiera danych przechowywanych na twojej maszynie wirtualnej). Ten snapshot zawiera listę wszystkich innych (snapshot) w swoich metadanych.
Zwróć uwagę, że nazwy volume, które były połączone z maszyną wirtualną w momencie tworzenia snapshot, nie zostaną zachowane.
Jeśli w przyszłości chcesz utworzyć maszynę wirtualną z tego instance snapshot:
Jeśli nie masz snapshot volume, który instance używał jako dysk startowy, nie będziesz w stanie odtworzyć instancji tego snapshot.
Jeśli snapshot któregoś z dołączonych volume nie istnieje, maszyna wirtualna zostanie odtworzona bez tego volume.
Eksplorowanie instance snapshot i volume snapshot, które zostały utworzone
Podczas gdy nadal znajdujesz się w sekcji Compute -> Images na dashboardzie Horizon, kliknij na nazwę instance snapshot, który właśnie utworzyłeś. Powinieneś zobaczyć jego właściwości, w tym:
W sekcji Custom Properties powinieneś zobaczyć właściwość o nazwie block_device_mapping. Ta właściwość powinna zawierać listę innych snapshot volume, które zostały utworzone.
W tym przykładzie, ponieważ instancja miała tylko jeden dołączony volume, ta lista zawiera tylko jeden element:
[
{"guest_format": null,
"volume_id": null,
"disk_bus": "scsi",
"device_type": "disk",
"device_name": "/dev/sda",
"image_id": null,
"volume_type": null,
"snapshot_id": "562cf0d4-0598-4bea-a4b0-c85660341e33",
"volume_size": 18,
"delete_on_termination": false,
"destination_type": "volume",
"no_device": null,
"tag": null,
"boot_index": 0,
"source_type": "snapshot"
}
]
Wartość klucza snapshot_id to identyfikator tego volume snapshot. Aby zobaczyć ten snapshot volume, nawiguj do sekcji Volume -> Snapshots.
Co się dzieje, gdy istnieje wiele volumes?
Jeśli wiele volumes było dołączonych do twojej instancji, snapshot każdego z nich powinien pojawić się na liście. Na przykład, tak mogłaby wyglądać ta lista, gdyby były dwa volume:
W tym przykładzie mamy dwa snapshot volume, każdy utworzony dla jednego z volume naszej maszyny wirtualnej:
jeden z ID 8c158dce-2a98-47ab-8c17-eeab88376e95 i rozmiarem 16 GB, oraz
inny z ID 9599d9e7-f556-4cd3-ab15-61969f6d7344 i rozmiarem 5 GB.
Co można zrobić dalej?
Aby utworzyć nową maszynę wirtualną z instance snapshot, zobacz
Można utworzyć instance snapshot również przy użyciu OpenStack CLI. Zobacz Jak utworzyć instance snapshot za pomocą OpenStack CLI na NSIS
Dyskusja na temat volume startowych i niestartowych znajduje się w Volumes rozruchowe i nierozruchowe w NSIS.
Pobieranie instance snapshot
- Storage ephemeral
To polecenie powinno działać poprawnie dla pobierania snapshot, który używa storage ephemeral.
- Storage persistent
Wykonanie tego polecenia w celu pobrania snapshot, który używa storage persistent, spowoduje pobranie pustego pliku.