DevOps, SRE и Platform Engineering

Движение Platform Engineering набирает обороты впечатляющими темпами в течение последних двух лет, появилась некоторая путаница в определении этого нового пространства и его сравнении с более устоявшимися категориями SRE и DevOps.

DevOps, SRE и Platform Engineering - это понятия, которые объединяют различные технические роли и практики, но при этом у них есть свои уникальные особенности.

Сравнение DevOps, SRE, Platform Engeneering

DevOps

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

DevOps как концепция была представлена в 2009 году Патриком Дебуа и Эндрю Шафером на конференции Agile. Они стремились преодолеть разрыв между разработкой и эксплуатацией программного обеспечения путем продвижения культуры сотрудничества и общей ответственности за весь жизненный цикл разработки программного обеспечения.

Автоматизация - это фундаментальный аспект инициативы DevOps. Она избавляет людей от необходимости выполнять много ручной работы. Она также помогает им быстрее внедрять обновления в производство и создает более эффективные контуры обратной связи между командами.

Задачи DevOps:

  • Автоматизация процессов разработки, тестирования и доставки ПО
  • Сотрудничество с разработчиками и операторами для создания и поддержки продуктов и сервисов высокого качества
  • Ускорение цикла разработки
  • Создание более эффективных контуров обратной связи между командами

SRE

SRE, или Site Reliability Engineering, была впервые предложена компанией Google в начале 2000-х годов для решения операционных проблем при управлении крупномасштабными сложными системами. Google разработал методы и инструменты SRE, такие как система управления кластером Borg и система мониторинга Monarch, для повышения надежности и эффективности своих сервисов.

SRE (Site Reliability Engineering) - это область, которая обеспечивает надежность и устойчивость веб-сайтов и приложений. Это означает, что SRE инженеры используют методы DevOps для автоматизации процессов, но их основной целью является обеспечение высокой доступности и быстрого восстановления после сбоев.

Задачи SRE:

  • Гарантировать надежность и устойчивость веб-сайтов и приложений
  • Использовать методы DevOps для автоматизации процессов
  • Разрабатывать инструменты для мониторинга, оповещений и управления системами.
  • Улучшать производительность систем и снижать время восстановления после сбоев.
  • Находить и устранять проблемы, связанные с производительностью и надежностью систем.
  • Контроль за бюджетами на ошибки.

SRE = ориентация на продуктив, работа без сбоев, эксплуатация.

DevOps - ориентация на скорость и непрерывность, и другие и блага разработки.

Platform Engineering

Платформенная инженерия - это роль, которая похожа на SRE, но с уклоном в область создания платформы для разработки и доставки приложений. Это означает, что Platform Engineers создают инфраструктуру и инструменты, которые позволяют командам разработки быстро создавать, тестировать и развертывать приложения.

Это более современная концепция, основанная на фундаменте SRE-инжиниринга. Точное происхождение Platform Engineering менее ясно, но в целом его понимают как продолжение практик DevOps и SRE, с акцентом на создание комплексной платформы для разработки продуктов, которая поддерживает всю перспективу бизнеса

Platform Engineering идет на шаг дальше, автоматизируя такие задачи, как развертывание инфраструктуры с центральной платформы. Таким образом, разработчики могут сосредоточиться на своей основной работе, а не на создании собственных инструментов и процессов.

Platform Engineering это фокус на обеспечении экосистемы, которая может быть эффективно использована с точки зрения DevOps и SRE.

15 различий

  1. Цель: DevOps - ускорение и автоматизация процессов разработки, тестирования и доставки ПО. SRE - обеспечение высокой доступности и устойчивости веб-сайтов и приложений. Platform Engineering - создание платформы для разработки и доставки приложений.
  2. История: DevOps была представлена в 2009 году Патриком Дебуа и Эндрю Шафером на конференции Agile. SRE была разработана компанией Google в начале 2000-х годов для решения операционных проблем при управлении крупномасштабными сложными системами. Platform Engineering - это более современная концепция, основанная на фундаменте SRE-инжиниринга.
  3. Основные задачи: DevOps инженеры работают в тесном сотрудничестве с разработчиками и операторами, чтобы разработать и поддерживать продукты и сервисы высокого качества. SRE инженеры гарантируют надежность и устойчивость веб-сайтов и приложений. Platform Engineers создают инфраструктуру и инструменты, которые позволяют командам разработки быстро создавать, тестировать и развертывать приложения.
  4. Фокус: DevOps - ускорение цикла разработки. SRE - надежность и устойчивость. Platform Engineering - создание платформы для разработки продуктов.
  5. Область применения: DevOps и SRE применяются в области операций. Platform Engineering - в области разработки.
  6. Автоматизация: DevOps и SRE используют методы автоматизации для ускорения процессов. Platform Engineering - для создания платформы для разработки продуктов.
  7. Ответственность: DevOps инженеры отвечают за разработку и поддержку продуктов и сервисов. SRE инженеры отвечают за надежность и устойчивость. Platform Engineers отвечают за создание инфраструктуры и инструментов для разработки продуктов.
  8. Сотрудничество: DevOps инженеры работают в тесном сотрудничестве с разработчиками и операторами. SRE инженеры работают в тесном сотрудничестве с разработчиками и инженерами по надежности. Platform Engineers работают в тесном сотрудничестве с командами разработки.
  9. Цель оптимизации: DevOps и SRE стремятся к оптимизации процессов. Platform Engineering - к созданию комплексной платформы для разработки продуктов.
  10. Инструменты: DevOps и SRE используют общие инструменты для автоматизации процессов. Platform Engineering - создает инфраструктуру и инструменты для разработки продуктов.
  11. Работа с кодом: DevOps инженеры работают в основном с кодом, пытаясь ускорить процесс его доставки. SRE инженеры также работают с кодом, но с целью обеспечить устойчивость и надежность. Platform Engineers работают в основном с инфраструктурой и инструментами для разработки.
  12. Масштабируемость: SRE инженеры чаще всего занимаются масштабированием, поскольку их основная цель - обеспечение высокой доступности, а значит, нужно гарантировать, что система сможет работать при большой нагрузке. DevOps инженеры также занимаются масштабированием, но не настолько, как SRE инженеры. Platform Engineers занимаются созданием инфраструктуры, которая позволяет масштабировать приложения, но реже работают с нагрузкой.
  13. Мониторинг: SRE инженеры занимаются мониторингом и решением проблем, когда что-то идет не так. DevOps инженеры также занимаются мониторингом, но в меньшей степени, чем SRE инженеры. Platform Engineers занимаются созданием инфраструктуры и инструментов для мониторинга приложений и систем.
  14. Доступность: SRE инженеры отвечают за высокую доступность приложений и систем. DevOps инженеры также занимаются обеспечением доступности, но не настолько, как SRE инженеры. Platform Engineers занимаются созданием инфраструктуры, которая позволяет обеспечить доступность приложений и систем.
  15. Сроки: DevOps инженеры работают в области ускорения процессов разработки и доставки продуктов, поэтому ставятся жесткие сроки. SRE инженеры работают с учетом требований надежности и устойчивости, поэтому сроки могут быть более гибкими. Platform Engineers работают с учетом требований разработки продуктов, поэтому сроки также могут быть более гибкими.

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

Метки:

Подписка на новости блога: