On-premise: что это и зачем нужно

Храним данные на собственных машинах

On-premise: что это и зачем нужно

Когда у вас есть проект с сервером и базой данных, их нужно где-то разложить и настроить. Проще всего купить инфраструктуру у облачного провайдера: он выдаст нужные мощности, обеспечит доступ пользователей к программе, поможет настроить систему.

Но если понадобится какой-то редкий сценарий использования или доступ к данным без интернета, нужно организовывать свою инфраструктуру. On-premise — это как раз про такой случай. Рассказываем подробнее: зачем нужно, когда выгодно и когда невыгодно.

Что такое on-premise

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

Только вы контролируете, кто будет иметь доступ к данным. Но если питание в серверной отключится, сервис станет недоступен.

Что такое on-premise

Что такое 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 пользователь отвечает за всё.

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, а справа — при использовании облака:

Капитальные расходы (CAPEX) и операционные (OPEX)

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-решениям

On-premise или SaaS — что лучше?

Если задача типовая, SaaS почти всегда дешевле и быстрее. Если система сложная и требует глубокой настройки, иногда может быть лучше выбрать on-premise-решение. Но всё зависит от масштаба, бюджета и требований к контролю.

Правда ли, что on-premise всегда безопаснее облака?

Нет. Безопасность зависит от того, как настроена система. Если у компании нет сильной ИТ-команды, облако может быть надёжнее. Но при грамотной настройке on-premise даст более строгий контроль над данными.

Можно ли перейти с on-premise на облако?

Да, но это будет непросто. Нужно перенести данные, переписать часть инфраструктуры, учесть совместимость. Например, если приложение использует локальное хранилище файлов, то в облаке придётся перейти на объектное хранилище.

Возможность перехода лучше заложить заранее, учитывая это в архитектуре.

Бонус для читателей

Если вам интересно погрузиться в мир ИТ и при этом немного сэкономить, держите скидку 16% на все курсы Практикума. Ей можно воспользоваться с 10 по 20 марта.

Вам может быть интересно
medium