azure_rm_virtualmachinescaleset – Управление наборами виртуальных машин Azure
Новая версия с 2.4.
Описание
- Создание и обновление набора виртуальных машин.
- Обратите внимание, что этот модуль назывался azure_rm_virtualmachine_scaleset до Ansible 2.8. Использование не изменилось.
Псевдонимы: azure_rm_virtualmachine_scaleset
Требования
Ниже приведены требования к хосту, на котором выполняется этот модуль.
- python >= 2.7
- azure >= 2.0.0
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии | |
|---|---|---|---|
| ad_user строка | Имя пользователя Active Directory. Используйте при аутентификации пользователем Active Directory, а не служебным принципалом. | ||
| adfs_authority_url строка добавлено в 2.6 | URL-адрес авторизации Azure AD. Используйте при аутентификации с помощью имени пользователя/пароля и собственной авторизации ADFS. | ||
| admin_password - | Пароль для имени пользователя администратора. Не требуется, если os_type Linux и аутентификация по паролю SSH отключена, установив ssh_password_enabled=false. | ||
| admin_username - | Имя пользователя администратора, используемое для доступа к хосту после его создания. Требуется при создании виртуальной машины. | ||
| api_profile строка добавлено в 2.5 | По умолчанию: "latest" | Выбирает профиль API для использования при общении с Azure-службами. Значение по умолчанию latest подходит для общедоступных облаков; будущие значения позволят использовать с Azure Stack. | |
| append_tags логический тип |
| Управление тем, является ли поле тегов каноническим или просто добавляется к существующим тегам. При каноническом значении теги, отсутствующие в параметре tags, будут удалены из метаданных объекта. | |
| application_gateway - добавлено в 2.8 | Имя шлюза приложений. | ||
| 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. | |
| capacity - | По умолчанию: 1 | Ёмкость VMSS. | |
| 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. | |
| custom_data - добавлено в 2.8 | Данные, доступные виртуальной машине и используемые, например, cloud-init. Многие образы в каталоге не готовы к cloud-init. Поэтому данные, отправленные в custom_data, будут проигнорированы. Если используемый образ не указан в https://docs.microsoft.com/en-us/azure/virtual-machines/linux/using-cloud-init#cloud-init-overview, следуйте этим шагам https://docs.microsoft.com/en-us/azure/virtual-machines/linux/cloudinit-prepare-custom-image. | ||
| data_disks - добавлено в 2.4 | Описание списка дисков данных. | ||
| caching - добавлено в 2.4 |
| Тип кеширования диска данных. | |
| disk_size_gb - добавлено в 2.4 | Начальный размер диска в ГБ для пустых дисков данных. | ||
| lun - добавлено в 2.4 | По умолчанию: 0 | Логический номер устройства для диска данных. | |
| managed_disk_type - добавлено в 2.4 |
| Тип управляемого диска данных. | |
| enable_accelerated_networking логический тип добавлено в 2.7 |
| Указывает, разрешить ли ускоренное сетевое подключение для виртуальных машин в масштабируемом наборе, который создается. | |
| image - / обязательно | Указывает образ, используемый для создания виртуальной машины. Если строка, образ берётся из пользовательского образа по имени. Если словарь с ключами publisher, offer, sku и version, образ берётся из образа каталога Marketplace. Обратите внимание, что установлено version=latest, чтобы получить последнюю версию данного образа. Если словарь с ключами name и resource_group, образ берётся из пользовательского образа по name и resource_group. Обратите внимание, что ключ resource_group необязателен, и если он опущен, все образы в подписке будут проверены на name. Поддержка пользовательских образов была добавлена в Ansible 2.5. | ||
| load_balancer - добавлено в 2.5 | Имя балансировщика нагрузки. | ||
| location - | Действительное расположение Azure. По умолчанию - расположение группы ресурсов. | ||
| managed_disk_type - |
| Тип управляемого диска. | |
| name - / обязательно | Имя виртуальной машины. | ||
| os_disk_caching - |
| Тип кеширования системного диска. псевдонимы: disk_caching | |
| os_type - |
| Базовый тип операционной системы. | |
| перераспределение ресурсов boolean добавлен в 2.8 |
| Указывает, следует ли перераспределять виртуальную машину масштабирования. | |
| пароль строка | Пароль пользователя Active Directory. Используйте при аутентификации с пользователем Active Directory вместо служебного принципала. | ||
| профиль строка | Профиль безопасности, найденный в файле ~/.azure/credentials. | ||
| удалять_при_отсутствии - | По умолчанию: ["all"] | При удалении виртуальной машины с помощью state=absent, также удаляются связанные ресурсы. Он может быть all или списком, содержащим любое из следующих значений ['network_interfaces', 'virtual_storage', 'public_ips'].Любые другие входные данные будут проигнорированы. | |
| группа_ресурсов - / обязательно | Имя группы ресурсов, содержащей виртуальную машину масштабирования. | ||
| секрет строка | Служебный секрет Azure. Используйте при аутентификации со служебным принципалом. | ||
| группа_безопасности - добавлен в 2.7 | Существующая группа безопасности, с которой необходимо связать подсеть. Это может быть имя группы безопасности, которая находится в той же группе ресурсов. Это может быть идентификатор ресурса. Это может быть словарь, содержащий name и resource_group группы безопасности. псевдонимы: имя_группы_безопасности | ||
| короткое_имя_хоста - | Короткое имя хоста. | ||
| одна_группа_размещения boolean добавлен в 2.9 |
| В случае истины это ограничивает набор масштабирования одной группой размещения максимального размера 100 виртуальных машин. | |
| включить_пароль_ssh boolean |
| Если тип_os Linux, установка включить_пароль_ssh=false отключит аутентификацию по паролю SSH и потребует использования ключей SSH. | |
| общедоступные_ключи_ssh - | Для тип_os=Linux укажите список ключей SSH. Каждый элемент в списке должен быть словарем, где словарь содержит два ключа, path и key_data.Установите path в расположение по умолчанию файла authorized_keys.Например, на хосте Enterprise Linux это путь=/home/<имя_пользователя_админа>/.ssh/authorized_keys. Установите key_data в фактическое значение открытого ключа. | ||
| состояние - |
| Утверждает состояние виртуальной машины масштабирования. Состояние present проверит, существует ли машина с запрошенной конфигурацией. Если конфигурация существующей машины не совпадает, машина будет обновлена.Состояние absent удалит виртуальную машину масштабирования. | |
| имя_подсети - | Имя подсети. псевдонимы: подсеть | ||
| идентификатор_подписки строка | Ваш идентификатор подписки Azure. | ||
| метки словарь | Словарь пар строка:строка для назначения метаданных объекту. Метаданные метки объекта будут обновлены любыми предоставленными значениями. Для удаления меток установите опцию append_tags в false. | ||
| аренда строка | Идентификатор аренды Azure. Используйте при аутентификации со служебным принципалом. | ||
| уровень - |
| Уровень SKU. | |
| политика_обновления - |
| Политика обновления. Требуется при создании наборов виртуальных машин Azure. | |
| имя_виртуальной_сети - | Имя виртуальной сети. псевдонимы: виртуальная_сеть | ||
| группа_ресурсов_виртуальной_сети - добавлен в 2.5 | При создании виртуальной машины, если следует использовать определенную виртуальную сеть из другой группы ресурсов. Используйте этот параметр для указания группы ресурсов для использования. | ||
| размер_вм - | Допустимое значение размера виртуальной машины Azure. Например, Standard_D4.Список вариантов варьируется в зависимости от подписки и расположения. Проверьте вашу подписку на доступные варианты. | ||
| зоны список добавлен в 2.8 | Список зон доступности для вашего набора виртуальных машин. | ||
Примечания
Примечание
- Для аутентификации с Azure вы можете передать параметры, установить переменные среды, использовать профиль, сохраненный в ~/.azure/credentials, или войти в систему перед запуском задач или игры с помощью
az login. - Аутентификация также возможна с помощью служебного принципала или пользователя 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 в среде.
См. также
См. также
- Войти с помощью Azure CLI
- Как войти с помощью команды
az login.
Примеры
- name: Create VMSS
azure_rm_virtualmachinescaleset:
resource_group: myResourceGroup
name: testvmss
vm_size: Standard_DS1_v2
capacity: 2
virtual_network_name: testvnet
upgrade_policy: Manual
subnet_name: testsubnet
admin_username: adminUser
ssh_password_enabled: false
ssh_public_keys:
- path: /home/adminUser/.ssh/authorized_keys
key_data: < insert yor ssh public key here... >
managed_disk_type: Standard_LRS
image:
offer: CoreOS
publisher: CoreOS
sku: Stable
version: latest
data_disks:
- lun: 0
disk_size_gb: 64
caching: ReadWrite
managed_disk_type: Standard_LRS
- name: Create a VMSS with a custom image
azure_rm_virtualmachinescaleset:
resource_group: myResourceGroup
name: testvmss
vm_size: Standard_DS1_v2
capacity: 2
virtual_network_name: testvnet
upgrade_policy: Manual
subnet_name: testsubnet
admin_username: adminUser
admin_password: password01
managed_disk_type: Standard_LRS
image: customimage001
- name: Create a VMSS with over 100 instances
azure_rm_virtualmachinescaleset:
resource_group: myResourceGroup
name: testvmss
vm_size: Standard_DS1_v2
capacity: 120
single_placement_group: False
virtual_network_name: testvnet
upgrade_policy: Manual
subnet_name: testsubnet
admin_username: adminUser
admin_password: password01
managed_disk_type: Standard_LRS
image: customimage001
- name: Create a VMSS with a custom image from a particular resource group
azure_rm_virtualmachinescaleset:
resource_group: myResourceGroup
name: testvmss
vm_size: Standard_DS1_v2
capacity: 2
virtual_network_name: testvnet
upgrade_policy: Manual
subnet_name: testsubnet
admin_username: adminUser
admin_password: password01
managed_disk_type: Standard_LRS
image:
name: customimage001
resource_group: myResourceGroup
Возвращаемые значения
Общие возвращаемые значения документированы здесь, следующие являются полями, уникальными для этого модуля:
| Ключ | Возвращаемое | Описание |
|---|---|---|
| azure_vmss словарь | всегда | Факты о текущем состоянии объекта. Обратите внимание, что факты не являются частью зарегистрированного вывода, но доступны напрямую. Пример: {'properties': {'перераспределение ресурсов': True, 'одна группа размещения': True, 'политика обновления': {'режим': 'Ручное'}, 'профиль виртуальной машины': {'профиль сети': {'конфигурации сетевого интерфейса': [{'имя': 'testvmss', 'properties': {'настройки dns': {'серверы dns': []}, 'включить ускоренную сеть': False, 'конфигурации ip': [{'имя': 'default', 'properties': {'версия_private_ip_адреса': 'IPv4', 'подсеть': {'id': '/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroup/myResourceGroup/providers/Microsoft.Network/virtualNetworks/testvnet/subnets/testsubnet'}}}], 'первичный': True}}]}, 'профиль операционной системы': {'имя пользователя админа': 'testuser', 'префикс имени компьютера': 'testvmss', 'конфигурация linux': {'отключить аутентификацию по паролю': True, 'ssh': {'общедоступные ключи': [{'данные ключа': '', 'путь': '/home/testuser/.ssh/authorized_keys'}]}}, 'секреты': []}, 'профиль хранилища': {'диски данных': [{'кеширование': 'ReadWrite', 'вариант создания': 'empty', 'размер_диска_gb': 64, 'lun': 0, 'управляемый_диск': {'тип_аккаунта_хранилища': 'Standard_LRS'}}], 'ссылка на образ': {'предложение': 'CoreOS', 'издатель': 'CoreOS', 'sku': 'Stable', 'версия': '899.17.0'}, 'диск операционной системы': {'кеширование': 'ReadWrite', 'вариант создания': 'fromImage', 'управляемый_диск': {'тип_аккаунта_хранилища': 'Standard_LRS'}}}}}, 'sku': {'емкость': 2, 'имя': 'Standard_DS1_v2', 'уровень': 'Стандартный'}, 'метки': None, 'тип': 'Microsoft.Compute/virtualMachineScaleSets'} |
Статус
- Этот модуль не гарантирует обратной совместимости интерфейса. [preview]
- Этот модуль поддерживается сообществом Ansible. [community]
Авторы
- Sertac Ozercan (@sozercan)
Подсказка
Если вы заметили какие-либо проблемы в этом руководстве, вы можете отредактировать этот документ, чтобы улучшить его.
© 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_virtualmachinescaleset_module.html