azure_rm_autoscale – Управление настройками автоматического масштабирования Azure
Новое в версии 2.7.
Описание
- Создание и удаление настроек автоматического масштабирования.
Требования
Ниже перечислены требования к хосту, на котором выполняется этот модуль.
- python >= 2.7
- azure >= 2.0.0
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии | ||
|---|---|---|---|---|
| ad_user строка | Имя пользователя Active Directory. Используйте при аутентификации с пользователем Active Directory, а не с главным объектом сервиса. | |||
| adfs_authority_url строка добавлен в 2.6 | URL-адрес авторизации Azure AD. Используйте при аутентификации с именем пользователя/паролем и собственной авторизацией ADFS. | |||
| api_profile строка добавлен в 2.5 | По умолчанию: "latest" | Выбирает профиль API для использования при взаимодействии с Azure-сервисами. Значение по умолчанию latest подходит для публичных облаков; будущие значения позволят использовать с Azure Stack. | ||
| append_tags логический тип |
| Управление тем, является ли поле тегов каноническим или просто добавляет теги к существующим. В случае канонического значения любые теги, отсутствующие в параметре тегов, будут удалены из метаданных объекта. | ||
| 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 логический тип |
| Указывает, включена ли автоматическая масштабируемость для ресурса. | ||
| location - | Расположение ресурса. | |||
| name - / обязательно | Имя ресурса. | |||
| notifications - | Коллекция уведомлений. | |||
| custom_emails - | Список пользовательских адресов электронной почты. Это значение может быть null или пустым, в этом случае этот атрибут будет проигнорирован. | |||
| send_to_subscription_administrator логический тип |
| Значение, указывающее, нужно ли отправлять электронное письмо администратору подписки. | ||
| send_to_subscription_co_administrators логический тип |
| Значение, указывающее, нужно ли отправлять электронное письмо со-администраторам подписки. | ||
| webhooks - | Список webhook-уведомлений URI сервиса. | |||
| password строка | Пароль пользователя Active Directory. Используйте при аутентификации с пользователем Active Directory, а не с главным объектом сервиса. | |||
| profile строка | Профиль безопасности, найденный в файле ~/.azure/credentials. | |||
| profiles - | Коллекция профилей автоматического масштабирования, которые определяют различные параметры масштабирования для разных периодов времени. Можно указать не более 20 профилей. | |||
| count - / обязательно | Количество экземпляров, которое будет установлено, если метрики недоступны для оценки. Значение по умолчанию используется только в том случае, если текущее количество экземпляров меньше значения по умолчанию. | |||
| fixed_date_end - | Конкретная дата-время окончания для профиля. Этот элемент не используется, если используется элемент Recurrence. | |||
| fixed_date_start - | Конкретная дата-время начала для профиля. Этот элемент не используется, если используется элемент Recurrence. | |||
| fixed_date_timezone - | Конкретный часовой пояс для даты-времени профиля. Этот элемент не используется, если используется элемент Recurrence. | |||
| 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 - | Идентификатор ресурса, за которым следит правило. | |||
| operator - |
| Оператор, используемый для сравнения данных метрики и порога. | ||
| statistic - |
| Как метрики от нескольких экземпляров комбинируются. | ||
| threshold - | Значение по умолчанию: 70 | Порог метрики, который запускает действие масштабирования. | ||
| time_aggregation - |
| Как данные, которые собираются, должны быть объединены в течение времени. | ||
| time_grain - / обязательно | Точность (минуты) метрик, за которыми следит правило. Должно быть одним из предопределённых значений, возвращаемых из определений метрики для метрики. Должно быть в диапазоне от 1 до 720. | |||
| time_window - / обязательно | Диапазон времени (минуты), в котором собираются данные экземпляров. Это значение должно быть больше задержки сбора метрик, которая может изменяться от ресурса к ресурсу. Должно быть в диапазоне от 5 до 720. | |||
| type - |
| Тип действия, который должен произойти, когда правило масштабирования срабатывает. | ||
| value - | Количество экземпляров, вовлечённых в действие масштабирования. Это значение должно быть 1 или больше. | |||
| resource_group - / обязательно | Группа ресурсов ресурса. | |||
| secret строка | Секрет Azure клиента. Используйте при аутентификации с помощью принципала службы. | |||
| state - |
| Утвердить состояние виртуальной сети. Используйте present для создания или обновления и absent для удаления. | ||
| subscription_id строка | Ваш идентификатор подписки Azure. | |||
| tags словарь | Словарь пар строка:строка для назначения в качестве метаданных объекту. Метаданные теги объекта будут обновлены любыми предоставленными значениями. Для удаления тегов установите параметр append_tags в false. | |||
| target - | Идентификатор ресурса, к которому применяется настройка автоматического масштабирования. Это может быть строковый идентификатор ресурса. Это также может быть словарь, содержащий name, subscription_id, namespace, types, resource_group ресурса. | |||
| tenant строка | Идентификатор Azure клиента. Используйте при аутентификации с помощью принципала службы. | |||
Примечания
Примечание
- Для аутентификации с Azure можно передать параметры, установить переменные среды, использовать профиль, сохранённый в ~/.azure/credentials, или войти в систему перед выполнением задач или playbook с помощью
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
Значения возврата
Общие значения возврата описаны здесь, следующие — поля, уникальные для данного модуля:
| Ключ | Возвращаемое значение | Описание |
|---|---|---|
| state словарь | всегда | Текущее состояние ресурса. Пример: {'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', '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/myResourceGroup/providers/Microsoft.Compute/virtualMachineScale Sets/myVmss'} |
Статус
- Этот модуль не гарантирует обратной совместимости интерфейса. [превью]
- Этот модуль поддерживается сообществом Ansible. [community]
Авторы
- 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.9/modules/azure_rm_autoscale_module.html