VPS с 8 ГБ RAM: несколько проектов, 1С и игровые серверы на одной машине
Восемь гигабайт обычно берут, когда маленьких серверов стало слишком много и их хочется собрать в один, или когда отдельная задача требует памяти всерьёз: 1С с базой на несколько пользователей, сервер с модами, GitLab, CI-раннеры. На этом объёме главный вопрос уже не «влезет ли», а «как разделить память между сервисами, чтобы один не задушил остальные».
Что запускают на 8 ГБ
- Консолидация. Пять-десять сайтов на общем Nginx и одной MySQL, плюс боты и cron-задачи, которые раньше жили на отдельных VPS по 1–2 ГБ. Одна база с буфером на 2–3 ГБ работает эффективнее, чем пять маленьких.
- 1С:Предприятие. Файловая база с веб-публикацией или клиент-серверный вариант с PostgreSQL на 5–10 пользователей: кластер 1С занимает 2–4 ГБ, база — ещё 2–3. Подробности о лицензиях и версиях платформы — в разделе VPS для 1С.
- GitLab для небольшой команды: официальный минимум — 4 ГБ, но с раннером, реестром контейнеров и Prometheus комфортно становится от 8 ГБ. См. VPS для GitLab.
- Игровые серверы: Minecraft с модпаком на 20–40 игроков, сервер Rust или ARK на небольшое сообщество, пара серверов CS2 одновременно. Выбор по играм — на странице VPS для игрового сервера.
- Windows Server как терминальный сервер на 3–5 сотрудников с офисными программами.
Избыточно 8 ГБ для одного сайта на CMS, одного бота или корпоративного VPN: такие задачи годами живут на 2 ГБ, а лишняя память просто уйдёт под файловый кэш. Мало станет, когда база данных перерастёт 10–15 ГБ и перестанет помещаться в буфер, когда на сервере появится Elasticsearch или когда пользователей 1С станет больше пятнадцати. Признак — стабильно занятый swap и рост времени ответа в часы пик, хотя процессор при этом не загружен.
Как разделить память между сервисами
Ошибка, которая на 8 ГБ встречается чаще всего, — каждый сервис настроен «под весь сервер». MySQL с рекомендацией «буфер на 70% памяти», Java с кучей по умолчанию и PHP-FPM с сотней процессов по отдельности выглядят разумно, вместе они гарантируют OOM. Распишите бюджет заранее:
- Оставьте 1 ГБ системе и файловому кэшу.
- Базе отдайте фиксированную долю:
innodb_buffer_pool_sizeилиshared_buffers— по размеру горячих данных, а не по формуле от общей памяти. - Java-приложениям и игровым серверам задайте
-Xmxс запасом 25% на память вне кучи. - Docker-контейнерам пропишите
mem_limit, systemd-службам —MemoryMax=в unit-файле. Тогда при утечке ядро убьёт виновника, а не базу.
Swap на 2–4 ГБ по-прежнему нужен как страховка, но vm.swappiness держите низким: игровой сервер, который ушёл в swap, начинает тормозить у всех игроков сразу.
Ядра, диск и честность тарифа
Типичное сочетание — 8 ГБ на 4 виртуальных ядра и 80–160 ГБ диска. Игровым серверам и 1С важнее частота одного ядра, чем их число, а GitLab и CI, наоборот, любят параллельность. На этом объёме впервые сильно заметна разница между тарифами одного размера: самые дешёвые 8 ГБ часто продаются на узлах с переподпиской, где память формально ваша, а процессор и диск делятся с десятками соседей. Признак — высокий steal в top при простое вашей нагрузки.
Гарантированная память против burst
Контейнерные тарифы OpenVZ и LXC на 8 ГБ иногда собираются как 4 ГБ гарантии и 4 ГБ burst. Для набора сайтов это терпимо, для 1С, базы и игрового сервера — нет: им нужна память, которую не отберут в вечерний пик. Для таких задач выбирайте VPS на KVM, где объём выделяется виртуальной машине целиком. Но и на KVM хостер может использовать balloon-драйвер: проверьте lsmod | grep virtio_balloon — модуль сам по себе не страшен, но если MemTotal со временем уменьшается, память у машины забирают.
Как проверить сервер после покупки
free -h: MemTotal около 7,7–7,8 ГБ — норма для KVM.stress-ng --vm 2 --vm-bytes 6G --timeout 120s— выделение всего объёма не должно приводить к убитым процессам и зависанию SSH.sysbench memory run— скорость памяти. Сильно низкий результат по сравнению с другими тарифами — повод задуматься о перегруженном узле.- Через сутки работы посмотрите
sar -rили графики мониторинга: так видно, сколько памяти реально занимают ваши сервисы и не пора ли резать лишнее.