azure_rm_autoscale – Управление настройками автоматического масштабирования Azure.
Новая версия с 2.7.
Описание
- Создание, удаление настроек автоматического масштабирования.
Требования
Ниже перечислены требования к хосту, на котором будет выполняться этот модуль.
- python >= 2.7
- azure >= 2.0.0
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии | ||
|---|---|---|---|---|
| ad_user - | Имя пользователя Active Directory. Используется при аутентификации с пользователем Active Directory, а не с принципом службы. | |||
| adfs_authority_url - добавлен в 2.6 | По умолчанию: null | URL-адрес авторитета Azure AD. Используется при аутентификации с именем пользователя/паролем и собственном авторитете ADFS. | ||
| api_profile - добавлен в 2.5 | По умолчанию: "latest" | Выбирает профиль API для использования при взаимодействии с Azure-сервисами. Значение по умолчанию latest подходит для общедоступных облаков; будущие значения позволят использовать с Azure Stack. | ||
| append_tags boolean |
| Используется для управления тем, является ли поле тегов каноническим или оно просто добавляется к существующим тегам. При каноническом значении все теги, не найденные в параметре тегов, будут удалены из метаданных объекта. | ||
| auth_source - добавлен в 2.5 |
| Управляет источником учетных данных для аутентификации. Если не указано, используется переменная окружения ANSIBLE_AZURE_AUTH_SOURCE, по умолчанию auto если переменная не определена.auto будет следовать умолчанию порядка приоритетов параметров модуля -> переменные окружения -> профиль по умолчанию в файле учетных данных ~/.azure/credentials. При установке в cli, учетные данные будут взяты из профиля Azure CLI по умолчанию.Также может быть задано через переменную окружения ANSIBLE_AZURE_AUTH_SOURCE. При установке в msi, хост-машина должна быть Azure-ресурсом с включенным расширением MSI. subscription_id или переменная окружения AZURE_SUBSCRIPTION_ID могут быть использованы для определения идентификатора подписки, если ресурсу предоставлен доступ к нескольким подпискам; в противном случае выбирается первая подписка.msi был добавлен в Ansible 2.6. | ||
| cert_validation_mode - добавлен в 2.5 |
| Управляет поведением проверки сертификатов для Azure-точек конечных подключений. По умолчанию все модули проверяют серверный сертификат, но при использовании прокси-сервера HTTPS или при подключении к Azure Stack, может потребоваться отключить это поведение, передав ignore. Также может быть задано через профиль файла учетных данных или переменную окружения AZURE_CERT_VALIDATION. | ||
| client_id - | Идентификатор клиента Azure. Используется при аутентификации с принципом службы. | |||
| cloud_environment - добавлен в 2.4 | По умолчанию: "AzureCloud" | Для облачных сред, отличных от общедоступного облака США, имя среды (как определено в Azure Python SDK, например, AzureChinaCloud, AzureUSGovernment), или URL-адрес конечной точки обнаружения метаданных (необходим для Azure Stack). Также может быть задано через профиль файла учетных данных или переменную окружения AZURE_CLOUD_ENVIRONMENT. | ||
| enabled boolean |
| Указывает, включена ли автоматическая масштабируемость для ресурса. | ||
| location - | Расположение ресурса. | |||
| name - / обязательно | Имя ресурса. | |||
| notifications - | Коллекция уведомлений. | |||
| custom_emails - | Список пользовательских электронных адресов. Это значение может быть null или пустым, в этом случае этот атрибут будет проигнорирован. | |||
| send_to_subscription_administrator boolean |
| Указывает, следует ли отправлять электронное письмо администратору подписки. | ||
| send_to_subscription_co_administrators boolean |
| Указывает, следует ли отправлять электронное письмо соадминистраторам подписки. | ||
| 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. | |||
| правила - | Коллекция правил, определяющих триггеры и параметры действия масштабирования. Можно указать не более 10 правил. | |||
| cooldown - | Время ожидания (в минутах) после последнего действия масштабирования, прежде чем произойдёт данное действие. Должно быть между 1 и 10080. | |||
| direction - |
| Действие масштабирования: увеличение или уменьшение количества экземпляров. | ||
| metric_name - / обязательно | Имя метрики, определяющей, за чем следит правило. | |||
| metric_resource_uri - | Идентификатор ресурса, за которым следит правило. | |||
| operator - |
| Оператор, используемый для сравнения данных метрики и порога. | ||
| statistic - |
| Как метрики от нескольких экземпляров объединяются. | ||
| threshold - | По умолчанию: 70 | Порог метрики, который запускает действие масштабирования. | ||
| time_aggregation - |
| Как данные, которые собираются, объединяются с течением времени. | ||
| time_grain - / обязательно | Детализация (в минутах) метрик, за которыми следит правило. Должно быть одним из предопределённых значений, возвращаемых определениями метрик для метрики. Должно быть между 1 и 720. | |||
| time_window - / обязательно | Диапазон времени (в минутах), в котором собираются данные экземпляров. Это значение должно быть больше, чем задержка при сборе метрик, которая может варьироваться в зависимости от ресурса. Должно быть между 5 и 720. | |||
| type - |
| Тип действия, который должен произойти, когда срабатывает правило масштабирования. | ||
| value - | Количество экземпляров, участвующих в действии масштабирования. Это значение должно быть 1 или больше. | |||
| группа_ресурсов - / обязательно | Группа ресурсов ресурса. | |||
| секрет - | Секретный ключ клиента Azure. Используется при аутентификации с помощью принципала службы. | |||
| состояние - |
| Утверждение состояния виртуальной сети. Используйте «присутствует» для создания или обновления, а «отсутствует» для удаления. | ||
| идентификатор_подписки - | Ваш идентификатор подписки Azure. | |||
| метки - | Словарь пар «строка:строка» для назначения метаданных объекту. Метаданные теги объекта будут обновлены любыми предоставленными значениями. Для удаления тегов установите параметр append_tags в значение false. | |||
| цель - | Идентификатор ресурса, к которому нужно применить настройку автоматического масштабирования. Может быть строковым идентификатором ресурса. Также может быть словарем, содержащим name, subscription_id, namespace, types, resource_group ресурса. | |||
| арендатор - | Идентификатор аренды Azure. Используется при аутентификации с помощью принципала службы. | |||
Примечания
Примечание
- Для аутентификации с Azure можно передавать параметры, задавать переменные среды или использовать профиль, сохранённый в ~/.azure/credentials. Аутентификация возможна с помощью принципала службы или пользователя Active Directory. Для аутентификации с помощью принципала службы передайте идентификатор подписки, идентификатор клиента, секрет и арендатор или задайте переменные среды AZURE_SUBSCRIPTION_ID, AZURE_CLIENT_ID, AZURE_SECRET и AZURE_TENANT.
- Для аутентификации с помощью пользователя Active Directory передайте ad_user и пароль или задайте AZURE_AD_USER и AZURE_PASSWORD в переменных среды.
- В качестве альтернативы учетные данные можно сохранить в ~/.azure/credentials. Это ini-файл, содержащий раздел [default] и следующие ключи: идентификатор подписки, идентификатор клиента, секрет и арендатор или идентификатор подписки, ad_user и пароль. Также возможно добавить дополнительные профили. Укажите профиль, передав профиль или задав AZURE_PROFILE в переменных среды.
Примеры
- name: Create an auto scale
azure_rm_autoscale:
target: "/subscriptions/XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX/resourceGroups/foo/providers/Microsoft.Compute/virtualMachineScaleSets/vmss"
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: foo
- name: Create an auto scale with compicated profile
azure_rm_autoscale:
target: "/subscriptions/XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX/resourceGroups/foo/providers/Microsoft.Compute/virtualMachineScaleSets/vmss"
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/foo/providers/Microsoft.Compute/virtualMachineScaleSets/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: foo
- name: Delete an Azure Auto Scale Setting
azure_rm_autoscale:
state: absent
resource_group: foo
name: scale
Значения возврата
Общие значения возврата описаны здесь, следующие поля уникальны для этого модуля:
| Ключ | Возвращаемое | Описание |
|---|---|---|
| состояние словарь | всегда | Текущее состояние ресурса. Пример: {'changed': False, 'enabled': True, 'id': '/subscriptions/XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX/resourceGroups/foo/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/X/resourceGroups/foo/providers/Microsoft.Compute/virtualMachineScaleSets/vmss', 'operator': 'Больше', 'statistic': 'Среднее', 'threshold': 70.0, 'time_aggregation': 'Среднее', 'time_grain': 1.0, 'time_window': 10.0, 'type': 'ChangeCount', 'value': '1'}]}], 'target': '/subscriptions/XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX/resourceGroups/foo/providers/Microsoft.Compute/virtualMachineScaleSets/vmss'} |
Статус
- Этот модуль не гарантирует обратную совместимость интерфейса. [предварительная версия]
- Этот модуль поддерживается сообществом Ansible. [сообщество]
Авторы
- 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.7/modules/azure_rm_autoscale_module.html