Rozwiązanie społecznościowe

Migracja danych w ZimaOS utknęła: najpierw sprawdź ponowną synchronizację RAID

A data-location migration remained at 6% while a newly created RAID1 was still performing a very slow background resync.

Jeśli migracja danych ZimaOS wygląda na zatrzymaną na niskim poziomie procentowym podczas przenoszenia danych do nowo utworzonej macierzy RAID, najpierw sprawdź odbudowę macierzy RAID i unikaj pochopnego przerywania migracji. Interfejs migracji może wyglądać na zawieszony, nawet gdy warstwa pamięci masowej nadal wykonuje w tle ponowną synchronizację.

W opisanym przypadku migracja zatrzymała się na poziomie 6%, a interfejs webowy stał się trudny w użyciu, ale cat /proc/mdstat pokazało, że macierz RAID1 była dopiero mniej więcej w połowie bardzo powolnej ponownej synchronizacji. To obciążenie pamięci masowej, a nie dowód na awarię samego zadania migracji.

Dlaczego migracja danych może wyglądać na zatrzymaną podczas ponownej synchronizacji RAID

Tworzenie lub odbudowywanie macierzy RAID powoduje ciągły odczyt i zapis na dyskach wchodzących w jej skład. Jeśli w tym samym czasie rozpoczniesz dużą migrację danych, obie operacje będą konkurować o przepustowość dysków i opóźnienia operacji wejścia-wyjścia.

W aktualnym przewodniku migracji danych ZimaOS zaznaczono, że migracja przejmuje interfejs na czas działania i przenosi całe kategorie, takie jak obrazy Dockera, dane aplikacji Dockera i foldery użytkowników. Duże zadania mogą więc trwać znacznie dłużej niż szacuje interfejs, gdy macierz docelowa jest obciążona.

Krok 1: Sprawdź stan odbudowy macierzy RAID w terminalu

Uruchom:

cat /proc/mdstat

W przypadku macierzy RAID md w systemie Linux szukaj terminów takich jak ponowna synchronizacja, odzyskiwanielub wartość procentową postępu. Sprawna macierz RAID1 z dwoma dyskami zwykle pokazuje obu członków jako [UU]. Jeśli ponowna synchronizacja jest aktywna, zanotuj wartość procentową, szacowany czas zakończenia i prędkość.

Co oznacza bardzo długi przewidywany czas zakończenia

Długi przewidywany czas zakończenia może wynikać z wolnych dysków, problemów z połączeniem USB/SATA, równoległych obciążeń lub celowo ograniczonej przepustowości ponownej synchronizacji md. Sam w sobie nie oznacza, że macierz jest uszkodzona. Sprawdź ponownie po 10–30 minutach i upewnij się, że wartość procentowa się zmienia.

Krok 2: Potwierdź, że system nadal wykonuje użyteczną pracę

Jeśli /proc/mdstat postępuje w czasie, warstwa pamięci masowej działa. Nie musisz instalować iotop żeby to udowodnić. ZimaOS to system operacyjny w stylu appliance, dlatego dodawanie pakietów do hosta przy użyciu standardowych procedur dystrybucji nie jest preferowaną metodą rozwiązywania problemów.

Możesz również sprawdzić, czy pliki pozostają dostępne z innego klienta. W opisanym przypadku dostęp do danych z komputera i aplikacji na telefonie nadal działał, mimo że ekran migracji w interfejsie webowym pozostawał na poziomie 6%.

Krok 3: Nie zatrzymuj Dockera ani nie przerywaj migracji w pierwszej kolejności

Zatrzymanie Dockera może usunąć usługi, od których zależy interfejs webowy ZimaOS, pogarszając wygląd systemu, a jednocześnie nie rozwiązując problemu z operacją na pamięci masowej. Przerwanie migracji w trakcie kopiowania może również pozostawić niektóre kategorie w starej lokalizacji, a inne w nowej.

Poczekaj na zakończenie aktywnego odzyskiwania RAID, chyba że macierz całkowicie przestała wykazywać postęp lub dyski wyraźnie zgłaszają błędy sprzętowe.

Kiedy należy podejrzewać, że migracja rzeczywiście utknęła?

Dokładniej zbadaj sytuację, jeśli wszystkie te warunki pozostają spełnione przez dłuższy czas:

  • procentowy postęp migracji się nie zmienia;
  • /proc/mdstat nie pokazuje aktywnej odbudowy lub jej wartość procentowa nigdy się nie zwiększa;
  • aktywność dysków jest praktycznie niezauważalna;
  • miejsce docelowe ma wystarczająco dużo wolnego miejsca;
  • nie występują żadne oczywiste przerwy w sieci ani zasilaniu.

W tym momencie przed ponownym uruchomieniem zbierz dokładną wersję ZimaOS, typy pamięci masowej źródłowej i docelowej, kategorię migracji, stan RAID oraz wszelkie istotne dzienniki.

Użyj bieżącej procedury migracji danych

W bieżącej wersji ZimaOS ta funkcja znajduje się w sekcji Ustawienia → Migracja danych. Narzędzie może przenosić obrazy Dockera, dane aplikacji Dockera i foldery użytkowników na poziomie kategorii. Jeśli chcesz przenieść tylko jedną aplikację, użyj procedury ścieżki pamięci masowej aplikacji zamiast migrować wszystkie aplikacje jednocześnie.

W przewodniku migracji danych wyjaśniono, czym zarządzana migracja różni się od ręcznego przenoszenia folderów.

Jak zapobiec temu samemu problemowi następnym razem

Pozwól, aby nowo utworzona macierz RAID zakończyła synchronizację przed rozpoczęciem dużej migracji danych aplikacji lub użytkowników. Upewnij się, że miejsce docelowe działa prawidłowo i ma wystarczająco dużo wolnego miejsca, a następnie migruj po jednej kategorii naraz. Ogranicza to konkurencyjne operacje wejścia-wyjścia i ułatwia ustalenie przyczyny awarii.

Ponadto regularnie twórz aktualną kopię zapasową danych, których nie można odtworzyć. Synchronizacja RAID i migracja danych to operacje na pamięci masowej; żadnej z nich nie należy traktować jako kopii zapasowej.

FAQ

Czy mogę ponownie uruchomić ZimaOS, jeśli migracja danych utknęła na 6%?

Nie jako pierwszy krok. Najpierw sprawdź aktywność RAID i pamięci masowej. Jeśli macierz aktywnie wykonuje resynchronizację, pozwól jej się zakończyć, chyba że istnieje sprzętowy lub związany z bezpieczeństwem powód, aby ją zatrzymać.

Dlaczego szacunek migracji podaje minuty, skoro trwa ona wiele godzin?

Szacunek nie uwzględnia w pełni powolnej odbudowy RAID, mocno obciążonych dysków ani dużej liczby małych plików. Mierz rzeczywisty postęp zamiast polegać na początkowym szacunku.

Czy [UU] oznacza, że RAID1 działa prawidłowo?

W przypadku dwu-członkowej macierzy md RAID1, [UU] oznacza, że obaj oczekiwani członkowie są obecni. Nie oznacza to, że resynchronizacja już się zakończyła, dlatego sprawdź również wiersz postępu.

Czy powinienem zainstalować iotop w ZimaOS?

Zwykle nie w przypadku tej diagnozy. /proc/mdstat już pokazuje, czy macierz md RAID jest odbudowywana, a unikanie niepotrzebnych modyfikacji pakietów hosta upraszcza rozwiązywanie problemów.