Spec-Zone.ru › Ansible

Модуль azure.azcollection.azure_rm_autoscale — управление параметром автомасштабирования Azure

Примечание

Этот модуль входит в коллекцию azure.azcollection (версия 3.18.0).

Возможно, эта коллекция уже установлена, если вы используете пакет ansible. Она не входит в ansible-core. Чтобы проверить, установлена ли она, выполните ansible-galaxy collection list.

Для установки используйте: ansible-galaxy collection install azure.azcollection. Для использования этого модуля требуются дополнительные компоненты; подробности см. в разделе Требования.

Чтобы использовать модуль в плейбуке, укажите: azure.azcollection.azure_rm_autoscale.

Добавлено в azure.azcollection 0.1.2

  • Краткое описание
  • Требования
  • Параметры
  • Примечания
  • См. также
  • Примеры
  • Возвращаемые значения

Краткое описание

  • Создание и удаление параметра автомасштабирования.

Требования

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

  • python >= 2.7
  • На узле, выполняющем этот модуль, должна быть установлена коллекция azure.azcollection из galaxy
  • Все пакеты python, перечисленные в requirements.txt коллекции, должны быть установлены с помощью pip на узле, выполняющем модули из azure.azcollection
  • Полные инструкции по установке можно найти здесь: https://galaxy.ansible.com/azure/azcollection

Параметры

Параметр

Комментарии

ad_user

string

Имя пользователя Active Directory. Используйте этот параметр при аутентификации с помощью пользователя Active Directory, а не субъекта-службы.

adfs_authority_url

string

добавлено в azure.azcollection 0.0.1

URL-адрес центра Azure AD. Используйте этот параметр при аутентификации по имени пользователя и паролю с собственным центром ADFS.

api_profile

string

добавлено в azure.azcollection 0.0.1

Выбирает профиль API для взаимодействия со службами Azure. Значение по умолчанию latest подходит для общедоступных облаков; будущие значения позволят использовать Azure Stack.

По умолчанию: "latest"

append_tags

boolean

Позволяет указать, является ли поле тегов каноническим или только добавляет теги к существующим.

Если поле является каноническим, все теги, отсутствующие в параметре tags, будут удалены из метаданных объекта.

Варианты:

  • false
  • true ← (по умолчанию)

auth_source

string

добавлено в azure.azcollection 0.0.1

Определяет источник учетных данных для аутентификации.

Также можно задать с помощью переменной среды 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.

Варианты:

  • "auto" ← (по умолчанию)
  • "cli"
  • "credential_file"
  • "env"
  • "msi"

cert_validation_mode

string

добавлено в azure.azcollection 0.0.1

Определяет поведение проверки сертификатов конечных точек Azure. По умолчанию все модули проверяют сертификат сервера, однако при использовании HTTPS-прокси или Azure Stack может потребоваться отключить эту проверку, передав значение ignore. Значение также можно задать в профиле файла учетных данных или с помощью переменной среды AZURE_CERT_VALIDATION.

Варианты:

  • "ignore"
  • "validate"

client_id

string

Идентификатор клиента Azure. Используйте этот параметр при аутентификации с помощью субъекта-службы или управляемого удостоверения (msi).

Также можно задать с помощью переменной среды AZURE_CLIENT_ID.

cloud_environment

string

добавлено в azure.azcollection 0.0.1

Для облачных сред, отличных от общедоступного облака США: имя среды (согласно определению в Azure Python SDK, например, AzureChinaCloud, AzureUSGovernment) или URL-адрес конечной точки обнаружения метаданных (обязателен для Azure Stack). Значение также можно задать в профиле файла учетных данных или с помощью переменной среды AZURE_CLOUD_ENVIRONMENT.

По умолчанию: "AzureCloud"

disable_instance_discovery

boolean

добавлено в azure.azcollection 2.3.0

Определяет, выполняется ли обнаружение экземпляров при попытке аутентификации. Если задать значение true, обнаружение экземпляров и проверка центра будут полностью отключены. Эта функция предназначена для сценариев, в которых невозможно получить доступ к конечной точке метаданных, например в частных облаках или Azure Stack. Обнаружение экземпляров включает получение метаданных центра с https://login.microsoft.com/ для проверки центра. Если задать значение **True**, проверка центра будет отключена. Поэтому крайне важно убедиться, что настроенный узел центра является действительным и заслуживающим доверия.

Задается в профиле файла учетных данных или с помощью переменной среды AZURE_DISABLE_INSTANCE_DISCOVERY.

Варианты:

  • false ← (по умолчанию)
  • true

enabled

boolean

Указывает, включено ли автоматическое масштабирование для ресурса.

Варианты:

  • false
  • true ← (по умолчанию)

location

string

Расположение ресурса.

log_mode

string

Родительский аргумент.

log_path

string

Родительский аргумент.

name

string / обязательно

Имя ресурса.

notifications

list / элементы=dictionary

Набор уведомлений.

custom_emails

list / элементы=string

Список пользовательских адресов электронной почты. Значение может быть null или пустым; в таком случае этот атрибут игнорируется.

send_to_subscription_administrator

псевдонимы: email_admin

boolean

Указывает, следует ли отправлять электронную почту администратору подписки.

Варианты:

  • false ← (по умолчанию)
  • true

send_to_subscription_co_administrators

псевдонимы: email_co_admin

boolean

Указывает, следует ли отправлять электронную почту соадминистраторам подписки.

Варианты:

  • false ← (по умолчанию)
  • true

webhooks

list / элементы=string

Список URI службы уведомлений веб-перехватчиков.

oidc_token

string

добавлено в azure.azcollection 3.17.0

Токен OpenID Connect (OIDC) (JWT), используемый для аутентификации с помощью удостоверения рабочей нагрузки.

Этот токен обменивается с Azure AD с использованием федеративного удостоверения OIDC.

Полезен в системах CI (например, GitHub Actions, Azure DevOps), где платформа напрямую предоставляет токен OIDC.

Также можно задать с помощью переменной среды AZURE_FEDERATED_TOKEN.

oidc_token_file_path

path

добавлено в azure.azcollection 3.17.0

Путь к файлу, содержащему токен OpenID Connect (OIDC) (JWT), используемый для аутентификации с помощью удостоверения рабочей нагрузки.

Файл должен содержать только необработанный токен.

Этот способ обычно используется на платформах, которые сохраняют токены OIDC в виде файлов.

Также можно задать с помощью переменной среды AZURE_FEDERATED_TOKEN_FILE.

password

string

Пароль пользователя Active Directory. Используйте этот параметр при аутентификации с помощью пользователя Active Directory, а не субъекта-службы.

profile

string

Профиль безопасности из файла ~/.azure/credentials.

profiles

list / элементы=dictionary

Набор профилей автоматического масштабирования, задающих различные параметры масштабирования для разных периодов времени.

Можно указать не более 20 профилей.

count

string / обязательно

Количество экземпляров, которое будет установлено, если метрики недоступны для оценки.

Значение по умолчанию используется только в том случае, если текущее количество экземпляров меньше значения по умолчанию.

fixed_date_end

string

Конкретные дата и время окончания действия профиля.

Этот элемент не используется, если используется элемент Recurrence.

fixed_date_start

string

Конкретные дата и время начала действия профиля.

Этот элемент не используется, если используется элемент Recurrence.

fixed_date_timezone

string

Часовой пояс для конкретных даты и времени профиля.

Этот элемент не используется, если используется элемент Recurrence.

max_count

string

Максимальное количество экземпляров ресурса.

Фактическое максимальное количество экземпляров ограничено числом ядер, доступных в подписке.

min_count

string

Минимальное количество экземпляров ресурса.

name

string / обязательно

Имя профиля.

recurrence_days

list / элементы=string

Дни повторения, в которые начинает действовать этот профиль.

Этот элемент не используется, если используется элемент FixedDate.

recurrence_frequency

string

Частота вступления в действие профиля расписания.

Если это значение равно Week, набор профилей будет одинаковым каждую неделю.

Этот элемент не используется, если используется элемент FixedDate.

Варианты:

  • "None" ← (по умолчанию)
  • "Second"
  • "Minute"
  • "Hour"
  • "Day"
  • "Week"
  • "Month"
  • "Year"

recurrence_hours

list / элементы=string

Часы повторения, в которые начинает действовать этот профиль.

Этот элемент не используется, если используется элемент FixedDate.

recurrence_mins

list / элементы=string

Минуты повторения, в которые начинает действовать этот профиль.

Этот элемент не используется, если используется элемент FixedDate.

recurrence_timezone

string

Часовой пояс для повторяющихся моментов времени, в которые начинает действовать этот профиль.

Этот элемент не используется, если используется элемент FixedDate.

rules

list / элементы=dictionary

Набор правил, задающих триггеры и параметры действия масштабирования.

Можно указать не более 10 правил.

cooldown

float

Время ожидания (в минутах) после последнего действия масштабирования до выполнения этого действия.

Значение должно находиться в диапазоне от 1 до 10080.

dimensions

list / элементы=dictionary

Список условий для измерений.

dimension_name

string / обязательно

Имя измерения.

operator

string / обязательно

Оператор измерения. Поддерживаются только Equals и NotEquals.

Варианты:

  • "Equals"
  • "NotEquals"

values

list / элементы=string / обязательно

Список значений измерения.

direction

string

Определяет, увеличивает или уменьшает действие масштабирования количество экземпляров.

Варианты:

  • "Increase"
  • "Decrease"

divide_per_instance

boolean

Указывает, следует ли разделить метрику на количество экземпляров.

Варианты:

  • false
  • true

metric_name

string / обязательно

Имя метрики, определяющей, что отслеживает правило.

metric_namespace

string

Пространство имен метрики, определяющей, что отслеживает правило.

metric_resource_uri

string

Идентификатор ресурса, который отслеживает правило.

operator

string

Оператор, используемый для сравнения данных метрики с пороговым значением.

Варианты:

  • "Equals"
  • "NotEquals"
  • "GreaterThan" ← (по умолчанию)
  • "GreaterThanOrEqual"
  • "LessThan"
  • "LessThanOrEqual"

statistic

string

Способ объединения метрик нескольких экземпляров.

Варианты:

  • "Average" ← (по умолчанию)
  • "Min"
  • "Max"
  • "Sum"

threshold

float

Пороговое значение метрики, при достижении которого запускается действие масштабирования.

По умолчанию: 70.0

time_aggregation

string

Способ объединения собранных данных за определённый период времени.

Варианты:

  • "Average" ← (по умолчанию)
  • "Minimum"
  • "Maximum"
  • "Total"
  • "Count"

time_grain

float / обязательный

Интервал (в минутах) для метрик, отслеживаемых правилом.

Должен быть одним из предопределённых значений, возвращаемых определениями метрик для этой метрики.

Должен быть в диапазоне от 1 до 720.

time_window

float / обязательный

Период времени (в минутах), в течение которого собираются данные экземпляра.

Это значение должно быть больше задержки сбора метрик, которая может различаться в зависимости от ресурса.

Должно быть в диапазоне от 5 до 720.

type

string

Тип действия, которое должно выполняться при срабатывании правила масштабирования.

Варианты:

  • "PercentChangeCount"
  • "ExactCount"
  • "ChangeCount"

value

string

Количество экземпляров, участвующих в действии масштабирования.

Значение должно быть не меньше 1.

resource_group

string / обязательный

Группа ресурсов, к которой относится ресурс.

secret

string

Секрет клиента Azure. Используется для аутентификации с помощью субъекта-службы.

state

string

Задаёт требуемое состояние виртуальной сети. Используйте present для создания или обновления и absent для удаления.

Варианты:

  • "present" ← (по умолчанию)
  • "absent"

subscription_id

string

Идентификатор вашей подписки Azure.

tags

dictionary

Словарь пар «строка:строка», назначаемых объекту в качестве метаданных.

Теги метаданных объекта будут обновлены с учётом всех указанных значений.

Чтобы удалить теги, установите для параметра append_tags значение false.

В настоящее время зоны Azure DNS и службы Traffic Manager также не допускают пробелы в тегах.

Azure Front Door не поддерживает использование

Azure Automation и Azure CDN поддерживают не более 15 тегов для ресурсов.

target

any

Идентификатор ресурса, для которого нужно применить параметр автомасштабирования.

Это может быть строка с идентификатором ресурса.

Также это может быть словарь, содержащий name, subscription_id, namespace, types, resource_group ресурса.

tenant

string

Идентификатор клиента Azure. Используется для аутентификации с помощью субъекта-службы.

thumbprint

string

добавлено в azure.azcollection 1.14.0

Отпечаток закрытого ключа, указанного в x509_certificate_path.

Используется для аутентификации с помощью субъекта-службы.

Обязателен, если задан x509_certificate_path.

x509_certificate_path

path

добавлено в azure.azcollection 1.14.0

Путь к сертификату X509 в формате PEM, использованному для создания субъекта-службы.

Сертификат должен быть добавлен к закрытому ключу.

Используется для аутентификации с помощью субъекта-службы.

Примечания

Примечание

  • Для аутентификации в Azure можно передать параметры, задать переменные среды, использовать профиль из ~/.azure/credentials или войти в систему перед запуском задач или плейбука с помощью az login.
  • Аутентификация также возможна с помощью субъекта-службы или пользователя Active Directory.
  • Для аутентификации через OIDC передайте client_id, tenant и oidc_token или oidc_token_file_path либо задайте переменные среды AZURE_CLIENT_ID, AZURE_TENANT и AZURE_FEDERATED_TOKEN или AZURE_FEDERATED_TOKEN_FILE.
  • Для аутентификации через субъект-службу передайте 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
            dimensions:
              - dimension_name: AppName
                operator: Equals
                values:
                  - App1
                  - App2
        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

dictionary

Текущее состояние ресурса.

Возвращается: всегда

Пример: {"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": "Auto created scale condition 0", "recurrence_days": ["Monday"], "recurrence_frequency": "Week", "recurrence_hours": ["6"], "recurrence_mins": ["0"], "recurrence_timezone": "China Standard Time", "rules": [{"cooldown": 5.0, "dimensions": [{"dimension_name": "AppName", "operator": "Equals", "values": ["App1", "App2"]}], "direction": "Increase", "divide_per_instance": true, "metric_name": "Percentage CPU", "metric_namespace": "Fredtest", "metric_resource_uri": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsof t.Compute/virtualMachineScaleSets/MyVmss", "operator": "GreaterThan", "statistic": "Average", "threshold": 70.0, "time_aggregation": "Average", "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"}

Авторы

  • Yuwei Zhou (@yuwzho)

Ссылки на коллекцию

  • Отслеживание проблем
  • Главная страница
  • Репозиторий (исходный код)

© 2012–2018 Michael DeHaan
© 2018–2025 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/projects/ansible/latest/collections/azure/azcollection/azure_rm_autoscale_module.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API