Команды DevOps и инженеры по надежности сайтов (SRE) ежедневно работают с кодом. Это учит их тщательно изучать окружающий мир, делать проницательные наблюдения и находить неожиданные связи. В конце концов, хотя разработка программного обеспечения в высшей степени логична и математическа по своей природе, она, по крайней мере частично, является искусством.
Вас не убедило это заявление? Рассмотрим параллели между самыми выдающимися архитектурными подвигами в истории и современной разработкой программного обеспечения. Это удачное сравнение: так же, как разработка программного обеспечения, архитектура использует сложные математические расчеты для создания чего-то прекрасного. И в обеих дисциплинах небольшой просчет может привести к значительным последствиям. Удивительно, но многие известные архитектурные ошибки аналогичны проблемам, которые мы находим в коде.
Помните, вдохновение повсюду — если вы знаете, где искать. Вот несколько уроков, которые инженеры-программисты могут извлечь из архитектурных прозрений на протяжении веков, особенно в отношении будущего самовосстанавливающихся систем.
Урок 1. Пограничные случаи всегда будут использовать уязвимости системы
Башня Citicorp, которая теперь называется 601 Lexington, была завершена в Нью-Йорке в 1977 году, и в то время она была седьмым по высоте зданием в мире. Ультрасовременный дизайн небоскреба включал в себя три сваи высотой более 100 футов. Это было чудо завершения. Однако студент бакалавриата вскоре обнаружил кое-что неприятное: сильный ветер. может нарушить целостность здания. В частности, если в углы башни Ситикорп обрушивались сильные порывы ветра, конструкция могла рухнуть — в буквальном смысле. край случай.
Шанс обрушения башни составлял один к 16 каждый год. Эти шансы могут соблазнить кого-то, сидящего за игровым столом, но перспективы были мрачными для архитекторов и инженеров-строителей, стоящих за Citicorp Tower. К счастью, техники смогли усилить болтовые соединения здания. Катастрофы удалось избежать.
Инженеры-строители знали, что Citicorp Tower в конечном итоге столкнется с достаточно сильным ветром, который поставит под угрозу его опоры. Точно так же опытные инженеры-программисты знают, что надежного мониторинга производительности приложений (APM) и управления событиями недостаточно для защиты системы от неизбежных пограничных случаев. Это потому, что статические системы без машинное обучение (ML) возможности не могут справиться с неожиданными и незапланированными новыми ситуациями, такими как попутный ветер. Полагаясь исключительно на инструменты мониторинга, администратор-человек должен расшифровывать ошибки и эскалировать процесс управления инцидентами.
Чтобы сократить среднее время восстановления (MTTR)/среднее время обнаружения (MTTD), команды DevOps должны учитывать высокую вероятность пограничных случаев и работать над упреждающим развертыванием самообучающихся решений. Этот урок имеет большое значение, поскольку предвидение имеет решающее значение в инженерном деле.
Урок 2: «Построение самолета во время полета» создает бесконечный цикл
Трагические события доставили несколько самые важные уроки в истории авиации. Когда в 1954 году самолет испытал сильную декомпрессию во время полета и разбился, инженеры установили, что квадратные пассажирские окна являются ненужной точкой стресса. Отныне, самолеты были оснащены закругленными окнами. Пожары на борту привели к новому расположению сидений, в котором приоритет отдавался простоте эвакуации. Эти изменения спасли бесчисленное количество жизней.
Во многих отраслях, включая авиацию, нет возможности провести всестороннее стресс-тестирование продукта. Как упоминалось ранее, крайние случаи неизбежны. Главный вывод здесь заключается в том, что инженеры-программисты должны учитывать уязвимости своих систем, когда они обнаруживаются. Оттуда они должны обратиться к ним целесообразно. Для этого требуется две вещи: (1) определение и отслеживание правильных ключевых показателей эффективности (KPI) и (2) инвестирование времени и ресурсов в улучшение систем на основе соответствующих показателей.
Средняя инженерная команда инвестирует в 16-40 инструментов мониторинга, но они часто не достигают цели, по которой показатели демонстрируют успех. Менее 15 % команд отслеживают MTTD, поэтому они пропускают 66 % жизненного цикла инцидента. И четверть команд сообщают отсутствуют их соглашения об уровне обслуживания (SLA) несмотря на значительные инвестиции в отслеживание доступности. Это говорит нам о том, что сбор данных требует тщательного, систематического анализа, чтобы сократить его — точечных решений уже недостаточно.
Инженеры-программисты, команды DevOps и SRE должны отдавать приоритет процессам и инструментам, которые извлекают пользу из огромных объемов информации о доступности. Вместо того, чтобы просто наблюдать за критической ошибкой, они должны взять страницу из книги авиационного инженера и быстро принять важные решения. Секрет этого кроется в ИИ.
Урок 3. ИИ — фундаментальный строительный блок для самовосстанавливающихся систем
Полностью автономная, отлично функционирующая самовосстанавливающаяся система идеальна для любого инженера-программиста. Системы, которые сами себя исправляют, хороши для удовлетворения клиентов, поскольку они устраняют дорогостоящие простои, связанные с потребителем. Кроме того, они невероятно полезны для функций управления ИТ-услугами (ITSM), поскольку значительно сокращают потребность в утомительном управлении заявками. Создание такой системы требует нескольких компонентов, многие из которых в настоящее время недоступны. Но мы ближе к реальности самоисцеления, чем некоторые могут себе представить.
Отсутствие широкого распространения ИИ остается самым большим препятствием, с которым сегодня сталкиваются самовосстанавливающиеся системы. Хотя многие компании используют элементарные инструменты на основе искусственного интеллекта или машинного обучения, целостность этих инструментов вызывает сомнения. То есть многие инженеры имеют дело с искусственный интеллект для ИТ-операций (AIOps), которые следуют логике автоматизации на основе правил, а не автономным алгоритмам ИИ. Разница может показаться незначительной, но на практике это разница между часами потерянной производительности и миллионами возможных убытков.
Дело в том, что основанные на правилах инструменты AIOps анализируют взаимодействие между разрозненными точечными решениями и, вероятно, могут выявлять распространенные ошибки данных. Но системы, основанные на автоматизации, не могут обрабатывать эволюцию совершенно новых ошибок с течением времени и не могут предсказывать новые сбои в данных. Это потому, что администраторы-люди, кодирующие эти функции, просят систему следовать если это, то это логический узор. По-настоящему эффективные инструменты AIOps уменьшают количество ошибок, возникающих во всех четырех точках классической телеметрии — от обнаружения до разрешения — путем классификации новых и проблемных шаблонов еще до того, как технические специалисты узнают об их существовании.
Пока мы ждем неминуемая третья волна ИИ, эта версия AIOps наиболее близка к самовосстанавливающимся системам. Будет интересно проследить, как нынешние приложения AIOps проникнут в будущее ИИ, которое будет включать в себя полностью реализованную автоматизацию и возможности независимого мышления. Возможно, тогда инженеры-строители тоже пожнут плоды самовосстанавливающейся системы на основе ИИ.
- SEO-контент и PR-распределение. Получите усиление сегодня.
- Платоблокчейн. Интеллект метавселенной Web3. Расширение знаний. Доступ здесь.
- Источник: https://www.dataversity.net/what-architecture-can-teach-us-about-self-healing-systems/
- 1
- 15%
- a
- в состоянии
- О нас
- Принять
- адрес
- администраторы
- принял
- Принятие
- После
- соглашения
- AI
- Принятие AI
- AIOps
- алгоритмы
- Все
- Несмотря на то, что
- всегда
- суммы
- анализ
- анализировать
- и
- Применение
- Приложения
- APT
- архитектурный
- архитектура
- Искусство
- автоматизация
- автономный
- свободных мест
- в среднем
- авиация
- избегать
- Ждите
- основанный
- красивая
- , так как:
- до
- за
- полезный
- между
- Крупнейшая
- Заблокировать
- книга
- Строительство
- бизнес
- под названием
- не могу
- возможности
- случаев
- шанс
- изменения
- Город
- классический
- ближе
- код
- Кодирование
- коллапс
- лыжных шлемов
- Общий
- сравнение
- завершение
- комплекс
- компоненты
- скомпрометированы
- Коммутация
- Последствия
- Рассматривать
- строительство
- углов
- разбившийся
- Создайте
- создает
- критической
- Текущий
- В настоящее время
- клиент
- Удовлетворенность клиентов
- Порез
- ежедневно
- данным
- ДАТАВЕРСИЯ
- сделка
- расшифровывать
- решения
- поставляется
- демонстрировать
- развертывание
- Проект
- Несмотря на
- обнаружение
- Разработка
- DevOps
- разница
- катастрофа
- открытый
- безрассудство
- дело
- время простоя
- каждый
- Ранее
- Edge
- эффективный
- ликвидировать
- работает
- инженер
- Проект и
- Инженеры
- достаточно
- полностью
- ошибка
- ошибки
- особенно
- Даже
- События
- События
- со временем
- эволюция
- Эксплуатировать
- извлечение
- Лицо
- знаменитый
- БЫСТРО
- несколько
- Найдите
- пожары
- следовать
- форма
- от
- полностью
- функционирование
- Функции
- фундаментальный
- будущее
- Будущее ИИ
- Азартные игры
- идет
- хорошо
- мрачный
- обрабатывать
- здесь
- High
- очень
- Удар
- ЧАСЫ
- Как
- Однако
- HTML
- HTTPS
- человек
- идеальный
- определения
- идентифицирующий
- огромный
- важную
- улучшение
- in
- инцидент
- включают
- включены
- невероятно
- независимые
- индикаторы
- промышленности
- неизбежный
- информация
- Вдохновение
- вместо
- целостность
- Интеллекта
- взаимодействие
- интересный
- инвестирование
- инвестиций
- Инвестирует
- вопросы
- IT
- ИТ сервис
- подвергать опасности
- Основные
- Знать
- Отсутствие
- вести
- УЧИТЬСЯ
- изучение
- привело
- урок
- Уроки
- уровень
- Жизненный цикл
- Вероятно
- Живет
- логический
- Длинное
- дольше
- посмотреть
- потери
- сделать
- неисправности
- управление
- многих
- отметка
- чудо
- математический
- упомянутый
- Метрика
- миллионы
- минут
- ошибки
- смягчать
- ML
- Модерн
- Мониторинг
- самых
- природа
- Необходимость
- потребности
- Новые
- New York
- Нью-Йорк
- роман
- шансы
- Onboard
- Outlook
- Parallels
- часть
- Патчи
- шаблон
- паттеранами
- производительность
- Платон
- Платон Интеллектуальные данные
- ПлатонДанные
- Точка
- пунктов
- возможности,
- возможное
- мощный
- практика
- предсказывать
- представить
- Расставляйте приоритеты
- приоритезация
- вероятность
- процесс
- Процессы
- Продукт
- производительность
- для защиты
- достигать
- Реальность
- реализовать
- реализованный
- Recover
- уменьшить
- по
- усиливает
- соответствующие
- надежность
- остатки
- замечательный
- отчету
- требуется
- Постановления
- Полезные ресурсы
- Награды
- надежный
- удовлетворение
- закаленный
- Secret
- обслуживание
- несколько
- значительный
- существенно
- Аналогичным образом
- просто
- сайте
- Сидящий
- обстоятельства
- Шифер
- So
- Software
- разработка программного обеспечения
- Инженер-программист
- разработка программного обеспечения
- Решения
- некоторые
- Кто-то
- удалось
- Скоро
- конкретно
- площадь
- современное состояние
- заявление
- стресс
- сильный
- структурный
- Структура
- "Студент"
- предмет
- успех
- такие
- система
- системы
- ТАБЛИЦЫ
- взять
- команда
- команды
- технологии
- говорит
- Ассоциация
- Будущее
- мир
- их
- сами
- задача
- вещи
- В третьих
- мысль
- три
- Через
- билет
- время
- в
- сегодня
- слишком
- инструменты
- Башня
- трек
- Отслеживание
- Неожиданный
- us
- ценностное
- версия
- Уязвимости
- Wave
- Что
- который
- полностью
- широко распространена
- будете
- ветер
- окна
- ветры
- Работа
- Мир
- бы
- год
- зефирнет