Когда у вас есть проект с сервером и базой данных, их нужно где-то разложить и настроить. Проще всего купить инфраструктуру у облачного провайдера: он выдаст нужные мощности, обеспечит доступ пользователей к программе, поможет настроить систему.
Но если понадобится какой-то редкий сценарий использования или доступ к данным без интернета, нужно организовывать свою инфраструктуру. On-premise — это как раз про такой случай. Рассказываем подробнее: зачем нужно, когда выгодно и когда невыгодно.
Что такое on-premise
Это модель, при которой оборудование (hardware) и всё программное обеспечение (software) принадлежит вам: серверные стойки со всем софтом стоят в офисе или дата-центре компании. Вы всё делаете сами: покупаете железо, лицензионные программы, настраиваете софт, следите за охлаждением и безопасностью.
Только вы контролируете, кто будет иметь доступ к данным. Но если питание в серверной отключится, сервис станет недоступен.

Что такое IaaS, PaaS и SaaS
Чтобы немного прояснить картину, вспомним разные варианты работы бизнеса.
IaaS (Infrastructure as a Service). Компания арендует виртуальные серверы, сеть и хранилище, а остальное настраивают внутренние инженеры: ОС, базы данных, работу приложения. Это как удалённый компьютер, который администрирует пользователь. Ответственность за настройку лежит на том, кто управляет системой.
PaaS (Platform as a Service). Облачный провайдер даёт готовую платформу: сервер, ОС, рантайм, иногда базу данных — остаётся только загрузить код. Не нужно настраивать сервер или распределение нагрузки, вместо этого пользователь следит только за кодом и бизнес-логикой. Если приложение не работает, проблема чаще всего в коде, а не инфраструктуре провайдера.
SaaS (Software as a Service). Полностью готовый сервис по подписке, которым можно просто пользоваться через браузер. Никакой установки и серверов — всё обслуживает поставщик. Например, это могут быть онлайн-CRM или почта.
Полезный блок со скидкой
Если вам интересно разбираться со смартфонами, компьютерами и прочими гаджетами, и вы хотите научиться создавать софт под них с нуля или тестировать то, что сделали другие, — держите скидку 16% на все курсы Практикума. Она действует с 10 по 20 марта.
On-premise и облако: главные отличия
Главное отличие — где живёт инфраструктура и кто за неё отвечает. В облаке серверы находятся у провайдера, а вы арендуете мощности. В on-premise вы владеете оборудованием и сами его обслуживаете.
Посмотрите на таблицу разных вариантов работы. Фиолетовые пункты означают ответственность пользователя, жёлтые — облачного провайдера. Видно, что при on-premise пользователь отвечает за всё.

Что есть в этой таблице:
User Access / Identity — доступ пользователей и управление учётными записями. На этом уровне решается, кто может входить в систему и с какими правами: администратор, сотрудник, клиент. Здесь устанавливаются логины и пароли.
Data — данные. Это вся информация, которую хранит и обрабатывает система: базы данных, файлы, пользователи.
Application — приложение. Это программа компании. Код, бизнес-логика, интерфейс. На SaaS-опции вам уже не нужно создавать программу самим.
Guest OS — гостевая операционная система, то есть операционная система внутри виртуального сервера. Это могут быть Linux или Windows, на которых запускается приложение.
Virtualization — виртуализация. Технология, которая создаёт виртуальные серверы поверх физического оборудования. Можно запускать несколько виртуальных машин на одном сервере. Это повышает эффективность, иначе сервер может быть загружен на 10–20%, а остальное железо будет простаивать.
Network — сеть. Интернет, маршрутизация, файрволы, доступ между серверами. В контексте бизнеса на этом уровне происходит обмен запросами между клиентами и сервером.
Infrastructure — инфраструктура. Здесь находятся серверы, системы хранения, балансировщики нагрузки.
Physical — физическое оборудование. Реальные компьютеры, дата-центры, кабели —
то, что можно потрогать руками. Это на уровень ниже инфраструктуры.
Контроль и безопасность
On-premise даёт полный контроль над инфраструктурой. Вы сами решаете, какие порты открывать, что настроить в политиках безопасности, кто имеет доступ к серверу. Это важно, если бизнес работает с чувствительными данными.
Например, компании из сфер финансов, медицины и госсектора работают с важной информацией пользователей и стараются хранить все важные данные внутри организации. Тогда ошибки и уязвимости облачной конфигурации не приведут к утечке.
Даже если вся инфраструктура и оборудование хранятся внутри здания компании, это не значит, что их нельзя взломать. Самый простой способ — через компьютеры сотрудников. Злоумышленник может попросить подтвердить доступ к сервисам через фишинговую ссылку. Сотрудник компании вводит свои данные, и хакер входит во внутреннюю систему. То, что сервер стоит в здании, не поможет.
Облачная инфраструктура не всегда означает низкий уровень защиты. Провайдеры-гиганты инвестируют миллиарды в безопасность. Молодая компания вряд ли сможет построить защиту уровня Amazon. Поэтому вопрос не в том, где безопаснее вообще, а в требованиях и в том, как лучше справиться с управлением рисками на текущем этапе.
Капитальные расходы (CAPEX) и операционные (OPEX)
Расходы на on-premise и облачную инфраструктуру провайдера распределяются по-разному. На графике ниже слева показан рост расходов по модели on-premise, а справа — при использовании облака:

On-premise требует крупных вложений на старте — это CAPEX. Нужно купить серверы, оборудование, лицензии. Эти деньги вы тратите сразу.
Потом на графике появляется следующая ступень — это новые затраты для обеспечения растущих потребностей компании и клиентов. При этом посмотрите на реальное потребление, которое показано линией Usage: компания содержит большее количество инфраструктуры, чем реально используется. Получается, что расходы растут неравномерно: есть постоянные расходы на содержание и скачки при апгрейдах.
Облако работает по модели OPEX: вы платите ежемесячно за использованные ресурсы. Запустили больше серверов — заплатили больше. Остановили — сократили расходы. Здесь с финансами можно работать более гибко, поэтому компания может арендовать практически точно совпадающее с реальными нуждами количество мощностей.
Пример: интернет-сервис ожидает рост трафика на праздники. В облаке можно временно увеличить мощности. В on-premise придётся заранее купить дополнительные серверы, которые потом будут частично простаивать.
Основные преимущества модели on-premise
On-premise выбирают там, где важны контроль, предсказуемость и независимость. Вы не зависите от политики облачного провайдера, и никто не отключит сервис за нарушение условий договора.
Максимальная безопасность и контроль данных
В on-premise можно полностью изолировать систему от интернета. Например, база данных доступна только из внутренней сети. Если БД слушает только внутренний IP, извне к ней не подключиться. Это простой и эффективный уровень защиты.
Независимость от интернета и провайдера
Если приложение работает внутри корпоративной сети, оно может работать даже при падении внешнего интернета. Это важно для производственных предприятий.
На заводе с системой управления оборудованием на локальном сервере нет риска остановки работы из-за потери связи с облаком. Это не защищает от проблем вообще. Например, остаётся зависимость от электричества и внутренней инфраструктуры, поэтому компании строят резервные каналы питания и дублирующие серверы.
Гибкая настройка оборудования и ПО
В on-premise можно выбрать специфическое железо: мощные GPU, нестандартные сетевые решения. В облаке вы ограничены тем, что есть у провайдера.
Это может быть полезно, например, когда вы обучаете модель машинного обучения и хотите использовать редкую конфигурацию видеокарт. В этом случае on-premise даёт больше гибкости. Ещё можно глубже настраивать операционную систему и сетевые политики безопасности и доступов. Это важно для высоконагруженных и нестандартных систем.
Недостатки и сложности on-premise-решений
У решения может быть много преимуществ, но и недостатков тоже немало.
Высокие первоначальные затраты и сроки внедрения
Закупка оборудования может занять недели или месяцы — и это дорого. Нужно согласовать бюджет, выбрать поставщика, дождаться доставки. В облаке вы можете начать разработку в тот же день. Для стартапа, который хочет проверить гипотезу за месяц, это может быть критичным фактором.
Необходимость собственного ИТ-персонала
On-premise-решение — это ответственность. Всё, что ломается, придётся чинить самостоятельно. Если администратор забыл настроить бэкап, потеря данных может стать катастрофой.
Сложность масштабирования «вверх» и «вниз»
Если трафик вырос, а сервер не справляется, придётся докупать мощности. А если нагрузка упала, оборудование простаивает. Это делает on-premise менее гибким для быстрорастущих сервисов.
Для кого актуальна on-premise-модель сегодня
Несмотря на популярность облаков, on-premise остаётся актуальным выбором. Особенно там, где инфраструктура — стратегический актив компании.
Крупная корпорация может позволить себе собственный дата-центр, и иногда в долгосрочной перспективе это выгоднее.
Крупный бизнес с уникальными и критически важными системами
Банки, телеком-операторы, промышленные предприятия часто используют on-premise. Всё потому, что их системы слишком сложны и специфичны для типового облака.
Если сбой приводит к миллионным потерям, компании предпочитают полный контроль над инфраструктурой.
Организации с жёсткими требованиями к резидентности данных
В некоторых странах данные граждан должны храниться внутри государства. Например, медицинская клиника может хранить данные пациентов только в локальном дата-центре.
Гибридные модели: мост между on-premise и облаком
Гибридная модель сочетает оба подхода. Критические данные хранятся локально, а менее чувствительные сервисы — в облаке.
Например, база клиентов будет храниться в он-премисе, а фронтенд и маркетинговый сайт — в облаке. Если рекламная кампания вызовет всплеск трафика, облако быстрее масштабируется под нагрузку.
На примере ниже есть пользователи в офисе, удалённые пользователи, инфраструктура внутри компании и облачные мощности. Всё это функционирует вместе, и удалённые пользователи технически тоже могут получить доступ к ПО внутри on-premise.

Часто задаваемые вопросы про on-premise-решениям
On-premise или SaaS — что лучше?
Если задача типовая, SaaS почти всегда дешевле и быстрее. Если система сложная и требует глубокой настройки, иногда может быть лучше выбрать on-premise-решение. Но всё зависит от масштаба, бюджета и требований к контролю.
Правда ли, что on-premise всегда безопаснее облака?
Нет. Безопасность зависит от того, как настроена система. Если у компании нет сильной ИТ-команды, облако может быть надёжнее. Но при грамотной настройке on-premise даст более строгий контроль над данными.
Можно ли перейти с on-premise на облако?
Да, но это будет непросто. Нужно перенести данные, переписать часть инфраструктуры, учесть совместимость. Например, если приложение использует локальное хранилище файлов, то в облаке придётся перейти на объектное хранилище.
Возможность перехода лучше заложить заранее, учитывая это в архитектуре.
Бонус для читателей
Если вам интересно погрузиться в мир ИТ и при этом немного сэкономить, держите скидку 16% на все курсы Практикума. Ей можно воспользоваться с 10 по 20 марта.
