Рубрики
Uncategorized

Оперативное превосходство для крупных приложений без сервеса

Оригинальная статья здесь: https://dashbird.io/blog/operational-excellence-serverless-Application/ Manage … Помечено с AWS, Serverless, DEVOPS.

Оригинальная статья здесь: https://dashbird.io/blog/operational-excellence-serverless-Application/

Управление приложениями в масштабе часто подходит как одна из самых больших проблем для бизнеса; Как это может работать гладко? Как мы Монитор так много ресурсов ? Как мы поддерживаем лучшие практики с постоянно развитой инфраструктурой? В этой статье мы проводим лучший подход к эксплуатации, глядя на Стратегия мониторинга без сервезна , Стратегия оповещения с сервезой Serverless и Безопасность и Соответствие лучшие практики.

Безсекретная проблема

В контейнерном приложении было бы где угодно между 5-20 серверами с бизнес-логикой внутри них. Чтобы отслеживать это, агент будет просто прикреплен к контролю всей системы и Предупреждение о любых вопросах Отказ Модель без серверов совсем другая , как мы знаем. В масштабе могут быть тысячи ресурсов, использующих десятки разных услуг, создающих мониторинг и оповещение гораздо более сложного.

Типичное приложение без сервеса будет выглядеть так:

Вызов 1:

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

Вызов 2:

Как * Инфраструктура растет, так что делает разнообразие неудач Отказ Хотя мы можем знать о нескольких точках провала в нашей собственной инфраструктуре, Невозможно знать их всех *. По этой причине лучше всего просматривать каждый ресурс как потенциальный источник отказа, который должен контролироваться.

Решение

Наблюдаемость.

Отличается от видимости, наблюдаемость — это мера внутренних состояний системы, выведенной по знанию его внешнего выхода.

Использование этого метода не требует помех и вместо этого помещает вывод данных на работу, помогая визуализировать и понимать здоровье и производительность приложения без сервеса.

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

Стратегия мониторинга приложений без сервезна

А Стратегия для мониторинга без прослушивания является ключом к пониманию Как работает ваше приложение, собирает Insights и обнаруживая возможности для повышения производительности и оптимизации затрат.

Во-первых, давайте посмотрим на основные голы мониторинга:

  • Сократите время для открытия для инцидентов, влияющих на клиента.
  • Увеличение доверия к строительству быстрого и итерации продуктов с минимальным риском.
  • Включение разработчиков сосредоточиться на клиентах, а не операций.
  • Учиться на ошибках и преодолевать больше вопросов.

Далее нам нужно провести некоторое отображение рисков (SLA), что делает ясно, какие параметры приемлемы.

  • Каковы требования к применению для Скорость , Время работы и Стоимость Отказ Эти три элемента переплетены и зависят друг от друга, поэтому важно сделать это ясно в начале.
  • Каково приемлемое время для обнаружения сбоев?
  • После открытия, какое приемлемое время для исправления ошибки или сбоя?

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

  1. Для инфраструктуры для проглатывания, навигации и допросить данные.
  2. Обнаружить неудачи как можно быстрее.
  3. Для быстрого отладки системы эффективно понять проблему.

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

Однако, возможно, самое важное качество для мониторинга без прослушивания является эластичность. Нам нужна архитектура для автоматического переваривания изменяющихся данных из постоянно меняющихся ресурсов, без накладных расходов импорта или настройки данных, чтобы сделать его читаемым. Вот как Tashbird вполне использует упругие приемущению данных.

Хотя большие виды изображения важны, поэтому являются специфическими видами уровней.

Уровень аккаунта и микровидсов

Цель : Выявлять основные проблемы и исправить их как можно раньше.

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

Уровень ресурсов

Цель : Чтобы понять здоровье конкретных ресурсов, производительность, расходы и связанные с ними проблемы.

Учитывая это место, где разработчики проводят большую часть своего времени, это Один из самых важных взглядов включить в свою стратегию. Например, посмотрев на ресурс лямбда, например, есть несколько областей для анализа: вызовы, ошибки, стоимость, холодные запуска и использование памяти. Нам нужно быть в состоянии сверлить в аномалии и прошедшие и настоящие ошибки, чтобы улучшить и лучше согласовать с лучшими практиками. Вот как dashbird делает это:

Уровень исполнения

Цель : Чтобы понять проблему подробно.

Это на уровне исполнения, которые мы можем Источник Полная активность Детали Как и продолжительность, использование памяти и начало и время окончания проблем и оптимизации. Идти глубже, тем не менее, мы можем посмотреть на профиль исполнения; Запросы на другие ресурсы, как долго это заняло, и его уровень успеха. Мы также можем обнаружить повторный и холодно начинается здесь.

Это с отличным мониторингом, мы можем защищать от известных и неизвестных неудач.

Стратегия оповещения приложений без сервера

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

Обнаружение отказа от журналов

Фильтрация журналов потоков в режиме реального времени для обнаружения сбоев — Критический для операций Отказ Dashbird имеет Автоматические оповещения Для данных журналов, приходящих без необходимости каких-либо изменений кода или агентов. Фильтрация также возможна с другими системами, однако, может быть длительным, чтобы настроить и трудно поддерживать, поскольку изменения в архитектуре без сервеса происходят со временем.

Метрические тревоги

Понятно, что решающее значение — это использование метрических сигналов тревоги, однако, общая задача — это масштаб метрик и что приоритетировать без слишком большого количества шума Отказ

Мы рекомендуем начать с Затрагивающие клиента метрики Отказ Например, начиная с Gateway API и спуске вниз по течению на функцию и базу данных, используемых в этом путешествии. Все эти компоненты в идеале должны быть отслеживаться Отказ Тем не менее, альтернатива для тех, кто со временными ограничениями сосредоточен только на API. Отсюда, ошибки или проблемы с задержкой неизбежно появится, для которых вы можете расследовать, когда это необходимо.

Ведущие показатели является еще одной великой метрикой для приоритетов для максимального воздействия. Например, для ресурсов с высоким использованием памяти могут быть увеличенная задержка в условиях ниже по потоку. Этот эффект снежного кома Можно добавить огромное количество штамма Создание важно выявить рано.

Оперативное превосходство также учитывает Эффективные расходы И так Мониторинг затрат и тревоги хороши, чтобы включить в свою стратегию. Хотя у вас могут не иметь много рисков неожиданных увеличенных расходов, мы рекомендуем Настройка ограничений и оповещения от начала Отметьте одну меньше, чтобы беспокоиться.

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

Пример Dashbird доступных предупреждений:

Безверонная безопасность и соответствие наилучшей практикой

Безсекретная лучшая практика включает Непрерывное управление рисками и Оценка возможностей оптимизации Отказ Такие вещи, такие как шифрование, обычно устанавливают функции с правилом наименьших привилегий и обнаружение избыточных услуг для улучшения затрат, являются всей этой частью. Dashbird постоянно проверяет всю инфраструктуру, чтобы обеспечить это:

Также в лучшей практике — План и активно практиковать управление инцидентами Отказ Тестовые сбои и ошибки в промежуточной среде на регулярной основе, часто один раз в течение квартала достаточно, но практика зависит от Размер и влияние сбоя — Важное вознаграждение.

Для незапланированных случаев, это всегда лучшая практика в документировать их , установка времени в сторону для Обзор к предотвратить его снова . Главное, тоже Отслеживание фактической производительности против заявленных целей и SLA помогает дать Полный вид успеха приложения и области, которые могут быть улучшены .

Само собой разумеется, что Оперативное превосходство занимает много времени и практика, особенно в неверном.

Некоторые вещи, которые вы можете сделать сегодня, чтобы начать или продолжать делать:

Оригинал: «https://dev.to/dashbird/operational-excellence-for-large-scale-serverless-applications-11jo»