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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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