Dell NativeEdge: Zachowanie współdzielonego magazynu danych ze znaną wadą jądra
Summary: Ten artykuł bazy wiedzy dokumentuje oczekiwane i celowe zachowanie w wersji 4.2.0.0 platformy NativeEdge: Aby zapobiec uszkodzeniu dysku maszyny wirtualnej, platforma NativeEdge wyłącza funkcję discard="unmap" we współdzielonych magazynach danych. W związku z tym automatyczne odzyskiwanie pamięci masowej nie nastąpi, dopóki podstawowy problem z jądrem systemu Ubuntu nie zostanie rozwiązany. ...
Symptoms
W wersji 4.2.0.0 oprogramowania NativeEdge na ekranie "Shared_DataStore" użytkownicy zauważają, że używana pojemność pamięci masowej stopniowo wzrasta, nawet po usunięciu plików wewnątrz maszyny wirtualnej. Odzyskiwanie pamięci masowej nie odbywa się automatycznie.
Zachowanie jest wynikiem wewnętrznej zgłoszonej obserwacji, w której w skalowanych środowiskach z dużą liczbą maszyn wirtualnych wdrożonych w Shared_DataStore maszyny wirtualne mogą:
- Nie można uruchomić,
- Utknięcie na ekranie oprogramowania układowego lub programu ładującego,
- Lub występują błędy we/wy dysku, takie jak
"Block device libvirt-3-format is ejected."
Problem pojawił się kilka godzin po pomyślnym wdrożeniu (zwykle ~8 godzin).
Cause
W wersji 4.2.0.0 platformy NativeEdge wprowadzono nowy parametr maszyny wirtualnej: discard="unmap"
Ta funkcja została dodana w celu obsługi funkcji TRIM i rozwiązania problemu odzyskania nieużywanego miejsca na maszynie wirtualnej przez wcześniejszego klienta. Jednak po wdrożeniu maszyn wirtualnych w systemie Shared_DataStore włączenie discard="unmap" prowadzi do uszkodzenia dysku maszyny wirtualnej z powodu problemu z jądrem w systemie Ubuntu 24.04, który wpływa na block-discard operacje na CephFS.
When (Kiedy) discard="unmap" został wyłączony (discard="ignore") w przypadku pamięci współdzielonej wszystkie operacje TRIM/discard maszyny wirtualnej, które są wykonywane z systemu operacyjnego do systemu plików CephFS, są ignorowane, co spowoduje, że usunięte bloki wewnątrz maszyny wirtualnej (nieużywana przestrzeń) nie będą mogły zostać odzyskane lub nie będą mogły zostać zwrócone do udostępnionego magazynu danych, co spowoduje stały wzrost wykorzystania współdzielonego magazynu danych w czasie.
Nie jest to regresja i jest to zachowanie w wydanym oprogramowaniu do momentu przywrócenia obsługi jądra nadrzędnego.
Resolution
- Kontynuuj korzystanie
`discard="ignore"`For`Shared_DataStore`Maszyny wirtualne w NativeEdge 4.2.0.0, aby uniknąć uszkodzenia maszyny wirtualnej. - Włącz ponownie
discard="unmap"dopiero po wydaniu przez Ubuntu zatwierdzonej poprawki jądra. Bieżąca wartość docelowa jest nieznana