Чтобы поддерживать темпы развития, ИТ-компаниям жизненно необходимы вычислительные ресурсы. Нехватка инфраструктуры — это одна из «болезней роста» разработчиков приложений и сервисов.

В глобальном смысле специалистам необходимо решить две задачи: выбрать технологический стек и построить инфраструктуру. И если с первой все более-менее понятно (все упирается в личные предпочтения и фреймворки, с которыми работает команда разработчиков и на которых построены другие приложения коллектива), то во втором случае возможны разные ситуации.

Многие небольшие компании закупают аппаратное обеспечение под MVP, тесты и проверку гипотез. Но такой подход влечет за собой ряд неудобств.

Альтернативное решение — готовые виртуальные машины в облаке.


Ситуация: локальное решение (on-premise)


В этом случае придется закупать новое оборудование, а для этого нужны стартовые инвестиции. По статистике, большинство основателей стартапов запускают проект на личные средства. У них не так много ресурсов, чтобы расходовать ценный бюджет на покупку железа. Существуют десятки других задач, на которые они могут направить деньги. Если проект не выгорит, а MVP придется свернуть, то железо будет простаивать. Возможно, его придется перепродать со скидкой.

В то же время для сборки и обслуживания сколько-нибудь серьезного серверного оборудования нужна профильная экспертиза. Так, одна из небольших команд поделилась с нами опытом запуска домашнего сервера. Им пришлось разбираться с коннекторами QSFP28 и даже перепаивать одну из сетевых карт. В попытке сэкономить, они приобрели подержанные NIC на аукционе, но на одной из плат не оказалось flash-памяти. Каждый раз, когда что-то шло не по плану, специалисты тратили часы на поиск решения в интернете. Хотя могли потратить это время на разработку продукта. В принципе квалифицированный системный администратор помог бы подобрать качественное железо и избежать многих проблем, однако нанимать его для сопровождения одной-двух машин не всегда выгодно.

Закупая собственное оборудование, компания несет расходы на его обслуживание. Это — неотъемлемая часть совокупной стоимости владения (TCO), которая определяет стоимость содержания инфраструктуры. Показатель включает затраты на электричество, аренду и банальное поддержание машинного зала в надлежащем виде. Импровизированные серверные комнаты имеют тенденцию приходить в беспорядок и «обрастать» проводами. Вообще, от этой проблемы страдают даже крупные организации. Еще в начале нулевых HP решила консолидировать свои машинные залы, разбросанные по разным офисам, в рамках нескольких дата-центров. В ходе аудита специалисты обнаружили почти пятьсот серверных, расположенных в кладовках без необходимых коммуникаций.

Плохое планирование и отсутствие базовых стандартов повышают вероятность отключений оборудования. Достаточно включить пылесос не в ту розетку. Обеспечение бесперебойной работы инфраструктуры — это отдельная строка расходов для стартапа. Примером может быть кейс проекта LKML.org, где обсуждают изменения в ядре Linux. Сайт хостился на домашнем сервере одного из разработчиков. Внезапный скачок напряжения повредил материнскую плату, а владельца не оказалось дома, чтобы исправить проблему.

Наконец, запуская сервер в контуре домашней сети, необходимо уделять пристальное внимание информационной безопасности. Следить за наличием уязвимостей и патчей к ним, управлять обновлениями. Кроме того, не каждый интернет-провайдер разрешит работу с коммерческим сервером на стандартном тарифе. Подавляющее большинство телекомов не позволяет использовать аплинки для этих целей.

В целом опытные стартаперы отмечают, что при построении ИТ-инфраструктуры стоит задать себе вопрос: является ли это нашей сферой компетенций? Если ответ положительный — например, речь идет о разработке сервиса для бэкапирования — то лучше сделать упор на собственное оборудование. В противном случае имеет смысл переложить работу с железом на плечи сервис-провайдера.

Чем поможет виртуальный сервер


В первую очередь, арендуя виртуальные серверы, получаем экономию на капитальных затратах. Для легковесных приложений и тестирования гипотез подходят самые бюджетные «виртуалки». Отдельные энтузиасты умудряются запускать на них по 18 статических сайтов. При необходимости количество CPU и памяти можно быстро увеличить. Так, малазийский стартап ClicknCare успешно применяет виртуальные серверы, чтобы масштабировать свою телемедицинскую платформу, объединяющую сертифицированных врачей и пациентов.

В облаке небольшим компаниям не приходится думать о настройке и администрировании инфраструктуры. Специалисты могут сконцентрироваться на разработке.

С точки зрения стоимости важно учитывать не только прямые затраты, но и риски нарушения доступности сервиса. Да, падения в облаках тоже случаются, но здесь важно, как быстро устраняются их последствия. Если вышел из строя домашний сервер, а у вас нет запасных компонентов, сервис будет лежать до тех пор, пока они не будут куплены. У облачного провайдера имеется запас оборудования, а все временные нормы на восстановление прописаны в SLA. К слову, разработчик LKML.org после инцидента с материнской платой решил перенести проект на виртуальный сервер.

Работа с виртуальными серверами в облаке провайдера также повышает безопасность инфраструктуры. Согласно исследованию, которое провело агентство Nucleus Research в 2020 году, миграция из on-premise в облако уменьшает число ИБ-инцидентов на 43%. Облачный провайдер предлагает широкий набор дополнительных инструментов — антивирусы, файрволы, системы резервного копирования. Данные от потерь также защищает изолированная инфраструктура хранения данных и географически распределенная сеть доставки контента.

Что предложит Compute Cloud


Готовые виртуальные машины для небольших компаний и корпоративных команд, которые хотят быстро запустить новый цифровой проект, есть у нас в сервисе Compute Cloud.



Пользователи получают машину с полноценной операционной системой. Среди доступных образов — CentOS, Debian, Rocky Linux, Ubuntu и Astra Linux.



Также «из коробки» можно установить дополнительные приложения. Например, платформу для организации электронной почты CommuniGate Pro.



Управлять объемом вычислительных ресурсов — количеством ядер и дисков — можно в любое время. Минимальная конфигурация сервера включает 1 vCPU / 1 RAM / 16 Гб, а максимальная — 112 vCPU / 1536 ГБ / 30 Тб. Также на базе Compute Cloud можно построить отказоустойчивую архитектуру. Достаточно развернуть приложение на нескольких серверах в одной сети. Разработчикам не нужно привлекать системных администраторов для настройки.



Дополнительно у нас реализован сервис сетевой балансировки на основе DNS-протокола — GSLB. Он управляет трафиком (алгоритмы weighted round robin и failover group) в рамках геораспределенной архитектуры и перенаправляет его на резервную площадку в случае сбоя. Справедливости ради стоит заметить, что виртуальные серверы имеют некоторые ограничения. Все же они имеют определенный потолок в плане масштабируемости и связанности — когда управлять парком таких серверов становится неудобно. Поэтому для построения высоконагруженной инфраструктуры необходима полноценная виртуальная инфраструктура.

Полноценная виртуальная инфраструктура


Виртуальные серверы удобны для развертки относительно компактных проектов. Для запуска более сложных с архитектурной точки зрения решений потребуется IaaS. Это — своеобразный «цифровой комбайн», который в руках опытного инженера может выполнить любую задачу. Он пригодится когда:

  • Неизвестна нагрузка. У полнофункциональной инфраструктуры нет потолка ресурсов. Можно запускать цифровые проекты любого масштаба. В том числе приложения, требующие работы с графическими картами и высокочастотными процессорами.
  • Нужны дополнительные сервисы. Облачные провайдеры предлагают широкий спектр вспомогательных инструментов. Среди них, антивирусы, файрволы, объектные хранилища, системы резервного копирования и disaster recovery. Все они имеют глубокие настройки. Кроме того, IaaS позволяет развернуть виртуальный ЦОД (vDC) через панель управления — без заявок в поддержку.

Напоследок отметим, что виртуальные машины Compute Cloud могут служить точкой входа для полноценной виртуальной инфраструктуры. Например, один из наших клиентов подключил такую машину для хранения образов Redis и настроил к ней доступ по VPN. Теперь IP-адрес для подключения к БД не виден со стороны интернета, что повышает безопасность — провести DDoS-атаку стало значительно сложнее.