paint-brush
Когда локальное решение лучше, чем облакок@adamzhaooo
624 чтения
624 чтения

Когда локальное решение лучше, чем облако

Слишком долго; Читать

Несмотря на растущую популярность облачного развертывания, локальное развертывание все же имеет свои преимущества.
featured image - Когда локальное решение лучше, чем облако
Adam (Xing Liang) Zhao HackerNoon profile picture
0-item
1-item



За время работы в Palantir я потратил значительное время на развертывание нашего программного обеспечения в облачных средах, а также значительную часть времени на развертывание нашего программного обеспечения в локальных (on-prem) средах (включая создание команды, которая именно этим и занимается). Я заметил, что, несмотря на общее предпочтение облачного развертывания, у развертывания on-prem все еще есть свои преимущества.



Переход от локальных к облачным вычислениям

За последние годы ИТ-ландшафт все больше отдает предпочтение облачным вычислениям, что обусловлено гибкостью предложений Infrastructure-as-a-Service (IaaS) и Platform-as-a-Service (PaaS). Глобальный рынок облачных вычислений вырос с 24,63 млрд долларов в 2010 году до 156,4 млрд долларов в 2020 году, и эта тенденция продолжается и, по прогнозам, превысит 1 триллион долларов к 2028 году. Этот стремительный рост обусловлен как новым спросом на вычисления в мире, так и миграцией локальных рабочих процессов в облако.


Для этого перехода есть веские причины: облако обеспечивает быстрое предоставление ресурсов, географическую избыточность и переход от капитальных затрат (CapEx) к эксплуатационным расходам (OpEx). Однако я считаю, что существуют определенные сценарии, в которых использование локальной инфраструктуры, особенно там, где особые технические требования, такие как детерминированная задержка, контроль на уровне оборудования и строгие меры безопасности, имеют первостепенное значение.


Прежде чем углубляться в сравнение облачных и локальных установок, давайте уделим немного времени изучению того, как обычно настраивается каждое развертывание.


Настройка Canonical On-Prem

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

  • Физический уровень : оборудование, такое как серверы, массивы хранения (SAN/NAS) и сетевое оборудование (маршрутизаторы, коммутаторы, брандмауэры). Вам также понадобится центр обработки данных для запуска ваших серверов.


  • Уровень виртуализации : часто реализуется с использованием гипервизоров, таких как VMware vSphere, Microsoft Hyper-V, или альтернатив с открытым исходным кодом, таких как KVM, обеспечивая виртуализированные ресурсы и изоляцию.


  • Хранение и вычисления : напрямую управляются, часто оптимизируются для определенных рабочих нагрузок с помощью пользовательских конфигураций (например, уровней RAID, механизмов кэширования).


  • Сеть : полный контроль над сетевыми протоколами, маршрутизацией и политиками безопасности, позволяющий точно настраивать QoS (качество обслуживания) и минимизировать задержки.


Настройка Canonical Cloud

В типичной облачной конфигурации инфраструктура абстрагируется и управляется поставщиком облачных услуг, который предлагает:

  • Виртуализированная инфраструктура : вычислительные экземпляры, виртуальные сети и хранилища предоставляются через API. Облачные технологии, такие как Kubernetes и бессерверные архитектуры, используются для оркестровки и масштабирования.


  • Управляемые услуги : базы данных (например, Amazon RDS, Google Cloud SQL), озера данных, службы AI/ML и другие расширенные аналитические инструменты предлагаются в качестве управляемых услуг, что снижает эксплуатационные расходы.


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


Сравнение

  • Масштаб и скорость : облако отличается эластичным масштабированием, чему способствуют механизмы горизонтального масштабирования, такие как группы автоматического масштабирования и бессерверные функции. Локальная инфраструктура требует тщательного планирования емкости и инвестиций в физическое оборудование, часто включающее вертикальное масштабирование. Если вы стартап, который не может ждать 9 месяцев новых вычислений, облако — это то, что вам нужно. Однако если вы крупное предприятие с возможностью прогнозировать вычислительную нагрузку на следующий год, то локальная инфраструктура может быть жизнеспособным вариантом.


  • Задержка: Локальные настройки могут достигать детерминированной низкой задержки из-за близости серверов и прямого контроля над сетевыми путями. Для приложений, чувствительных к задержке (например, высокочастотная торговля, аналитика в реальном времени), это может быть критически важно. Облачные среды, хотя и оптимизированы для низкой задержки с помощью таких функций, как AWS Direct Connect или Google Cloud Interconnect, могут вносить переменную задержку из-за таких факторов, как перегрузка сети (проблема шумных соседей) и накладные расходы на виртуализацию. Поэтому в случае, когда предсказуемая задержка и рабочие процессы с низкой задержкой имеют решающее значение для вашего бизнеса, локальные настройки могут быть неплохой идеей!


  • Стоимость: Модели ценообразования в облаке (оплата по мере использования, зарезервированные экземпляры) обеспечивают гибкость, но могут стать дорогостоящими для постоянных, объемных рабочих нагрузок, особенно с высокими расходами на вывод данных. Локальные решения, хотя и требуют значительных первоначальных капитальных затрат на приобретение оборудования, могут предложить более низкую совокупную стоимость владения (TCO) с течением времени, особенно для предсказуемых, высокозатратных рабочих нагрузок. Облачные модели могут быть дорогими, Dropbox сэкономил 16,8 млн долларов в 2016 году, когда переместил большую часть своего хранилища из AWS в собственные центры обработки данных. Вот статья, в которой более подробно рассматривается, как локальные решения могут сэкономить вам $$ .


  • Экспертиза: Локальные среды требуют глубоких знаний в обслуживании оборудования, сетевой инженерии и системном администрировании. Напротив, облачные среды перекладывают большую часть управления инфраструктурой на поставщика, позволяя командам сосредоточиться на разработке и развертывании приложений, часто используя методы DevOps и инструменты Infrastructure as Code (IaC), такие как Terraform или CloudFormation. SRE и системные администраторы в настоящее время редки, и вам, вероятно, понадобится значительный объем вычислений, чтобы оправдать найм команды этих людей для обслуживания и эксплуатации локальной установки (и не забывайте, что вам нужна устойчивая ротация дежурств!)


  • Безопасность: Локальные настройки обеспечивают полный контроль над конфигурациями безопасности, от физических мер безопасности до детальной сегментации сети и протоколов шифрования. Этот контроль необходим для соответствия определенным стандартам соответствия (например, PCI-DSS, HIPAA). Напротив, облачные среды требуют доверия к мерам безопасности поставщика, хотя такие функции, как виртуальные частные облака (VPC), выделенное оборудование (например, AWS Outposts) и управляемые клиентом ключи шифрования, могут смягчить некоторые опасения. Если вы запускаете рабочие процессы, требующие этих средств управления безопасностью и протоколов, развертывание на месте может быть единственным выходом. Если нет, то может быть рассмотрена более жесткая безопасность! Однако я думаю, что текущие поставщики облачных услуг адаптируются и предлагают предложения, которые соответствуют некоторым из этих стандартов (например, AWS GovCloud ).


Заключение

В то время как облачные вычисления предлагают непревзойденную гибкость, масштабируемость и доступ к передовым управляемым сервисам, локальные решения по-прежнему незаменимы в сценариях, требующих низкой задержки, высокой безопасности и полного контроля над конфигурациями оборудования и программного обеспечения. По мере развития ИТ-ландшафта выбор между облаком и локальными решениями должен определяться конкретными техническими и бизнес-требованиями, гарантируя, что выбранная инфраструктура соответствует стратегическим целям организации, и вы можете использовать приведенные выше факторы и сравнения, чтобы сделать более обоснованный выбор того, какая настройка лучше для вас! Удачи!