azure.azcollection.azure_rm_autoscale – Управление настройками автоматического масштабирования Azure
Примечание
Этот плагин входит в коллекцию azure.azcollection (версия 1.3.1).
Для его установки используйте: ansible-galaxy collection install azure.azcollection.
Для использования в книге задач укажите: azure.azcollection.azure_rm_autoscale.
Введено в версии 0.1.2: коллекции azure.azcollection
Обзор
- Создание, удаление настроек автоматического масштабирования.
Требования
Ниже перечислены требования, необходимые на хосте, на котором выполняется этот модуль.
- python >= 2.7
- azure >= 2.0.0
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии | ||
|---|---|---|---|---|
| ad_user строка | Имя пользователя Active Directory. Используется при аутентификации пользователем Active Directory, а не служебным принципалом. | |||
| adfs_authority_url строка добавлен в 0.0.1 azure.azcollection | URL-адрес полномочий Azure AD. Используется при аутентификации с помощью имени пользователя/пароля и наличии собственного полномочия ADFS. | |||
| api_profile строка добавлен в 0.0.1 azure.azcollection | По умолчанию: "latest" | Выбирает профиль API для использования при общении с Azure-сервисами. Значение по умолчанию latest подходит для общедоступных облаков; будущие значения позволят использовать Azure Stack. | ||
| append_tags логический тип |
| Используется для управления тем, является ли поле тегов стандартным или просто добавляется к существующим тегам. В случае стандартного значения любые теги, не найденные в параметре тегов, будут удалены из метаданных объекта. | ||
| auth_source строка добавлен в 0.0.1 azure.azcollection |
| Управляет источником учетных данных для аутентификации. Также может быть задан через переменную окружения ANSIBLE_AZURE_AUTH_SOURCE. При установке в значение auto (по умолчанию) приоритет имеет параметры модуля -> env -> credential_file -> cli. При установке в значение env, учетные данные будут считываться из переменных среды.При установке в значение credential_file, профиль будет считываться из ~/.azure/credentials. При установке в значение cli, учетные данные будут взяты из профиля Azure CLI. subscription_id или переменная среды AZURE_SUBSCRIPTION_ID могут использоваться для определения идентификатора подписки, если их несколько, иначе используется стандартная подписка az cli.При установке в значение msi, хост-машина должна быть Azure-ресурсом с включенным расширением MSI. subscription_id или переменная среды AZURE_SUBSCRIPTION_ID могут использоваться для определения идентификатора подписки, если ресурсу предоставлен доступ к нескольким подпискам, иначе выбирается первая подписка.Параметр msi был добавлен в Ansible 2.6. | ||
| cert_validation_mode строка добавлен в 0.0.1 azure.azcollection |
| Управляет поведением проверки сертификата для Azure-конечных точек. По умолчанию все модули проверяют сертификат сервера, но при использовании прокси-сервера HTTPS или в случае Azure Stack может потребоваться отключить это поведение, передав ignore. Также может быть задан через профиль файла учетных данных или переменную среды AZURE_CERT_VALIDATION. | ||
| client_id строка | Идентификатор клиента Azure. Используется при аутентификации с помощью служебного принципала. | |||
| cloud_environment строка добавлен в 0.0.1 azure.azcollection | По умолчанию: "AzureCloud" | Для облачных сред, отличных от общедоступного облака США, имя среды (как определено в Azure Python SDK, например, AzureChinaCloud, AzureUSGovernment) или URL-адрес конечной точки обнаружения метаданных (необходим для Azure Stack). Также может быть задан через профиль файла учетных данных или переменную среды AZURE_CLOUD_ENVIRONMENT. | ||
| enabled логический тип |
| Указывает, включена ли автоматическая масштабируемость для ресурса. | ||
| location строка | Расположение ресурса. | |||
| name строка / обязательно | Имя ресурса. | |||
| notifications строка | Коллекция уведомлений. | |||
| custom_emails строка | Список пользовательских электронных адресов. Это значение может быть null или пустым, в этом случае этот атрибут будет проигнорирован. | |||
| send_to_subscription_administrator логический тип |
| Значение, указывающее, следует ли отправлять электронное письмо администратору подписки. | ||
| send_to_subscription_co_administrators логический тип |
| Значение, указывающее, следует ли отправлять электронное письмо соадминистраторам подписки. | ||
| webhooks строка | Список URI веб-хуков уведомлений. | |||
| password строка | Пароль пользователя Active Directory. Используется при аутентификации пользователем Active Directory, а не служебным принципалом. | |||
| profile строка | Профиль безопасности, найденный в файле ~/.azure/credentials. | |||
| profiles строка | Коллекция профилей автоматической масштабируемости, которые определяют различные параметры масштабирования для различных периодов времени. Можно указать не более 20 профилей. | |||
| count строка / обязательно | Количество экземпляров, которое будет установлено, если метрики недоступны для оценки. Значение по умолчанию используется только в том случае, если текущее количество экземпляров меньше значения по умолчанию. | |||
| fixed_date_end строка | Конкретная дата и время окончания профиля. Этот элемент не используется, если используется элемент Повторение. | |||
| fixed_date_start строка | Конкретная дата и время начала профиля. Этот элемент не используется, если используется элемент Повторение. | |||
| fixed_date_timezone строка | Конкретная временная зона для даты и времени профиля. Этот элемент не используется, если используется элемент Повторение. | |||
| max_count строка | Максимальное количество экземпляров для ресурса. Фактическое максимальное количество экземпляров ограничено доступными ядрами в подписке. | |||
| min_count строка | Минимальное количество экземпляров для ресурса. | |||
| name строка / обязательно | Имя профиля. | |||
| recurrence_days строка | Дни повторяющихся времен, в которые начинается этот профиль. Этот элемент не используется, если используется элемент FixedDate. | |||
| recurrence_frequency строка |
| Периодичность, с которой профиль расписания должен вступать в силу. Если это значение Week, значит каждый день недели будет иметь тот же набор профилей.Этот элемент не используется, если используется элемент FixedDate. | ||
| recurrence_hours строка | Часы повторяющихся времен, в которые начинается этот профиль. Этот элемент не используется, если используется элемент FixedDate. | |||
| recurrence_mins строка | Минуты повторяющихся времен, в которые начинается этот профиль. Этот элемент не используется, если используется элемент FixedDate. | |||
| recurrence_timezone строка | Временная зона повторяющихся времен, в которые начинается этот профиль. Этот элемент не используется, если используется элемент FixedDate. | |||
| rules строка | Коллекция правил, которые обеспечивают триггеры и параметры действия масштабирования. Можно указать не более 10 правил. | |||
| cooldown строка | Время ожидания (в минутах) после последнего действия масштабирования, прежде чем произойдёт это действие. Должно быть в пределах от 1 до 10080. | |||
| direction строка |
| Указывает, увеличивает или уменьшает действие масштабирования количество экземпляров. | ||
| metric_name строка / обязательно | Имя метрики, определяющей, за чем следит правило. | |||
| metric_resource_uri строка | Идентификатор ресурса, за которым следит правило. | |||
| оператор строка |
| Оператор, используемый для сравнения данных метрики и порога. | ||
| статистика строка |
| Как метрики из нескольких экземпляров объединяются. | ||
| порог строка | По умолчанию: 70 | Порог метрики, который запускает действие масштабирования. | ||
| time_aggregation строка |
| Как данные, которые собираются, должны объединяться во времени. | ||
| time_grain строка / обязательно | Детализация (минуты) метрик, за которыми отслеживает правило. Должно быть одним из предопределенных значений, возвращаемых из определений метрики для метрики. Должно быть между 1 и 720. | |||
| time_window строка / обязательно | Диапазон времени (минуты), в котором собираются данные экземпляра. Это значение должно быть больше задержки сбора метрик, которая может варьироваться от ресурса к ресурсу. Должно быть между 5 и 720. | |||
| тип строка |
| Тип действия, которое должно произойти, когда срабатывает правило масштабирования. | ||
| значение строка | Количество экземпляров, которые участвуют в действии масштабирования. Это значение должно быть 1 или больше. | |||
| группа_ресурсов строка / обязательно | Группа ресурсов ресурса. | |||
| секрет строка | Секрет Azure клиента. Используется при аутентификации с помощью принципала службы. | |||
| состояние строка |
| Утверждение состояния виртуальной сети. Используйте present для создания или обновления и absent для удаления. | ||
| id_подписки строка | Ваш идентификатор подписки Azure. | |||
| метки словарь | Словарь пар строка:строка для назначения в качестве метаданных объекту. Метки метаданных объекта будут обновлены всеми предоставленными значениями. Для удаления меток установите параметр append_tags в false. | |||
| цель строка | Идентификатор ресурса, к которому нужно применить настройку автоматического масштабирования. Это может быть строка идентификатора ресурса. Это также может быть словарь, содержащий name, subscription_id, namespace, types, resource_group ресурса. | |||
| арендатор строка | Идентификатор Azure-арендатора. Используется при аутентификации с помощью принципала службы. | |||
Примечания
Примечание
- Для аутентификации с Azure можно передавать параметры, задавать переменные среды, использовать профиль, сохраненный в ~/.azure/credentials, или войти в систему перед запуском задач или игры с помощью
az login. - Аутентификация также возможна с помощью принципала службы или пользователя Active Directory.
- Для аутентификации через принципала службы передайте subscription_id, client_id, secret и tenant или задайте переменные среды AZURE_SUBSCRIPTION_ID, AZURE_CLIENT_ID, AZURE_SECRET и AZURE_TENANT.
- Для аутентификации через пользователя Active Directory передайте ad_user и password или задайте AZURE_AD_USER и AZURE_PASSWORD в среде.
- В качестве альтернативы учетные данные можно хранить в ~/.azure/credentials. Это ini-файл, содержащий раздел [default] и следующие ключи: subscription_id, client_id, secret и tenant или subscription_id, ad_user и password. Также можно добавить дополнительные профили. Укажите профиль, передав profile или задав AZURE_PROFILE в среде.
См. также
См. также
- Авторизация с помощью Azure CLI
-
Как выполнить аутентификацию с помощью команды
az login.
Примеры
- name: Create an auto scale
azure_rm_autoscale:
target: "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/myVmss"
enabled: true
profiles:
- count: '1'
recurrence_days:
- Monday
name: Auto created scale condition
recurrence_timezone: China Standard Time
recurrence_mins:
- '0'
min_count: '1'
max_count: '1'
recurrence_frequency: Week
recurrence_hours:
- '18'
name: scale
resource_group: myResourceGroup
- name: Create an auto scale with complicated profile
azure_rm_autoscale:
target: "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets
/myVmss"
enabled: true
profiles:
- count: '1'
recurrence_days:
- Monday
name: Auto created scale condition 0
rules:
- time_aggregation: Average
time_window: 10
direction: Increase
metric_name: Percentage CPU
metric_resource_uri: "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtua
lMachineScaleSets/vmss"
value: '1'
threshold: 70
cooldown: 5
time_grain: 1
statistic: Average
operator: GreaterThan
type: ChangeCount
max_count: '1'
recurrence_mins:
- '0'
min_count: '1'
recurrence_timezone: China Standard Time
recurrence_frequency: Week
recurrence_hours:
- '6'
notifications:
- email_admin: True
email_co_admin: False
custom_emails:
- yuwzho@microsoft.com
name: scale
resource_group: myResourceGroup
- name: Delete an Azure Auto Scale Setting
azure_rm_autoscale:
state: absent
resource_group: myResourceGroup
name: scale
Значения возврата
Общие значения возврата документированы здесь, следующие являются полями, уникальными для этого модуля:
| Ключ | Возвращаемое | Описание |
|---|---|---|
| состояние словарь | всегда | Текущее состояние ресурса. Пример: {'changed': False, 'enabled': True, 'id': '/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/microsoft.insights/autoscalesettings/scale', 'location': 'eastus', 'name': 'scale', 'notifications': [{'custom_emails': ['yuwzho@microsoft.com'], 'send_to_subscription_administrator': True, 'send_to_subscription_co_administrators': False, 'webhooks': []}], 'profiles': [{'count': '1', 'max_count': '1', 'min_count': '1', 'name': 'Автоматически созданное условие масштабирования 0', 'recurrence_days': ['Понедельник'], 'recurrence_frequency': 'Неделя', 'recurrence_hours': ['6'], 'recurrence_mins': ['0'], 'recurrence_timezone': 'Китайское стандартное время', 'rules': [{'cooldown': 5.0, 'direction': 'Увеличение', 'metric_name': 'Процент использования ЦП', 'metric_resource_uri': '/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsof t.Compute/virtualMachineScaleSets/MyVmss', 'оператор': 'Больше', 'статистика': 'Среднее', 'порог': 70.0, 'time_aggregation': 'Среднее', 'time_grain': 1.0, 'time_window': 10.0, 'тип': 'ChangeCount', 'значение': '1'}]}], 'target': '/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScale Sets/myVmss'} |
Авторы
- Yuwei Zhou (@yuwzho)
© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.10/collections/azure/azcollection/azure_rm_autoscale_module.html