Как подключить SWAP для виртуального сервера: плюсы и минусы SWAP

watch 22s
views 2

14:33, 03.11.2022

Содержание статьи
arrow

  • Плюсы SWAP
  • Минусы SWAP
  • Создание и подключение файла подкачки SWAP
  • Как проверить наличие свопа в системе?
  • Какого размера создать SWAP

SWAP – важный механизм, обеспечивающий разумное управление памятью виртуального сервера путем перемещения части данных из оперативной памяти на твердотельный накопитель. Технология актуальна в тех случаях, когда система нуждается в таком количестве ОЗУ, которым сервер не располагает физически. Активация свопинга позволит поместить в специальный раздел накопителя те данные, которые используются реже всего.

Опытные пользователи Linux знают, что большое количество страниц, используемых программами на этапе запуска, нужны только при инициализации, и больше они не используются на протяжении всей рабочей сессии. SWAP позволяет выгрузить эти неиспользуемые страницы из ОЗУ и переместить их в пространство накопителя. Таким образом, swapping является важным инструментом по оптимизации серверных систем.

Плюсы SWAP

Основным преимуществом этой технологии является то, что она позволяет:

  1. Снизить расходы на содержание сервера. То есть вы можете взять более дешевый тарифный план виртуального частного сервера с недостаточным объемом ОЗУ, настроить SWAP, и таким образом стабилизировать работу сервера.
  2. Оптимизировать работу сервера за счет высвобождения страниц памяти.

На серверах без конкуренции или с малой конкуренцией за память польза от этой технологии будет небольшой – максимум, вы сможете перекинуть в своп анонимную память, которую приложения и службы используют редко. Это позволит повысить коэффициент попаданий в кэш и в целом высвободить драгоценную ОЗУ.

Также технология будет полезна на VPS, где бывают временные всплески в плане потребления RAM – устойчивость к такого рода ресурсным аномалиям будет выше.

Минусы SWAP

Главный минус – оперативная память всё равно быстрее. Даже если у вас на сервере супер современный NVMe-накопитель, ОЗУ будет работать с информацией быстрее. Поэтому злоупотреблять свопингом не стоит, нужно четко понимать, какие данные разумно помещать в эту память, а какие лучше оставить для ОЗУ.

Кроме того, SWAP может отстрочить вызов Out-Of-Memory Killer вашей операционной системой, а активация этого процесса бывает необходимой, когда нужно завершить приложение, угрожающее сбоем ядра. Такие ситуации редкость, особенно на современных версиях Linux, но они имеют место быть.

Как подключить swap для виртуального сервера: плюсы и минусы swap

Создание и подключение файла подкачки SWAP

Представим ситуацию, что у вас есть VPS с 2 гигабайтами оперативной памяти без раздела под swap. В этом случае нам необходимо сначала создать файл под swap:

sudo fallocate -l 2G /mnt/swapfile


Теперь у нас есть файл подкачки размером 2 ГБ. Если возникнут проблемы с fallocate, можно прибегнуть к проверенной временем команде dd:

sudo dd if=/dev/zero of=/mnt/swapfile bs=1M count=2048


Далее необходимо присвоить права чтения и записи для этого файла:

sudo chmod 600 /mnt/swapfile


И теперь, когда файл создан и права настроены под администратора, мы можем указать системе путь к файлу подкачки:

sudo mkswap /mnt/swapfile


Теперь Linux будет использовать данный файл, чтобы выгружать в него редко используемые страницы. Подключаем файл:

sudo swapon /mnt/swapfile


Остается открыть в режиме редактирования файл /etc/fstab и прописать туда строчку:

/mnt/swapfile  none  swap  sw  0 0


Если этого не сделать, файл подкачки будет активен только до следующей перезагрузки сервера, а потом его нужно будет снова активировать вручную.

Как проверить наличие свопа в системе?

Для этого существует простая команда:

swapon --show


При её активации вы увидите информацию о файле подкачки, его размер и количество задействованных мегабайт.

Какого размера создать SWAP

Суть в том, что оптимальный размер файла подкачки определяется индивидуально. Он зависит от таких факторов:

  • объем ОЗУ на VPS;
  • типы используемых приложений, а также их «прожорливость»;
  • используется ли на сервере режим сна.

Если у вас виртуальная машина с объемом RAM менее 2 ГБ, то оптимальным будет размер файла SWAP в полтора-два раза больше. На машинах с 3-4 ГБ в большинстве случаев хватает файла подкачки размером на 10-15% больше объема оперативки. Если же у вас VPS с 6 ГБ ОЗУ и более, то достаточно будет своп-файла на 1-2 ГБ.

Помните, что при избытке ОЗУ файл подкачки лучше вообще не активировать – если ваша система не использует на 100% имеющиеся ресурсы, то необходимости в свопинге попросту нет. Вы только навредите, ведь перенос страниц данных в SWAP-файл повлечет за собой замедление скорости обработки данных при обращении к этим страницам.

Поделиться

Была ли эта статья полезной для вас?

1 пользователи считают эту статью полезной

Популярные предложения VPS

-10%

CPU
CPU
6 Xeon Cores
RAM
RAM
8 GB
Space
Space
100 GB SSD
Bandwidth
Bandwidth
Unlimited
KVM-SSD 8192 Linux

25.85

При оплате за год

-10%

CPU
CPU
4 Xeon Cores
RAM
RAM
2 GB
Space
Space
30 GB SSD
Bandwidth
Bandwidth
Unlimited
KVM-SSD 2048 Linux

8.3

При оплате за год

-10%

CPU
CPU
3 Xeon Cores
RAM
RAM
1 GB
Space
Space
20 GB SSD
Bandwidth
Bandwidth
Unlimited
KVM-SSD 1024 Linux

6.6

При оплате за год

-10%

CPU
CPU
4 Xeon Cores
RAM
RAM
2 GB
Space
Space
30 GB SSD
Bandwidth
Bandwidth
Unlimited
10Ge-KVM-SSD 2048 Linux

30.3

При оплате за год

-5.9%

CPU
CPU
4 Xeon Cores
RAM
RAM
2 GB
Space
Space
75 GB SSD
Bandwidth
Bandwidth
Unlimited
wKVM-SSD 2048 Windows

14.8

При оплате за год

-10%

CPU
CPU
6 Xeon Cores
RAM
RAM
8 GB
Space
Space
200 GB HDD
Bandwidth
Bandwidth
300 Gb
KVM-HDD HK 8192 Linux

20.66

При оплате за год

-10%

CPU
CPU
6 Epyc Cores
RAM
RAM
16 GB
Space
Space
150 GB NVMe
Bandwidth
Bandwidth
Unlimited
KVM-NVMe 16384 Linux

60.5

При оплате за год

-10%

CPU
CPU
4 Xeon Cores
RAM
RAM
8 GB
Space
Space
100 GB SSD
Bandwidth
Bandwidth
Unlimited
10Ge-KVM-SSD 8192 Linux

115.5

При оплате за год

-10%

CPU
CPU
8 Xeon Cores
RAM
RAM
32 GB
Space
Space
200 GB SSD
Bandwidth
Bandwidth
12 TB
KVM-SSD 32768 Metered Linux

150

При оплате за год

-10.2%

CPU
CPU
6 Xeon Cores
RAM
RAM
16 GB
Space
Space
150 GB SSD
Bandwidth
Bandwidth
100 Mbps
DDoS Protected SSD-KVM 16384 Linux

123

При оплате за 6 месяцев

Другие статьи на эту тему

cookie

Принять файлы cookie и политику конфиденциальности?

Мы используем файлы cookie, чтобы обеспечить вам наилучший опыт работы на нашем сайте. Если вы продолжите работу без изменения настроек, мы будем считать, что вы согласны получать все файлы cookie на сайте HostZealot.