Bądź na bieżąco - RSS

Kopie zapasowe VMware

31 sierpnia, 2022 | Brak Komentarzy | Kategoria: Porady
Kopie zapasowe VMware

Kopie zapasowe VMware dla maszyn wirtualnych były wielokrotnie poruszane na naszym blogu. Generalnie polecam narzędzie XSIBackup. Ostatnio pojawiły się nowsze płatne wersje ale na szczęście zawsze można skorzystać z wydania pod nazwą Classic.

Przygotowanie całego mechanizmu kopii to jedno, ale proces odzyskiwania danych po awarii to zupełnie inna sprawa. Dawno temu VMware opublikował wygodne narzędzie dla Windows o nazwie VMware Converter. Można go użyć w celu odtworzenia maszyny wirtualnej na wskazanym serwerze. Nietstety narzędzie to nie jest już wspierane od kilku lat i w związku z tym mogą pojawić kłopoty przy odzyskiwaniu danych dla nowszych wersji ESXi. Czy komunikaty o błędach Converetera są powodem do zmartwień? W pewnym sensie tak. Jednak na szczęście istnieje ręczna, dosyć prosta metoda odzyskania zarchiwizowanej maszyny wirtualnej.

W plikach skopiowanych podczas archiwizacji XSIBackup powinna znajdować się konfiguracja – szukamy nazwy z rozszerzeniem vmx. Jeśli tak jest, to kopiujemy wszystkie pliki do jednego katalogu (np. z nazwą naszej maszyny) na serwerze VMware. Można w tym celu wykorzystać narzędzie Datastore browser. Następnie zaznaczamy plik vmx i prawym klawiszem myszki wybieramy z menu opcje Register VM. O ile nie wykonywaliśmy żadnych migawek maszyny, które również są archwizowane to po tej operacji maszyna powinna być już dostępna do uruchomienia.

Co zrobić jeśli jednak mamy zapisane migawki? W takim przypadku powinniśmy zatrzymać maszynę wirtualną a następnie korzystając z menu Actions/Snapshots wybrać opcję Consolidate Disks. Niestety stracimy nasze migawki ale odzyskamy wewnętrzny spokój i równowagę po przywróceniu maszyny wirtualnej do życia, a przecież o to właśnie chodzi. 😉

MG

Tagi: , ,

Kopie zapasowe Docker

3 sierpnia, 2022 | Brak Komentarzy | Kategoria: Bez kategorii, Linux, MacOS, Porady, Windows
Kopie zapasowe Docker

Ten temat pojawiał się wielokrotnie we wpisach. Chodzi oczywiście o kopie zapasowe. Ludzie dzielą się na dwie kategorie tych, którzy je robią i tych, którzy je będą robili (truizm, ale trzeba go powtarzać do znudzenia). Tym razem, ponieważ od jakiegoś czasu bardzo popularne są rozwiązania oparte o konteneryzację, parę słów jak to zrobić gdy używamy środowiska Docker.

Oczywiście metodę, o której będzie za chwilę można również stosować np. do migracji całych kontenerów na nowe serwery.

Cała procedura składa się z kilku dosyć prostych kroków. Jedynym wymaganiem jest posiadanie dostępu w wiersza poleceń (konsola). Inna sprawa to mała sugestia, że najlepiej będzie skorzystać ze środowiska Linux (Debian, Ubuntu itp.) do budowy swojego serwera. Jednak w przypadku Windowsów również wszystko powinno działać.

Krok pierwszy to zatrzymanie kontenera, dla którego będziemy tworzyć kopię zapasową:

docker stop nazwa_kontenera

Jeżeli nie wiemy jakiej nazwy użyć lub po prostu otrzymujemy komunikat o błędzie wystarczy sprawdzić wszystkie dostępne kontenery:

docker container ls

W drugim kroku tworzymy obraz naszego kontenera:

docker commit nazwa_kontenera nazwa_kontenera

Ostatni parametr to tak naprawdę nazwa obrazu ale dla uproszczenia przyjmijmy, że jest ona taka sama jak nazwa kontenera.

Trzeci krok to zapisanie obrazu do pliku.

docker save nazwa_kontenera

W tym miejscu należy wspomnieć, że do tego momentu udało się zapisać stan kontenera. Jeśli instalacje, dla których robimy kopie mają zdefiniowane zewnętrzne wolumeny to należy skopiować ich zawartość oddzielnie. Generalnie można to zrobić ręcznie, ale dużo wygodniej będzie skorzystać z gotowego rozwiązania. Warto polecić skrypt docker-volumes.sh. Za jego pomocą dosyć łatwo można zapisać wszystkie stałe dane do jednego archiwum:

docker-volumes.sh nazwa_kontenera \ 
save nazwa_kontenera_wolumeny.tar.gz

Mając kopie zapasową w postaci dwóch plików tj. obrazu kontenera oraz wolumenów jesteśmy zabezpieczeni. Jeśli chcielibyśmy przenieść dane na inne sewery wystarczy skopiować je do nowej lokalizacji.

Ostatecznie na nowym serwerze, po przygotowaniu środowiska Docker, wykonujemy trzy polecenia.

Tworzymy kontener z wykorzystaniem skopiowanego obrazu:

docker create --name nazwa_kontenera \
{zestaw_opcji_uruchomieniowych} nazwa_kontenera

Przywracamy wolumeny:

docker-volumes.sh nazwa_kontenera load nazwa_kontenera_wolumeny.tar.gz

Uruchamiamy kopie kontenera:

docker start nazwa_kontenera

Przy odrobinie szczęścia, w tym momencie powinniśmy cieszyć się kolejną, nową instancją naszej usługi.

MG

Tagi: , ,