Что выбрать: облако, свой сервер или on-premise для систем управления проектами?

Извечный вопрос: где лучше размещать вычислительные мощности и рабочие данные – в контролируемом периметре (например, на собственном сервере по модели on-premise) или в готовой облачной инфраструктуре? На самом деле, единственно правильного ответа не существует. Поэтому ниже рассмотрим плюсы и минусы каждого варианта, чтобы вы смогли выбрать оптимальное решение для вашего бизнеса.

Поскольку эта тема нам близкая, будем говорить на примере системы управления проектами.

В чём проблема?

Если быть откровенными, то проблема чаще всего заключается в деньгах. Что выгоднее по вложениям: покупка готового решения под ключ (в нашем случае облачного сервиса, работающего по модели подписки) или «конструктора Lego» (например, программного обеспечения с открытым исходным кодом, такого как OpenProject), с которым прежде придется изрядно повозиться, чтобы собрать и настроить рабочую среду?

И мы получаем первый парадокс:

  • Если смотреть на вопрос поверхностно, то выгода очевидна: бесплатное ПО + своё железо получаются ощутимо дешевле. К примеру, окупаемость мощного аппаратного сервера составляет примерно 5-6 месяцев, если сравнивать его со стоимостью хостинга, аналогичного по характеристикам.
  • Но при более глубоком погружении выясняется, что даже полностью бесплатное программное решение, которое можно взять и доработать под себя, на поверку оказывается не бесплатным, а вполне себе дорогим.
  • Оказывается, что сама по себе программа – лишь ядро, требующее связанной инфраструктуры: сервера (или хостинга), мобильных приложений (если вы хотите управлять делами и задачами в пути), широкого сетевого канала, статического IP-адреса, бесперебойного питания, специального помещения (где будет стоять сервер, чтобы его никто не трогал и не испортил), системы бэкапов и много чего ещё. И это уже не говоря о штате обслуживающих специалистов – программистов и системных администраторов, которым нужно платить зарплату, больничные, отпускные, проводить корпоративы и платить премии, чтобы у них случайно не пропал интерес к работе.

В итоге выбор уже не так очевиден. Давайте погрузимся в детали.

Окупаемость аппаратных ресурсов

Представим, что вы покупаете аппаратный сервер и используете его в полной мере (не переплачиваете за простой ресурсов).

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

Пример такой конфигурации – Dell PowerEdge T140 (6-ядерный процессор Xeon, 64 ГБ оперативной памяти, набор из спаренных SSD-дисков по 960 ГБ). Примерная стоимость такой сборки на момент написания статьи – около 150-170 тыс. руб.

Здесь и далее цифры приводятся весьма условно – для понимания соотношений.

Dedicated-хостинг, при аренде аналогичных конфигураций, обойдётся примерно от 30-50 тыс. руб. в месяц. Нетрудно посчитать, что окупаемость сервера составит всего 5-6 месяцев.

Уже захотелось купить свой сервер? Не торопитесь. Сейчас расскажем об обратной стороне своего корпоративного «хостинга».

Дополнительные вложения в инфраструктуру

Чтобы сервер заработал и на нём наконец запустилось корпоративное ПО (в том числе упомянутая ранее система управления проектами), его необходимо настроить и подключить к сети Интернет, запитать и т.д.

Построение своей инфраструктуры может нарушить планы быстрой окупаемости вложения:

  • Обязательно требуется защищённое помещение с контролем доступа. Какая-нибудь подсобка не подойдёт. Слышали истории про то, как офисные сотрудники обрезают провода у «непонятных коробочек», которые мешаются им под ногами? Примерно так может начаться ЧП с полной неработоспособностью корпоративной сети.
  • В таком помещении желательно установить круглосуточное видеонаблюдение, а значит, добавляются расходы на камеры, прокладку кабелей, отдельный сервер для хранения видео и прочее.
  • Сервер требует стабильного питания. Небольшой ИБП способен максимум обслужить процесс правильного выключения (10-15 минут). Для длительного питания потребуется либо генератор, либо система из инвертора и ёмких аккумуляторов. И в первом, и во втором случае – это несколько сотен тысяч рублей разовых вложений.
  • Чтобы системные администраторы могли обеспечить полноценный доступ к внутренней сети извне, необходим статичный IP-адрес и широкий канал. Юрлицам интернет традиционно обходится дороже, чем физлицам. И даже если пренебречь расходами на прокладку кабелей, остаются немалые ежемесячные траты – на интернет и аренду IP. Это ещё пара тысяч ежемесячно.
  • Сервер должен кто-то обслуживать. Зарплаты сисадминам, разбирающимся с Linux-серверами (а именно на них работает почти любой софт с открытым кодом) – от 50-60 тыс. даже в регионах. В Москве и городах миллионниках – от 100 тыс. и выше. Если вам нужны специалисты, работающие с микросервисной архитектурой (с docker-контейнерами и Kubernetes), будет еще дороже.
  • Сисадмины отвечают только за работу сервера. Но есть ещё профильное ПО. Соответственно, потребуются программисты, способные не просто запустить и настроить web-сервис, но и обслужить его: переделать логику работы в отдельных моментах, написать дополнения/плагины, настроить интеграции и прочее. Например, OpenProject написан на Ruby. Программисты, знающие этот язык, обойдутся дороже, чем привычные PHP-шники – от 150-200 тыс. в месяц. Даже если нанять фрилансера на месяц-два, получатся солидные разовые вложения.

Итого, без учёта помещения и покупки лицензии на ПО:

  • Сервер – от 150 тыс.
  • Дизель-генератор – от 300 тыс.
  • Интернет + статичный IP – от 2-3 тыс. в месяц.
  • Сисадмин – около 150 тыс./месяц (это с налогами и взносами).
  • Программист – около 200 тыс./месяц (тоже с налогами и взносами).

Получается, что «бесплатная» система управления проектами обойдётся как минимум в 800-850 тыс. в первый месяц и далее по 300-350 тыс. ежемесячно.

Если такие расходы для вас приемлемы, поздравляем, вы готовы к запуску своего корпоративного сервера.

А что, если взять облачный хостинг?

То же самое бесплатное ПО можно развернуть на удалённом сервере. В этом случае вам не нужно задумываться о покупке своего оборудования, об организации подключения к питанию и к интернету, об услугах сисадмина на постоянной основе (его можно привлекать эпизодически) и о других технических моментах. За обслуживание инфраструктуры отвечает хостер. Вам остаётся только установить ПО и начать с ним работать.

Модель крайне интересная, поскольку из вложений остается только стоимость хостинга. Пока компания и проектная команда небольшая, вполне подойдут стартовые тарифы и даже VPS-хостинг (от 1500-2500 руб./месяц). По сравнению с описанными выше расходами это выглядит смешно.

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

Вот так выглядят примерные требования для OpenProject:

При 500 сотрудниках потребуется физический или облачный сервер с 8-ядерным процессором. Это обойдется уже 8-10 тыс. руб. ежемесячно (если вы хотите гарантированные ресурсы).

Не стоит забывать, что необходимость штатного программиста никуда не пропадет, а это плюс 200-250 тыс. в месяц.

Итого: 250+10=260 тыс. ежемесячных расходов.

Если у вас уже есть собственный IT-штат, то решение более чем рабочее.

Однако при пересчёте стоимости подписки на одного сотрудника получается совсем не дёшево: 260 000/500 рабочих мест = 520 руб.

Это дороже, чем средняя по рынку цена для готовых облачных систем управления.

Например, Projecto на 500 человек при оплате сразу на год обойдётся всего 288*500=144 тыс. в месяц (подробнее о тарифах). И в этом случае вы получаете формат «под ключ», регулярные апдейты, готовые мобильные приложения и официальный договор с ответственностью.

А что там с On-premise?

Предположим, что вам категорически не подходит модель хранения данных в стороннем облаке (это противоречит корпоративной культуре или ценность информации слишком высока). Если у вас нет желания разбираться с решениями на базе открытого кода или писать что-то своё с нуля, то можно «арендовать» готовое коммерческое решение.

On-premise-модель подразумевает, что вы развёртываете софт на своём оборудовании (в подконтрольной вам среде), но за апдейты и обслуживание программы по-прежнему отвечают её официальные разработчики. Для реализации такого подхода софт (в нашем случае программа для ведения проектов) поставляется в специальных контейнерах. ПО легко развернуть и запустить на собственном сервере. Среда полностью готова к эксплуатации. В случае закрытия багов и выпуска новой версии программа обновляется прямо внутри контейнера.

Отсутствие доступа к исходному коду позволяет гарантировать, что клиенты ничего не поломают, не испортят и не украдут интеллектуальную собственность (код программы).

Стоимость эксплуатации такого ПО складывается из двух составляющих:

  • расходы на сервер и его обслуживание (мы подробно рассмотрели их выше);
  • расходы на покупку лицензии.

Лицензии либо покупаются «навечно», либо арендуются по модели подписки, причём стоимость часто привязывается к количеству рабочих мест.

Даже если условно оценить стоимость «коробочной» редакции для On-premise по стандартным ценам на облако (хотя часто лицензии выходят дороже), бизнесу фактически придется купить продукт дважды (расходы на собственный хостинг мы уже считали, они примерно равны облачным затратам), а иногда и трижды, учитывая все издержки и наценки.

Позволить себе такой подход могут только крупные компании – то есть корпоративный сектор.

Тем не менее, несмотря на большие вложения, модель вполне может быть оправдана в определённых условиях: в этом случае данные остаются под полным контролем компании или проекта.

***

Теперь, когда с ценами разобрались, можно рассказать о других плюсах и минусах каждого решения.

Плюсы и минусы облачных систем управления проектами

Сначала о преимуществах облаков:

  • Максимально быстрый запуск. Система готова к работе сразу после оплаты. А иногда и без неё (в рамках тестирования или триала).
  • Комплексное решение «под ключ». Не нужны никакие программисты или системные администраторы.
  • Не требуется покупка и обслуживание собственного сервера.
  • Обновления (устранение багов, повышение безопасности и новые функции) устанавливаются автоматически.
  • Часто предоставляются готовые мобильные приложения.
  • Нет крупных разовых вложений – всё можно вписать в операционные расходы. Следовательно, не нужно задумываться об амортизации или о правильности расчёта чистой прибыли.
  • Простое масштабирование. Зачастую стоимость подписок привязывается к количеству рабочих мест либо к пакетам пользователей. Если проект растёт, достаточно просто нарастить подписку.

Недостатки облачных решений (в общих чертах):

  • Данные хранятся у третьего лица, а значит, они в любой момент могут быть потеряны или удалены. Никто не застрахован от чрезвычайных происшествий. А если бэкапы хранятся в одном ЦОДе, потерю нельзя будет восполнить или восстановить.
  • Решение предоставляется «как есть». Доработка под требования отдельного клиента маловероятна.
  • Если на собственном сервере ещё хоть как-то можно сэкономить (купить б/у, нанимать сисадмина только эпизодически и прочее), и само оборудование работает несколько лет и со временем окупается, то на облаке это невозможно. Со временем подписки будут только расти: инфляция + более дорогие новые конфигурации серверов при расширении. Почти все сервисы используют услуги партнёров – хостеров. И стоимость их вычислительных ресурсов не может не влиять на цену подписки.
  • У облачных решений (как у общего хостинга) есть предел масштабирования – ведь технически экземпляры ПО запускаются внутри одного физического сервера, как VPS-контейнеры. Для повышения производительность ПО необходимо переносить обработку в кластер, но так мало кто способен сделать (получается необоснованно дорого при работе с небольшим числом пользователей). Слишком крупным корпоративным клиентам подойдет только вариант использования  on-premise модели – как раз для того, чтобы система могла работать с большими объёмами данных в своём кластере (ну или, как вариант, будет специальная корпоративная подписка на облако, которая кратно дороже обычной).
  • Если перестать оплачивать подписку, ваши данные никто не будет хранить вечно. После небольшого периода ожидания они окончательно удаляются, чтобы не занимать место и освободить ресурсы для других клиентов.

Плюсы и минусы своего сервера

Какие преимущества можно получить:

  • Полный доступ к коду. Даже если вы покупаете ПО с коммерческой лицензией (без on-premise модели), исполняемые файлы, скорее всего, будут открыты для правок и редактирования. Доступ к коду – это всегда возможность доделать решения под себя, так, чтобы оно идеально вписывалось в ваши бизнес-процессы.
  • Возможность сэкономить «вдолгую» – когда окупятся вложения на покупку оборудования и настройку инфраструктуры.
  • Полный контроль данных, что чрезвычайно важно в некоторых сферах бизнеса, где особые требования к коммерческой тайне и конфиденциальности.
  • Возможность неограниченного масштабирования. Любое ПО с открытым кодом можно адаптировать для работы в кластере или в микросервисной архитектуре (если уделить этому достаточно времени и внимания).

Но минусов здесь больше:

  • Если ПО с открытым кодом или просто распространяется бесплатно, разработчики ни за что не отвечают. Ни о каких гарантиях не может быть и речи.
  • Все технические вопросы находятся в вашей зоне ответственности: обслуживание, ремонт, настройка, обновление и прочее. Любой вынужденный простой – это деньги (точнее их потеря).
  • Для качественного обслуживания сервера и программы управления проектами требуется квалифицированный персонал. Как минимум один программист и один сисадмин. Плохо, если обе роли совмещает один «универсал» (дёшево, но с большим количеством компромиссов, что называется «ни там, ни сям»).
  • Требуются крупные разовые вложения – по меньшей мере на покупку сервера и на организацию подключения к сетям (питание + интернет).
  • Далеко не самые низкие расходы на обслуживание работы сервера и ПО. Как минимум, это зарплаты соответствующим специалистам, а как максимум, организация охраны, видеонаблюдения, резервного питания, DNS-хостинга, создания и хранения бэкапов и т.п.
  • Запуск и доработка могут занимать нереально много времени. За этот период задача внедрения может потерять свою актуальность.
  • Программ с открытым кодом не так уж и много. А те, что есть, нельзя назвать удобными или функциональными. Многие разработчики предпочитают on-premise модель распространения, иначе их заработок стремится к нулю.
  • Никаких готовых мобильных приложений. Максимум – поддержка работы на малых экранах (адаптивный интерфейс).

Плюсы и минусы On-premise

К преимуществам развёртывания коммерческого решения на своих серверах можно отнести:

  • Быстрый запуск (как в классическом облаке), обычно требуется только минимальная настройка сервера.
  • Возможность получить готовые мобильные приложения.
  • Техподдержка и обновление по-прежнему остаются в сфере ответственности официальной команды разработчиков. Точно не придётся нанимать программистов.
  • Практически неограниченные возможности масштабирования, поскольку развёртывание происходит на выделенных серверах или внутри кластеров (без всяких VPS/VDS).
  • Данные хранятся и обрабатываются в контролируемом периметре, что может стать определяющим критерием для некоторых организаций.
  • Отдельные продукты можно купить «навечно». Даже если присутствует модель подписки, при отказе продления данные вы не потеряете: они останутся в контейнере, и их можно переместить на «холодное хранение» даже без выгрузки.

Минусы:

  • Нужно покупать и обслуживать свой сервер – крупные разовые и последующие вложения.
  • Необходимы услуги хотя бы приходящего системного администратора.
  • Решение поставляется как в облаке – без кардинальных доработок и адаптации («как есть»). Хотя вероятность повлиять на внедрение нужных фич у крупных клиентов заметно выше. Если доработка несложная, разработчики легко могут пойти навстречу.
  • По объёму вложений On-premise получается самым дорогим – вы одновременно покупаете «сервис» (продукт) и «железо» (сервер) со всеми вытекающими последствиями.

Выводы и рекомендации

Малому бизнесу и небольшим командам невыгодно покупать свой сервер и заниматься его обслуживанием. Получается слишком дорого, даже если само программное обеспечение взять бесплатно (на основе решений с открытым исходным кодом). Исключение – IT-проекты и компании, у которых достаточно свободных вычислительных ресурсов. Например, если уже есть свой IT-отдел и серверная. Тогда для поддержки и обслуживания системы управления проектами вполне можно найти свободное место.

Во всех остальных ситуациях гораздо проще и удобнее арендовать готовое облако. Выходит даже дешевле хостинга. Вся инфраструктура предоставляется под ключ.

On-premise модель подойдёт только крупным клиентам, которые не хотят тратить время и ресурсы на создание своего решения или мучиться с открытым исходным кодом (там часто много неявных проблем). Коммерческие лицензии – это гарантии качества и обязательства официальной техподдержки. Кроме того, кому-то могут быть очень важны условия хранения данных, например, они обязательно должны быть в контролируемом периметре.

Если ваше предприятие или проект относится к малому или среднему бизнесу, обратите внимание на Projecto. Это готовая облачная система управления проектами. Всё необходимое вы получаете в формате «всё включено».