Настройка swap на AWS Ubuntu 18.04.3 LTS
Table of contents
Introduction
В статье Поднимаем инстанс t2.micro с Ubuntu Server 18.04 LTS на AWS разворачивался инстанс, доступный при Free Tier.
Инстанс типа t2.micro имеет ограничение по оперативной памяти равное 1 GiB, что не всегда хватает для выполнения необходимых задач.
Например, можно столкнуться с нехваткой оперативной памяти при установке пакетов через composer.
И тут нам нужно думать о расширении оперативной памяти, а сделать это можно или сменой типа инстанса, или же установкой файла подкачки, или же swap.
Создание нового EBS Volume
Т. к. AWS предоставляет гибкое управление разделами EBS (ELASTIC BLOCK STORE), то добавление swap произведем с помощью подключения дополнительного раздела (Volume).
Для этого зайдем в управление EC2, в меню найдем пункт подключения разделов и создадим новый раздел:

Т. к. у нас размер оперативной памяти равен 1 GiB, то у нового раздела выставим размер в два раза больше, т. е. 2 GiB.
При создании раздела важно выбрать правильную Availability Zone, т. е. ту зону, где находится тот инстанс, к которому мы смонтируем созданный раздел.
Не забудьте добавить тег Name для раздела, как показано на скриншоте, чтобы было проще его найти.

После добавления раздел не привязан к какому-либо инстансу, поэтому произведем установку:


На данном этапе все настройки в консоли AWS мы завершили и теперь перейдем в консоль управления сервером.
Настройка на сервере
Посмотрим доступную нам оперативную память:
free -h

Видим, что нам доступен только 1 GiB и то, что у нас нет swap. Посмотрим на список смонтированных дисков, среди которых есть добавленный в Volume на 2 GiB:
lsblk

Создадим структуру swap и подключим его как раздел:
sudo mkswap /dev/xvdf
sudo swapon /dev/xvdf
sudo swapon -s

Уже на данный момент swap подключен как раздел, в чем можно убедиться, набрав опять команду:
free -h
Но, такое подключение просуществует до первой перезагрузки, поэтому добавим команду активации при запуске системы в файл /etc/fstab
echo "UUID=<UUID swap-раздела> swap swap defaults,pri=2 0 0"| sudo tee -a /etc/fstab
UUID swap-раздела в нашем случае это 0a9ca2a3-2713-43af-9358-a6e9b4174e7b

Теперь и после перезагрузки нам будет доступен swap-раздел и проблемы с недостатком памяти для работы composer будут решены.
Дата редактирования : 2020-11-12 00:32:53
Автор : Rosko