Linux obsługuje dodawanie pamięci podczas pracy jako gość VM, na przykład w VMware . (Czasami musisz ręcznie poinformować system operacyjny gościa ).
Czy istnieje bezpieczny sposób na wykonanie operacji odwrotnej - zmniejszenie ilości pamięci przydzielonej maszynie wirtualnej, a jeśli tak, to czy musisz ręcznie poinformować gościa Linuksa przed taką operacją? (Jeśli tak, to czy procedura jest specyficzna dla narzędzi VMware, czy może jest ogólna dla dowolnego mechanizmu wirtualizacji?)
źródło
Nie mogę powiedzieć na pewno w vmware, ale przy użyciu kvm zmniejsza się pamięć działającej maszyny wirtualnej. Oczywiście do limitu, ale oprogramowanie ci to powie. Po zmniejszeniu pamięć w maszynie wirtualnej będzie stopniowo zmniejszana, dopóki nie będzie można jej dalej zmniejszać. Jeśli ustawisz pamięć na niższą niż w miejscu, w którym się zatrzymała, będziesz musiał ponownie uruchomić maszynę wirtualną, aby całkowicie ją opuścić.
Niedawno zrobiłem to na systemie działającym na kvm z około 20 maszynami wirtualnymi, gdzie ktoś pomyślał, że rozsądnie jest przesadzić pamięć, powodując, że niektóre maszyny wirtualne działają w trybie wymiany (doh!). Aby to naprawić, obniżyłem pamięć o około 20–40% 2/3 maszyn wirtualnych i większość z nich była w stanie całkowicie ją obniżyć podczas pracy. Kilku potrzebowało ponownego uruchomienia, aby nowe ustawienie pamięci zaczęło obowiązywać całkowicie.
Wychodząc z tego, zakładam, że wirtualna maszyna vmware mogłaby również na to pozwolić. Jednak szybki test w odtwarzaczu vmware mówi mi, że będzie trzeba go zrestartować, aby zadziałało (bardziej zaawansowane oprogramowanie vmware może zachowywać się ładniej). W przeciwnym razie jest to bezpieczne w działającym systemie. Oczywiście, czy ilość pamięci, którą pozostało, wystarczy do prawidłowego działania, to inna sprawa.
źródło