Настройка Selectel Cloud Platform VPS/VDS с Terraform и мониторингом

Управление виртуальными серверами через веб-консоль часто ограничивает гибкость и повышает риск ошибок, особенно когда инфраструктура растёт. Мы настраиваем Selectel Cloud Platform с использованием Terraform и GitOps-подхода, автоматизируя развёртывание и мониторинг. Наша команда реализует проект под ключ — от конфигурации до последующей поддержки, обеспечивая надёжную и безопасную работу ваших серверов.
Часто задаваемые вопросы

Настройка Selectel Cloud Platform (VPS/VDS)

Типичная проблема: вы заказали VPS в Selectel, но через консоль не хватает гибкости — хочется управлять инфраструктурой как кодом, повторяемо и версионируя. Или быстродействие дисков ниже ожидаемого, а миграция на локальный NVMe требует ручного вмешательства. При этом ручное управление через веб-интерфейс OpenStack Horizon чревато ошибками: случайно открытый порт SSH или неправильно настроенная security group могут привести к утечке данных. Чтобы этого избежать, мы применяем GitOps-подход: все изменения проходят через code review и автоматическое тестирование. Это сокращает время на отладку и снижает риски. В результате вы получаете надежную инфраструктуру с автоматическими бэкапами и мониторингом, а экономия на операционных расходах может достигать 40% по сравнению с ручным управлением.

Selectel работает на базе OpenStack — Horizon, Nova, Neutron. Это означает, что управлять можно через официальный Terraform-провайдер или напрямую через OpenStack CLI. Мы используем оба подхода в зависимости от задачи.

Мы более 5 лет работаем с OpenStack-инфраструктурой и выполнили 50+ проектов на Selectel. Это позволило наработать best practices для типовых конфигураций: от highload-сайтов до распределённых баз данных.

Почему Selectel стоит рассматривать для продакшена?

Selectel предоставляет российскую инфраструктуру с сертификатами соответствия, что важно для компаний с требованиями к локализации данных. При правильной конфигурации сетевого стека (Neutron, security groups, floating IP) можно получить гибкость, сопоставимую с AWS или GCP. Однако есть нюанс: диски на Ceph дают надёжность, но latency выше, чем у локальных NVMe. Для PostgreSQL или Redis критично выбирать флейворы с локальным SSD — разница в IOPS достигает 10-кратной.

Как автоматизировать развертывание VPS с помощью GitOps?

Мы применяем GitOps-подход: все конфиги в Git, изменения через Merge Request. Terraform-стек изолирован в отдельном репозитории, Ansible-роли — в другом. После apply проверяем состояние через terraform state list и интегрируем с GitLab CI.

Создание серверов через Terraform

Минимальный рабочий пример — сервер Ubuntu 22.04 с floating IP:

data "openstack_images_image_v2" "ubuntu" {
  name       = "Ubuntu 22.04 LTS 64-bit"
  most_recent = true
}

data "openstack_compute_flavor_v2" "small" {
  name = "1C-2GB"
}

resource "openstack_compute_instance_v2" "app" {
  name              = "app-server-01"
  image_id          = data.openstack_images_image_v2.ubuntu.id
  flavor_id         = data.openstack_compute_flavor_v2.small.id
  key_pair          = openstack_compute_keypair_v2.deploy.name
  availability_zone = "ru-1a"
  security_groups   = [openstack_networking_secgroup_v2.app.name]

  network {
    uuid = openstack_networking_network_v2.private.id
  }

  block_device {
    uuid                  = data.openstack_images_image_v2.ubuntu.id
    source_type           = "image"
    destination_type      = "volume"
    volume_size           = 20
    delete_on_termination = true
  }
}

resource "openstack_networking_floatingip_v2" "app" {
  pool = "external-network"
}

resource "openstack_compute_floatingip_associate_v2" "app" {
  floating_ip = openstack_networking_floatingip_v2.app.address
  instance_id = openstack_compute_instance_v2.app.id
}

После terraform apply сервер готов. Cloud-init выполняет первичную настройку — пакеты, SSH-ключи, hostname.

Как выбрать тип диска для VPS на Selectel?

Сравнение характеристик Ceph и локальных NVMe:

Параметр Ceph-хранилище Локальный NVMe/SSD
Надёжность Высокая (репликация) Средняя (нет реплики)
Latency случайного чт. ~5-10 мс ~0.1-0.5 мс
IOPS ~1000-5000 ~50000-100000
Цена (условно) Низкая Выше в 2-3 раза
Рекомендация Файловые сервера, бэкапы БД, Redis, кэши

Локальные NVMe диски обеспечивают в 10 раз меньшую латентность по сравнению с Ceph, что критично для PostgreSQL. Для highload-проекта мы настроили кластер из 5 серверов: 2 для бэкенда, 2 для БД на NVMe, 1 для кэша. Использовали Terraform для развертывания сети, security groups и floating IP, а Ansible для установки Nginx, PostgreSQL, Redis. Мониторинг через Prometheus с алертами в Telegram.

Процесс работы: от аудита до деплоя

  1. Аудит текущей инфраструктуры — оценка нагрузки, требований к I/O, сети, безопасности.
  2. Проектирование — выбор флейворов, подсетей, security groups, планирование IP.
  3. Реализация — GitOps-стек (Terraform + Ansible), настройка мониторинга (Prometheus, Grafana, Loki).
  4. Тестирование — проверка отказоустойчивости, нагрузочное тестирование (wrk, locust).
  5. Деплой — перенос данных, DNS-записи, документация.

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

Что входит в работу

  • Инфраструктура как код — полная Terraform-конфигурация (серверы, сети, security groups, floating IP, DNS).
  • Ansible-provisioning — установка ПО, настройка SSH, firewall, мониторинговых агентов.
  • Документация — описание стека, Runbook для инцидентов, список доступов.
  • Обучение — демонстрация управления через консоль и CLI.
  • Поддержка — неделя пост-деплой мониторинга, исправление замечаний.

Сроки ориентировочно

  • Один сервер с базовой конфигурацией — от 2 часов.
  • Кластер из 3+ серверов с сетью, мониторингом, Ansible — от 1 дня.
  • Полное развёртывание продакшен-среды со CI/CD — от 3 дней.

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

Типичные ошибки при настройке VPS на Selectel

  1. Использование Ceph для высоконагруженных БД — забывают про latency, получают тормоза.
  2. Публичные security groups — открывают SSH на 0.0.0.0/0, хотя можно ограничить по IP.
  3. Отсутствие бэкапов — snapshots не настроены, при сбое потеря данных.
  4. Путаница с сетями — не создают приватную сеть, используют публичную для всего.

Мы гарантируем, что после настройки инфраструктура будет соответствовать best practices: закрытые порты, автоматические бэкапы, мониторинг с алертингом. Чтобы получить консультацию по настройке именно вашего проекта, свяжитесь с нами. Мы оценим требования и предложим оптимальное решение. Закажите пилотный проект — мы настроим один сервер и покажем результат.

Официальная документация Selectel по OpenStack: docs.selectel.ru

Наши компетенции:

Последние работы

  • Разработка сайта компании B2B ADVANCE
    Разработка сайта компании B2B ADVANCE
    1542
  • Разработка веб-приложения для компании FEEDME
    Разработка веб-приложения для компании FEEDME
    1393
  • Разработка веб-сайта для компании БЕЛФИНГРУПП
    Разработка веб-сайта для компании БЕЛФИНГРУПП
    1081
  • Разработка интернет магазина для компании FURNORO
    Разработка интернет магазина для компании FURNORO
    1368
  • Разработка логотипа компании B2B Advance
    Разработка логотипа компании B2B Advance
    815
  • Разработка веб-приложения для компании Enviok
    Разработка веб-приложения для компании Enviok
    1139