Эксперименты в условиях хаоса

В Azure Chaos Studio вы создаете и запускаете эксперименты хаоса. Эксперимент хаоса — это ресурс Azure, описывающий ошибки, которые следует выполнить, и ресурсы, на которых должны выполняться эти ошибки.

Эксперимент делится на два раздела:

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

    Например, у вас может быть селектор с именем AllNonProdEastUSVMs, в котором вы добавили все непроизводственные виртуальные машины на востоке США. Затем вы можете оказать нагрузку на ЦП, а затем нагрузку на виртуальную память для этих виртуальных машин, используя селектор.

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

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

Схема, показывющая макет эксперимента хаоса.

Эксперименты между подписками и несколькими клиентами

Эксперимент хаоса — это ресурс Azure, развернутый в подписке, в группе ресурсов и в регионе. Вы можете использовать портал Azure или REST API Chaos Studio для создания, обновления, запуска, отмены и просмотра состояния эксперимента.

Эксперименты хаоса могут нацеливаться на ресурсы в подписке, отличной от той, где проводится эксперимент, если подписка находится в одном клиенте Azure. Эксперименты хаоса могут использовать ресурсы в другом регионе, чем в эксперименте, если регион является поддерживаемым регионом для Chaos Studio.

Документирование экспериментов хаоса

Существует несколько ключевых аспектов процесса экспериментирования хаоса, которые можно отслеживать и изменять с течением времени. Одним из способов является использование рабочих элементов в Azure Boards или в GitHub Projects. Создавая выделенные рабочие элементы для каждого эксперимента, вы можете отслеживать детали, ход выполнения и результаты экспериментов структурированным образом. Эта документация может включать такие сведения, как назначение эксперимента, ожидаемые результаты, шаги, необходимые ресурсы и любые наблюдения или учебные материалы из эксперимента.

Товар Сведения
гипотезы Определение цели и ожидаемых результатов эксперимента
Целевая область Определите, какая часть системы будет подвергаться экспериментам хаоса (например, сети, базы данных, слоя приложений).
Продолжительность Укажите интервал времени для эксперимента хаоса.
Цель Определите конкретные целевые объекты или компоненты в системе.
Окружающая среда Определите, будет ли эксперимент выполняться в рабочей, промежуточной или среде разработки.
Наблюдения Запишите любые данные или поведение, наблюдаемые во время эксперимента.
Результаты Суммируйте выводы и результаты эксперимента.
Элементы действий Вывод списка элементов или шагов, которые необходимо выполнить на основе результатов.

Гипотеза является важным аспектом эксперимента хаоса, поскольку определяет цель и ожидаемые результаты эксперимента. Это помогает протестировать способность системы эффективно обрабатывать непредвиденные нарушения. Сформулировав четкую гипотезу, вы можете сосредоточить эксперимент на конкретных областях системы и собрать значимые данные для оценки ее устойчивости. Используя функции Azure Boards или GitHub Projects, вы можете сотрудничать с командой, назначать задачи, устанавливать сроки выполнения и отслеживать общий прогресс инициатив по проектированию хаоса.

Следующие шаги

Теперь, когда вы понимаете, что такое эксперимент хаоса, вы готовы: