Visitors have accessed this post 1148 times.

Чем HighLoad отличается от DevOps

0
1
1148
4 декабря 2020 11:59
Автор: Rebrain Me
HighLoad

Visitors have accessed this post 1148 times.

Если вы зайдете на hh и напишите в поисковой строке HighLoad или «высокие нагрузки», результаты поиска вас удивят. «Чистых» вакансий по высоким нагрузкам практически нет. Как правило, задачи HighLoad упоминаются в обязанностях DevOps-инженеров (правда, чаще это матерые спецы уровня Senior) или backend-разработчиков. Поэтому очень часто происходит смешение задач HighLoad и DevOps. Давайте разберемся, чем же HighLoad отличается от DevOps.

Возьмем DevOps-инженера Михаила. Он, со своей стороны, вроде бы обеспечивает необходимую часть для построения высоконагруженного приложения: автоматизирует процессы, настраивает мониторинг, следит за актуальностью версий и выкатками. Значит, он занимается еще и HighLoad? Нет, для HighLoad этого недостаточно. Высокие нагрузки требуют не только базовой автоматизации, но и отказоустойчивости, особенно в моменты пиковых наплывов пользователей.

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

SRE идет бок о бок с DevOps и решает следующие задачи:

  • стандартизация,
  • достижение баланса между отказами и релизами,
  • снижение стоимости отказов,
  • автоматизация,
  • безотказность работы.

Как видно из перечисленных задач, по сути SRE продолжает идею DevOps, добавляя к отказу от оргбарьеров, принятию фэйлов, постепенным изменениям, автоматизации свои ценности. Поэтому HighLoad и DevOps имеют очень много общего. Однако SRE содержит методы и рекомендации, которые необязательно входят в DevOps и которые необязательно знать нашему DevOps-инженеру Михаилу. Но без которых не обойтись инженеру по высоким нагрузкам. Тут важно отметить, что все эти принципы и практики работают не каждый сам по себе, а как единое согласованное целое.

SRE решает проблему доступности высоконагруженной системы, измеряя ее показателями инженеров, менеджеров и клиентов. Поэтому в SRE введены такие метрики, как SLA, SLI и SLO.

  •  SLA (Service Level Agreement / Соглашение об уровне обслуживания) — те самые 99,99% (или 99,97%, или еще какие-либо). Показывает допустимое и вычислимое время простоя системы, а также оговаривает штрафы за несоблюдение уровня.
  • SLI (Service Level Indicator / Показатель уровня обслуживания) — это измеряемые показатели времени выполнения, пропускной способности, количества сбоев в моменте, здесь и сейчас.
  • SLO (Service Level Objective / Цель уровня обслуживания) — это целевое значение для разных SLI. Отличие от SLA в том, что SLO обозначает цель, а SLA говорит о том, что произойдет, если она не будет достигнута.

Говоря о Highload системах, мы обращаемся к SRE, чтобы иметь четкое понимание цифр и целей, с которыми ведется работа в нашей высоконагруженной системе.

Дак в чем же отличие?

Сегодня специалист по высоким нагрузкам – это человек, работающий с огромным стеком технологий и количественных показателей, умеющий формализованно оценить любую по масштабам систему. Он и архитектор, и инженер (в том числе — по DevOps), и местами разработчик. Но главное, объединяющее HighLoad и DevOps, – это стремление к постоянному развитию и улучшению. Это не конечная точка, а путь, требующий каждодневного изучения новых технологий и выбора лучших решений для вашей системы.

От редакции

Если вам интересно посещать бесплатные онлайн-мероприятия по DevOps, Kubernetes, Docker, GitlabCI и др. и задавать вопросы в режиме реального времени, подключайтесь к каналу DevOps by REBRAIN

*Анонсы мероприятий каждую неделю

Практикумы для специалистов по инфраструктуре и разработчиков — https://rebrainme.com.

Наш Youtube-канал — https://www.youtube.com/channel/UC6uIx64IFKMVmj12gKtSgBQ.

Агентство Fevlake, проектируем и поддерживаем IT-инфраструктуры с 2012 года — https://fevlake.com.

Комментарии (3)
Введено символов из возможных
Не отвечать
Денис Данилов

«Дак» в чем же отличие? — «Дык» или «Так» ?
Для меня SRE — frontend, а DevOps — backend.
SLI, SLO и SLA — это больше для менеджеров.

Вам также может понравится

30 псевдонимов оболочки Bash в ОС Linux / Unix / Mac OS X
array(1) { [0]=> object(WP_Term)#11776 (16) { ["term_id"]=> int(6) ["name"]=> string(5) "Linux" ["slug"]=> string(5) "linux" ["term_group"]=> int(0) ["term_taxonomy_id"]=> int(6) ["taxonomy"]=> string(8) "category" ["description"]=> string(0) "" ["parent"]=> int(0) ["count"]=> int(28) ["filter"]=> string(3) "raw" ["cat_ID"]=> int(6) ["category_count"]=> int(28) ["category_description"]=> string(0) "" ["cat_name"]=> string(5) "Linux" ["category_nicename"]=> string(5) "linux" ["category_parent"]=> int(0) } } Linux

Оригинал статьи - https://www.cyberciti.biz/tips/bash-aliases-mac-centos-linux-unix.html

Псевдоним (он же алиас) bash - это ярлык для команд. Команда alias позволяет пользователю запускать любую команду или группу команд (включая параметры и имена файлов), вводя одно слово. Используйте команду alias, чтобы отобразить список всех определенных...

8
1
9 октября 2020
NMap
array(1) { [0]=> object(WP_Term)#976 (16) { ["term_id"]=> int(6) ["name"]=> string(5) "Linux" ["slug"]=> string(5) "linux" ["term_group"]=> int(0) ["term_taxonomy_id"]=> int(6) ["taxonomy"]=> string(8) "category" ["description"]=> string(0) "" ["parent"]=> int(0) ["count"]=> int(28) ["filter"]=> string(3) "raw" ["cat_ID"]=> int(6) ["category_count"]=> int(28) ["category_description"]=> string(0) "" ["cat_name"]=> string(5) "Linux" ["category_nicename"]=> string(5) "linux" ["category_parent"]=> int(0) } } Linux

Автор - Сергей Попов
Часть 1
Предистория
Наверняка, каждый смотрел фильмы про хакеров и задавался вопросом: откуда они знают, какие порты открыты в системе? Или как узнать, какие приложения запущены на сервере, не спрашивая об этом администратора? Вы можете сделать все это и даже больше вместе с небольшим инструментом под названием Nmap....

16
0
4 сентября 2020
Углубленная работа с nixops — настраиваем кластер mariadb galera
array(1) { [0]=> object(WP_Term)#11776 (16) { ["term_id"]=> int(6) ["name"]=> string(5) "Linux" ["slug"]=> string(5) "linux" ["term_group"]=> int(0) ["term_taxonomy_id"]=> int(6) ["taxonomy"]=> string(8) "category" ["description"]=> string(0) "" ["parent"]=> int(0) ["count"]=> int(28) ["filter"]=> string(3) "raw" ["cat_ID"]=> int(6) ["category_count"]=> int(28) ["category_description"]=> string(0) "" ["cat_name"]=> string(5) "Linux" ["category_nicename"]=> string(5) "linux" ["category_parent"]=> int(0) } } Linux

Автор - Юрий Изоркин

В предыдущей статье мы настроили управление одной удаленной системой с помощью утилиты nixops. Давайте теперь попробуем более сложный вариант — поднимем еще 3 удаленные системы и настроим кластер MariaDB Galera.
Установка удаленных систем
Устанавливаем на 3 удаленных системах OC NixOS с такой конфигурацией (используется...

2
0
15 января 2021