Основные понятия агента

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

Сетевой доступ

Для правильной работы агента Хаоса требуется исходящее подключение к конечным точкам службы Chaos Studio. В частности, виртуальная машина должна быть в состоянии достичь:

https://<region>.agents.chaos-prod.azure.com

Без этого подключения агент не получит инструкции или не сможет сообщить о своем состоянии. К другим точкам конфигурации сети относятся следующие:

  • Конфигурация NSG: Используйте тег службы ChaosStudio , чтобы разрешить исходящий трафик в группах безопасности сети.
    • Регулярно проверяйте, что правила NSG и параметры брандмауэра разрешают исходящий трафик к необходимым конечным точкам службы агента Хаоса.
  • Частное подключение: Приватный канал можно настроить для полного частного подключения. Дополнительные сведения см. в частной ссылке Chaos Studio для агентной документации.
  • Обязательный исходящий доступ: Для агента требуется явный исходящий сетевой доступ. Убедитесь, что у виртуальной машины есть шлюз NAT, правило исходящего трафика Load Balancer или общедоступный IP-адрес, так как исходящий доступ по умолчанию может быть недоступен в будущих развертываниях.

Безопасность

Безопасность — это основное внимание в проектировании агента Хаоса:

  • Управляемое удостоверение: Агент использует управляемое удостоверение Azure для проверки подлинности, устраняя необходимость хранения секретов на виртуальной машине.
  • Управление доступом на основе ролей (RBAC): Все операции хаоса инициируются экспериментом пользователя, а Azure RBAC гарантирует выполнение только авторизованных операций сбоев.

Дополнительные рекомендации по обеспечению безопасности и советы по устранению неполадок см. в разделе "Безопасность разрешений Chaos Studio".

Контроль

OS-Specific: ведение журнала

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

Зависимости

Правильная операция агента Chaos зависит от нескольких компонентов программного обеспечения и системных конфигураций:

  • Зависимости Linux:
    • Для некоторых агентных ошибок требуются различные зависимости. Например, проблемы, связанные с нагрузкой на ресурсы, зависят от утилиты stress-ng.
    • Установщик пытается автоматически установить stress-ng на дистрибутивах, поддерживающих автоматическую установку, таких как Debian/Ubuntu, RHEL и openSUSE.
    • Для некоторых дистрибутивов, таких как Azure Linux (Mariner), требуется ручная установка зависимостей.
    • Дополнительные сведения о зависимостях см. на странице совместимости ОС

Дополнительные сведения см. в документации по библиотеке ошибок Chaos Studio.

Архитектура

Агент Chaos запускается в качестве фоновой службы на виртуальной машине и развертывается с помощью расширения виртуальной машины. В зависимости от операционной системы:

  • Виндоус: Работает как служба Windows.
  • Линукс: Выполняется как системная служба.

Агент проходит проверку подлинности в Azure Chaos Studio с помощью управляемого удостоверения, назначаемого пользователем, подключенного к виртуальной машине. Он взаимодействует с серверной частью Chaos Studio для получения команд выполнения сбоя. К ключевым аспектам относятся:

  • Целевой идентификатор: Идентификатор целевой виртуальной машины.
  • Управляемое удостоверение эксперимента: Должен иметь по крайней мере доступ читателя на виртуальной машине для выполнения ошибок (необходимых для эксперимента).

Примечание.

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

Схема расширения виртуальной машины

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


Схема, показывающая, как платформа расширения виртуальной машины в Azure взаимодействует с клиентской виртуальной машиной и устанавливает агент студии хаоса.

Дополнительные сведения о требованиях к установке и удостоверениям см. в разделе "Безопасность разрешений Chaos Studio".

Файловый путь к установленным файлам

Агент пытается установить себя и свои зависимости в следующие файловые пути:

  • Windows: C:\Packages\Plugins\Microsoft.Azure.Chaos.ChaosWindowsAgent\<version>

  • Linux: /var/lib/waagent/Microsoft.Azure.Chaos.ChaosLinuxAgent-<version>
  • Зависимости Linux: Установлен в папке linux-x64 в приведенном выше расположении.
  • Сценарии Linux tc : некоторые сценарии, необходимые для сбоев сети, устанавливаются в следующем файловом пути: /.azure-chaos-agent/scripts/


Снимок экрана: пример терминала, показывающий файловый путь агента Chaos на компьютере Linux

Обслуживание и обновления

  • Обновляйте агент и его зависимости up-to, чтобы воспользоваться улучшениями производительности и исправлениями безопасности. Это можно сделать на странице проверки состояния агента. Агент Chaos в настоящее время не поддерживает автоматическое обновление.