PowerFlex: storcli add vd skarży się, że "kontroler ma dane w pamięci podręcznej dla dysków wirtualnych offline lub brakujących"
Summary: Kontroler przechowuje w pamięci podręcznej dane dotyczące dysków wirtualnych offline lub brakujących.
Symptoms
Może się to zdarzyć w przypadku braku dysku wirtualnego / dysku wirtualnego z powodu wyciągnięcia dysku twardego bez wykonania odpowiedniej procedury. Kolejne próby ponownego dodania dysku wirtualnego mogą spowodować powyższy błąd.
Może się to zdarzyć w węźle VxRack i innych systemach korzystających z kontrolera LSI i storcli.
Polecenie storcli add vd zwraca błąd, który "controller has data in cache for offline or missing virtual disks."
# /opt/MegaRAID/storcli/storcli64 /c0 add vd type=raid0 drives=252:4 direct wb ra Controller = 0 Status = Failure Description = controller has data in cache for offline or missing virtual disks Unable to add virtual disks.
Cause
W przypadku wyciągnięcia dysku twardego bez wykonania prawidłowej procedury kontroler LSI zachowa pamięć podręczną dla wszystkich operacji zapisu na odpowiednim dysku wirtualnym, które nie zostały jeszcze zatwierdzone na dysku.
Zapobiega to próbom dodawania VD (również przy użyciu innych PD). Jeśli w tym momencie serwer uruchomi się ponownie, na konsoli zostanie wyświetlony komunikat POST, który nie pozwala na kontynuowanie procesu, chyba że zachowana pamięć podręczna zostanie wyczyszczona w systemie BIOS kontrolera.
Resolution
Przed kontynuowaniem dodawania dysków wirtualnych należy wyczyścić zachowaną pamięć podręczną. Podczas ponownego uruchamiania można to zrobić za pomocą systemu BIOS kontrolera. Można to również zrobić za pomocą storcli:
Aby sprawdzić, czy istnieje zachowana pamięć podręczna:
# /opt/MegaRAID/storcli/storcli64 /c0 show preservedCache Controller = 0 Status = Success Description = None ----------- VD State ----------- 1 Missing -----------
W powyższym przykładzie VD #1 jest w stanie "missing" i nie jest wyświetlany w danych wyjściowych "storcli /c0 show".
Aby usunąć zachowaną pamięć podręczną:
# /opt/MegaRAID/storcli/storcli64 /c0/v1 delete preservedCache
Lub
# /opt/MegaRAID/storcli/storcli64 /c0/vall delete preservedCache
Uwaga: ta operacja spowoduje unieważnienie danych na dysku. Nie powinno to powodować problemów w ScaleIO, ponieważ dla wszystkich danych będą dostępne dwie kopie.