Swap nie raz uratował mi życie, gdyż prywatnie posiadam kilka serwerów VPS uruchomionych pod różne moje usługi i pomysły. Nie inwestowałem w serwer dedykowany, bo to są raczej poboczne projekty, które na siebie nie zarobią, więc wirtualna maszyna jest pomysłem atrakcyjnym cenowo, jednak zawsze mi czegoś brakowało. Pamięci!
I nie chodzi o to, że jestem zapominalski (co też jest prawdą), a raczej o fakt, że parę moich projektów co jakiś czas potrzebowała większej ilości pamięci RAM. Miałem dwie opcje w takich sytuacjach: dokupić kolejny serwer, dokupić RAMu do aktualnego serwera, albo wykorzystać i tak niewykorzystane miejsce dyskowe. Z tych trzech opcji, najtańsza była trzecia opcja. Nie będę tłumaczyć czym jest SWAP, zrobili to mądrzejsi tutaj.
Aktualnie większość serwerów VPS stoi na dyskach SSD, a przynajmniej tak wygląda to w ofercie, bo często jest to tzw. „SSD Cache”. Pamięć SSD jest dużo wolniejsza od pamięci RAM, więc nie będzie to tak wydajne rozwiązanie jakbym chciał, jednak lepszy rydz niż nic.
W tym celu pokażę Wam jak dodać taką pamięć SWAP do już działającego serwera.
Jak widać, na serwerze jest aktualnie 8G Ramu i 0B Swapa. Jednak, jak te 8G zabraknie to lepiej mieć zapas. Na początek spójrzmy ile możemy wykorzystać, bo nie każdy serwer VPS jest tak bogaty w pamięć SSD.
Jak widać na załączonym obrazku, serwer ma niecałe 200G przestrzeni dyskowej. Jest wolne miejsce i nawet jest go sporo. Przy tym serwerze dodam trochę pamięci SWAP. Zgodnie z małą zasadą jakiej się trzymam, czyli 50% ilości RAMu – 4G w naszym przypadku.
Swap – dodajmy go!
Na początek utworzyć musimy plik, tzw. swap file, który będzie zajmować na naszym dysku wspomniane miejsce:
dd if=/dev/zero of=/swap count=4096 bs=1MiB
Po utworzeniu takiego pliku, warto nadać mu uprawnienia:
chmod 600 /swap
Kolejnym krokiem jest przerobienie pliku w SWAP. Przyznam, że nie wiedziałem jak to nazwać. Poprawcie mnie jeśli macie lepszy pomysł na nazwanie tego procesu:
mkswap /swap
Skoro już mamy nasz plik, możemy go wykorzystać, czyli uruchamiamy nasz SWAP:
swapon /swap
Aktualnie nasz SWAP jest włączony:
Jednak to jeszcze nie koniec. W momencie wyłączenia serwera, resetu itp. – nasz swap się nie uruchomi samodzielnie. Rozwiązaniem na to jest dodanie go do fstab komendą:
echo "/swap swap swap sw 0 0" >> /etc/fstab
Oczywiście takich plików, na różnych partycjach, katalogach itp. możemy posiadać ile dusza zapragnie. Co w momencie jak zgubimy rachubę i nie będziemy wiedzieli co, gdzie i jak?
swapon -s
Powyższa komenda da nam mniej więcej podobny wynik:
Zapoznaj się też z innymi artykułami na naszym blogu!