Spec-Zone.ru › Ansible 2.11

Руководство по переносу Ansible 2.9

В данном разделе обсуждаются изменения в поведении между Ansible 2.8 и Ansible 2.9.

Цель этого руководства — помочь обновить ваши плейбуки, плагины и другие части вашей инфраструктуры Ansible, чтобы они работали с этой версией Ansible.

Мы рекомендуем прочитать эту страницу вместе с Журналом изменений Ansible 2.9, чтобы понять, какие обновления вам могут потребоваться.

Этот документ является частью коллекции руководств по переносу. Полный список руководств по переносу можно найти по адресу руководствам по переносу.

  • Плейбук

    • Инвентаризация
    • Циклы
  • Командная строка
  • Устаревшие
  • Изменения загрузчика коллекций
  • Модули

    • Переименование с _facts на _info
    • Написание модулей
    • Удаленные модули
    • Уведомления об устаревании

      • Переименованные модули
    • Заметные изменения в модулях
  • Плагины

    • Удаленные плагины поиска
  • Перенос пользовательских скриптов
  • Сети

    • Модули сетевых ресурсов
    • Улучшенная поддержка gather_facts для сетевых устройств
    • Аргументы подключения верхнего уровня удалены в 2.9

Плейбук

Инвентаризация

  • hash_behaviour теперь влияет на источники инвентаризации. Если вы установили его в merge, данные, полученные из инвентаризации, могут измениться, и вам потребуется соответствующим образом обновить плейбуки. Если вы используете значение по умолчанию (overwrite), изменений не будет. Инвентаризация игнорировала это значение.

Циклы

Ansible 2.9 более надежно обрабатывает «небезопасные» данные, гарантируя, что данные, помеченные как «небезопасные», не будут использованы в шаблонах. В предыдущих версиях Ansible рекурсивно помечал все данные, возвращаемые прямым использованием lookup(), как «небезопасные», но только помечал структурированные данные, возвращаемые косвенными поисками с использованием циклов with_X, как «небезопасные», если возвращаемые элементы были строками. Ansible 2.9 последовательно обрабатывает оба подхода.

В результате, если вы используете with_dict для возврата ключей с шаблонируемыми значениями, ваши шаблоны могут больше не работать как ожидается в Ansible 2.9.

Чтобы восстановить старое поведение, переключитесь с использования with_X на использование loop с фильтром, как описано в Миграция с with_X на цикл.

Командная строка

  • Путь к файлу токена Galaxy изменен с ~/.ansible_galaxy на ~/.ansible/galaxy_token. Вы можете настроить как путь, так и имя файла с помощью конфигурации GALAXY_TOKEN_PATH.

Устаревшие

Нет заметных изменений

Изменения загрузчика коллекций

Способ импорта модуля PowerShell или C# util из коллекции изменился в релизе Ansible 2.9. В Ansible 2.8 модуль util импортировался следующим образом:

#AnsibleRequires -CSharpUtil AnsibleCollections.namespace_name.collection_name.util_filename
#AnsibleRequires -PowerShell AnsibleCollections.namespace_name.collection_name.util_filename

В Ansible 2.9 это было изменено на:

#AnsibleRequires -CSharpUtil ansible_collections.namespace_name.collection_name.plugins.module_utils.util_filename
#AnsibleRequires -PowerShell ansible_collections.namespace_name.collection_name.plugins.module_utils.util_filename

Изменение имени импорта коллекции также требует обновления всех пространств имен C# util с новым форматом имен. Это более громоздко, но призвано избежать конфликтов имен плагинов между различными типами плагинов и стандартизировать работу импортов в PowerShell так же, как и в Python-модулях.

Модули

  • Модуль win_get_url и win_uri теперь отправляет запросы с параметром по умолчанию User-Agent равным ansible-httpget. Это можно изменить, используя ключ http_agent.
  • Модуль apt теперь учитывает update_cache=false при установке собственной зависимости и пропускает обновление кэша. Явное задание update_cache=true или опускание параметра update_cache приведет к обновлению кэша при установке собственной зависимости.
  • Версия Ansible 2.9.12 изменила режим по умолчанию для задач, связанных с файлами, на 0o600 & ~umask, когда пользователь не указал параметр mode в задачах, связанных с файлами. Это было сделано в ответ на отчет о CVE, который мы пересмотрели. В результате, в 2.9.13 изменение режима отменено, и режим по умолчанию теперь 0o666 & ~umask, как и в предыдущих версиях Ansible.
  • Если вы изменили задачи для указания менее строгих разрешений при использовании 2.9.12, эти изменения не нужны (но не повредят) в 2.9.13.
  • Чтобы избежать проблемы, поднятой в CVE-2020-1736, укажите параметр mode во всех задачах, связанных с файлами, которые его принимают.
  • dnf и yum - Начиная с версии 2.9.13, модуль dnf (и действие yum, когда оно использует dnf) теперь корректно проверяет подписи GPG пакетов (CVE-2020-14365). Если вы видите ошибку типа Failed to validate GPG signature for [package name], убедитесь, что вы импортировали правильный ключ GPG для репозитория DNF и/или пакета, который вы используете. Один из способов сделать это — с помощью модуля rpm_key. Хотя мы это не рекомендуем, в некоторых случаях может потребоваться отключить проверку GPG. Это можно сделать, явно добавив disable_gpg_check: yes в вашу задачу dnf или yum.

Переименование с _facts на _info

Ansible 2.9 переименовал множество модулей с <something>_facts на <something>_info, потому что модули не возвращают факты Ansible. Факты Ansible относятся к определённому хосту. Например, конфигурация сетевого интерфейса, операционная система на Unix-сервере и список установленных пакетов на Windows-системе — всё это факты Ansible. Переименованные модули возвращают значения, которые не уникальны для хоста. Например, информация об учетной записи или данные региона для поставщика облачных услуг. Переименование этих модулей должно обеспечить большую ясность относительно типов возвращаемых значений каждого набора модулей.

Написание модулей

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

    Пример использования относительного импорта в коллекциях:

    # File: ansible_collections/my_namespace/my_collection/plugins/modules/my_module.py
    # Old way to use an absolute import to import module_utils from the collection:
    from ansible_collections.my_namespace.my_collection.plugins.module_utils import my_util
    # New way using a relative import:
    from ..module_utils import my_util
    

    Модули и module_utils, поставляемые с Ansible, также могут использовать относительные импорты, но выгода меньше:

    # File: ansible/modules/system/ping.py
    # Old way to use an absolute import to import module_utils from core:
    from ansible.module_utils.basic import AnsibleModule
    # New way using a relative import:
    from ...module_utils.basic import AnsibleModule
    

    Каждая точка (.) представляет один уровень дерева (эквивалентно ../ в ссылках на файлы).

    См. также

    Документация Python по относительным импортам содержит более подробную информацию о том, как писать относительные импорты.

Удаленные модули

Следующие модули больше не существуют:

  • Модули aos_* от Apstra. Смотрите новые модули на https://github.com/apstra.
  • Используйте ec2_ami_facts вместо ec2_ami_find.
  • Используйте k8s вместо kubernetes.
  • Используйте nxos_l3_interface вместо nxos_ip_interface.
  • Используйте nxos_linkagg вместо nxos_portchannel.
  • Используйте nxos_l2_interface вместо nxos_switchport.
  • Используйте k8s вместо oc.
  • Используйте panos_nat_rule вместо panos_nat_policy.
  • Используйте panos_security_rule вместо panos_security_policy.
  • Используйте vmware_guest вместо vsphere_guest.

Уведомления об устаревании

Следующие модули будут удалены в Ansible 2.13. Пожалуйста, обновите ваши плейбуки.

  • cs_instance_facts использовать cs_instance_info вместо этого.
  • cs_zone_facts использовать cs_zone_info вместо этого.
  • digital_ocean_sshkey_facts использовать digital_ocean_sshkey_info вместо этого.
  • eos_interface использовать eos_interfaces вместо этого.
  • eos_l2_interface использовать eos_l2_interfaces вместо этого.
  • eos_l3_interface использовать eos_l3_interfaces вместо этого.
  • eos_linkagg использовать eos_lag_interfaces вместо этого.
  • eos_lldp_interface использовать eos_lldp_interfaces вместо этого.
  • eos_vlan использовать eos_vlans вместо этого.
  • ios_interface использовать ios_interfaces вместо этого.
  • ios_l2_interface использовать ios_l2_interfaces вместо этого.
  • ios_l3_interface использовать ios_l3_interfaces вместо этого.
  • ios_vlan использовать ios_vlans вместо этого.
  • iosxr_interface использовать iosxr_interfaces вместо этого.
  • junos_interface использовать junos_interfaces вместо этого.
  • junos_l2_interface использовать junos_l2_interfaces вместо этого.
  • junos_l3_interface использовать junos_l3_interfaces вместо этого.
  • junos_linkagg использовать junos_lag_interfaces вместо этого.
  • junos_lldp использовать junos_lldp_global вместо этого.
  • junos_lldp_interface использовать junos_lldp_interfaces вместо этого.
  • junos_vlan использовать junos_vlans вместо этого.
  • lambda_facts использовать lambda_info вместо этого.
  • na_ontap_gather_facts использовать na_ontap_info вместо этого.
  • net_banner использовать модули [netos]_banner соответствующие платформе.
  • net_interface использовать новые модули [netos]_interfaces соответствующие платформе.
  • net_l2_interface использовать новые модули [netos]_l2_interfaces соответствующие платформе.
  • net_l3_interface использовать новые модули [netos]_l3_interfaces соответствующие платформе.
  • net_linkagg использовать новые модули [netos]_lag соответствующие платформе.
  • net_lldp использовать новые модули [netos]_lldp_global соответствующие платформе.
  • net_lldp_interface использовать новые модули [netos]_lldp_interfaces соответствующие платформе.
  • net_logging использовать модули [netos]_logging соответствующие платформе.
  • net_static_route использовать модули [netos]_static_route соответствующие платформе.
  • net_system использовать модули [netos]_system соответствующие платформе.
  • net_user использовать модули [netos]_user соответствующие платформе.
  • net_vlan использовать новые модули [netos]_vlans соответствующие платформе.
  • net_vrf использовать модули [netos]_vrf соответствующие платформе.
  • nginx_status_facts использовать nginx_status_info вместо этого.
  • nxos_interface использовать nxos_interfaces вместо этого.
  • nxos_l2_interface использовать nxos_l2_interfaces вместо этого.
  • nxos_l3_interface использовать nxos_l3_interfaces вместо этого.
  • nxos_linkagg использовать nxos_lag_interfaces вместо этого.
  • nxos_vlan использовать nxos_vlans вместо этого.
  • online_server_facts использовать online_server_info вместо этого.
  • online_user_facts использовать online_user_info вместо этого.
  • purefa_facts использовать purefa_info вместо этого.
  • purefb_facts использовать purefb_info вместо этого.
  • scaleway_image_facts использовать scaleway_image_info вместо этого.
  • scaleway_ip_facts использовать scaleway_ip_info вместо этого.
  • scaleway_organization_facts использовать scaleway_organization_info вместо этого.
  • scaleway_security_group_facts использовать scaleway_security_group_info вместо этого.
  • scaleway_server_facts использовать scaleway_server_info вместо этого.
  • scaleway_snapshot_facts использовать scaleway_snapshot_info вместо этого.
  • scaleway_volume_facts использовать scaleway_volume_info вместо этого.
  • vcenter_extension_facts использовать vcenter_extension_info вместо этого.
  • vmware_about_facts используйте vmware_about_info вместо этого.
  • vmware_category_facts используйте vmware_category_info вместо этого.
  • vmware_drs_group_facts используйте vmware_drs_group_info вместо этого.
  • vmware_drs_rule_facts используйте vmware_drs_rule_info вместо этого.
  • vmware_dvs_portgroup_facts используйте vmware_dvs_portgroup_info вместо этого.
  • vmware_guest_boot_facts используйте vmware_guest_boot_info вместо этого.
  • vmware_guest_customization_facts используйте vmware_guest_customization_info вместо этого.
  • vmware_guest_disk_facts используйте vmware_guest_disk_info вместо этого.
  • vmware_host_capability_facts используйте vmware_host_capability_info вместо этого.
  • vmware_host_config_facts используйте vmware_host_config_info вместо этого.
  • vmware_host_dns_facts используйте vmware_host_dns_info вместо этого.
  • vmware_host_feature_facts используйте vmware_host_feature_info вместо этого.
  • vmware_host_firewall_facts используйте vmware_host_firewall_info вместо этого.
  • vmware_host_ntp_facts используйте vmware_host_ntp_info вместо этого.
  • vmware_host_package_facts используйте vmware_host_package_info вместо этого.
  • vmware_host_service_facts используйте vmware_host_service_info вместо этого.
  • vmware_host_ssl_facts используйте vmware_host_ssl_info вместо этого.
  • vmware_host_vmhba_facts используйте vmware_host_vmhba_info вместо этого.
  • vmware_host_vmnic_facts используйте vmware_host_vmnic_info вместо этого.
  • vmware_local_role_facts используйте vmware_local_role_info вместо этого.
  • vmware_local_user_facts используйте vmware_local_user_info вместо этого.
  • vmware_portgroup_facts используйте vmware_portgroup_info вместо этого.
  • vmware_resource_pool_facts используйте vmware_resource_pool_info вместо этого.
  • vmware_target_canonical_facts используйте vmware_target_canonical_info вместо этого.
  • vmware_vmkernel_facts используйте vmware_vmkernel_info вместо этого.
  • vmware_vswitch_facts используйте vmware_vswitch_info вместо этого.
  • vultr_account_facts используйте vultr_account_info вместо этого.
  • vultr_block_storage_facts используйте vultr_block_storage_info вместо этого.
  • vultr_dns_domain_facts используйте vultr_dns_domain_info вместо этого.
  • vultr_firewall_group_facts используйте vultr_firewall_group_info вместо этого.
  • vultr_network_facts используйте vultr_network_info вместо этого.
  • vultr_os_facts используйте vultr_os_info вместо этого.
  • vultr_plan_facts используйте vultr_plan_info вместо этого.
  • vultr_region_facts используйте vultr_region_info вместо этого.
  • vultr_server_facts используйте vultr_server_info вместо этого.
  • vultr_ssh_key_facts используйте vultr_ssh_key_info вместо этого.
  • vultr_startup_script_facts используйте vultr_startup_script_info вместо этого.
  • vultr_user_facts используйте vultr_user_info вместо этого.
  • vyos_interface используйте vyos_interfaces вместо этого.
  • vyos_l3_interface используйте vyos_l3_interfaces вместо этого.
  • vyos_linkagg используйте vyos_lag_interfaces вместо этого.
  • vyos_lldp используйте vyos_lldp_global вместо этого.
  • Модуль vyos_lldp_interface следует заменить на vyos_lldp_interfaces.

Следующая функциональность будет удалена в Ansible 2.12. Пожалуйста, обновите ваши playbook-файлы соответственно.

  • vmware_cluster Конфигурация DRS, HA и VSAN; используйте vmware_cluster_drs, vmware_cluster_ha и vmware_cluster_vsan.

Следующая функциональность будет удалена в Ansible 2.13. Пожалуйста, обновите ваши playbook-файлы соответственно.

  • openssl_certificate устаревает assertonly поставщик. Обратитесь к документации openssl_certificate для примеров замены поставщика на openssl_certificate_info, openssl_csr_info, openssl_privatekey_info и assert модулей.

Для следующих модулей, бэкенд на основе PyOpenSSL pyopenssl устарел и будет удален в Ansible 2.13:

  • get_certificate
  • openssl_certificate
  • openssl_certificate_info
  • openssl_csr
  • openssl_csr_info
  • openssl_privatekey
  • openssl_privatekey_info
  • openssl_publickey

Переименованные модули

Следующие модули были переименованы. Старое имя устарело и будет удалено в Ansible 2.13. Пожалуйста, обновите ваши playbook-файлы соответственно.

  • Модуль ali_instance_facts был переименован в ali_instance_info.
  • Модуль aws_acm_facts был переименован в aws_acm_info.
  • Модуль aws_az_facts был переименован в aws_az_info.
  • Модуль aws_caller_facts был переименован в aws_caller_info.
  • Модуль aws_kms_facts был переименован в aws_kms_info.
  • Модуль aws_region_facts был переименован в aws_region_info.
  • Модуль aws_s3_bucket_facts был переименован в aws_s3_bucket_info. При вызове с новым именем, модуль больше не возвращает ansible_facts. Для доступа к значениям возврата, зарегистрируйте переменную.
  • Модуль aws_sgw_facts был переименован в aws_sgw_info.
  • Модуль aws_waf_facts был переименован в aws_waf_info.
  • Модуль azure_rm_aks_facts был переименован в azure_rm_aks_info.
  • Модуль azure_rm_aksversion_facts был переименован в azure_rm_aksversion_info.
  • Модуль azure_rm_applicationsecuritygroup_facts был переименован в azure_rm_applicationsecuritygroup_info.
  • Модуль azure_rm_appserviceplan_facts был переименован в azure_rm_appserviceplan_info.
  • Модуль azure_rm_automationaccount_facts был переименован в azure_rm_automationaccount_info.
  • Модуль azure_rm_autoscale_facts был переименован в azure_rm_autoscale_info.
  • Модуль azure_rm_availabilityset_facts был переименован в azure_rm_availabilityset_info.
  • Модуль azure_rm_cdnendpoint_facts был переименован в azure_rm_cdnendpoint_info.
  • Модуль azure_rm_cdnprofile_facts был переименован в azure_rm_cdnprofile_info.
  • Модуль azure_rm_containerinstance_facts был переименован в azure_rm_containerinstance_info.
  • Модуль azure_rm_containerregistry_facts был переименован в azure_rm_containerregistry_info.
  • Модуль azure_rm_cosmosdbaccount_facts был переименован в azure_rm_cosmosdbaccount_info.
  • Модуль azure_rm_deployment_facts был переименован в azure_rm_deployment_info.
  • Модуль azure_rm_resourcegroup_facts был переименован в azure_rm_resourcegroup_info.
  • Модуль bigip_device_facts был переименован в bigip_device_info.
  • Модуль bigiq_device_facts был переименован в bigiq_device_info.
  • Модуль cloudformation_facts был переименован в cloudformation_info. При вызове с новым именем, модуль больше не возвращает ansible_facts. Для доступа к значениям возврата, зарегистрируйте переменную.
  • Модуль cloudfront_facts был переименован в cloudfront_info. При вызове с новым именем, модуль больше не возвращает ansible_facts. Для доступа к значениям возврата, зарегистрируйте переменную.
  • Модуль cloudwatchlogs_log_group_facts был переименован в cloudwatchlogs_log_group_info.
  • Модуль digital_ocean_account_facts был переименован в digital_ocean_account_info.
  • Модуль digital_ocean_certificate_facts был переименован в digital_ocean_certificate_info.
  • Модуль digital_ocean_domain_facts был переименован в digital_ocean_domain_info.
  • Модуль digital_ocean_firewall_facts был переименован в digital_ocean_firewall_info.
  • Модуль digital_ocean_floating_ip_facts был переименован в digital_ocean_floating_ip_info.
  • Модуль digital_ocean_image_facts был переименован в digital_ocean_image_info.
  • Модуль digital_ocean_load_balancer_facts был переименован в digital_ocean_load_balancer_info.
  • Модуль digital_ocean_region_facts был переименован в digital_ocean_region_info.
  • Модуль digital_ocean_size_facts был переименован в digital_ocean_size_info.
  • Модуль digital_ocean_snapshot_facts был переименован в digital_ocean_snapshot_info.
  • Модуль digital_ocean_tag_facts был переименован в digital_ocean_tag_info.
  • Модуль digital_ocean_volume_facts был переименован в digital_ocean_volume_info.
  • Модуль ec2_ami_facts был переименован в ec2_ami_info.
  • Модуль ec2_asg_facts был переименован в ec2_asg_info.
  • Модуль ec2_customer_gateway_facts был переименован в ec2_customer_gateway_info.
  • Модуль ec2_eip_facts был переименован в ec2_eip_info.
  • Модуль ec2_elb_facts был переименован в ec2_elb_info.
  • Модуль ec2_eni_facts был переименован в ec2_eni_info.
  • Модуль ec2_group_facts был переименован в ec2_group_info.
  • Модуль ec2_instance_facts был переименован в ec2_instance_info.
  • Модуль ec2_lc_facts был переименован в ec2_lc_info.
  • Модуль ec2_placement_group_facts был переименован в ec2_placement_group_info.
  • Модуль ec2_snapshot_facts был переименован в ec2_snapshot_info.
  • Модуль ec2_vol_facts был переименован в ec2_vol_info.
  • Модуль ec2_vpc_dhcp_option_facts был переименован в ec2_vpc_dhcp_option_info.
  • Модуль ec2_vpc_endpoint_facts был переименован в ec2_vpc_endpoint_info.
  • Модуль ec2_vpc_igw_facts был переименован в ec2_vpc_igw_info.
  • Модуль ec2_vpc_nacl_facts был переименован в ec2_vpc_nacl_info.
  • Модуль ec2_vpc_nat_gateway_facts был переименован в ec2_vpc_nat_gateway_info.
  • Модуль ec2_vpc_net_facts был переименован в ec2_vpc_net_info.
  • Модуль ec2_vpc_peering_facts был переименован в ec2_vpc_peering_info.
  • Модуль ec2_vpc_route_table_facts был переименован в ec2_vpc_route_table_info.
  • Модуль ec2_vpc_subnet_facts был переименован в ec2_vpc_subnet_info.
  • Модуль ec2_vpc_vgw_facts был переименован в ec2_vpc_vgw_info.
  • Модуль ec2_vpc_vpn_facts был переименован в ec2_vpc_vpn_info.
  • Модуль ecs_service_facts был переименован в ecs_service_info. При вызове с новым именем, модуль больше не возвращает ansible_facts. Для доступа к значениям возврата, зарегистрируйте переменную.
  • Модуль ecs_taskdefinition_facts был переименован в ecs_taskdefinition_info.
  • Модуль efs_facts был переименован в efs_info. При вызове с новым именем, модуль больше не возвращает ansible_facts. Для доступа к значениям возврата, зарегистрируйте переменную.
  • Модуль elasticache_facts был переименован в elasticache_info.
  • Модуль elb_application_lb_facts был переименован в elb_application_lb_info.
  • Модуль elb_classic_lb_facts был переименован в elb_classic_lb_info.
  • Модуль elb_target_facts был переименован в elb_target_info.
  • Модуль elb_target_group_facts был переименован в elb_target_group_info.
  • Модуль gcp_bigquery_dataset_facts был переименован в gcp_bigquery_dataset_info.
  • Модуль gcp_bigquery_table_facts был переименован в gcp_bigquery_table_info.
  • Модуль gcp_cloudbuild_trigger_facts был переименован в gcp_cloudbuild_trigger_info.
  • Модуль gcp_compute_address_facts был переименован в gcp_compute_address_info.
  • Модуль gcp_compute_backend_bucket_facts был переименован в gcp_compute_backend_bucket_info.
  • Модуль gcp_compute_backend_service_facts был переименован в gcp_compute_backend_service_info.
  • Модуль gcp_compute_disk_facts был переименован в gcp_compute_disk_info.
  • Модуль gcp_compute_firewall_facts был переименован в gcp_compute_firewall_info.
  • Модуль gcp_compute_forwarding_rule_facts был переименован в gcp_compute_forwarding_rule_info.
  • Модуль gcp_compute_global_address_facts был переименован в gcp_compute_global_address_info.
  • Модуль gcp_compute_global_forwarding_rule_facts был переименован в gcp_compute_global_forwarding_rule_info.
  • Модуль gcp_compute_health_check_facts был переименован в gcp_compute_health_check_info.
  • Модуль gcp_compute_http_health_check_facts был переименован в gcp_compute_http_health_check_info.
  • Модуль gcp_compute_https_health_check_facts был переименован в gcp_compute_https_health_check_info.
  • Модуль gcp_compute_image_facts был переименован в gcp_compute_image_info.
  • Модуль gcp_compute_instance_facts был переименован в gcp_compute_instance_info.
  • Модуль gcp_compute_instance_group_facts был переименован в gcp_compute_instance_group_info.
  • Модуль gcp_compute_instance_group_manager_facts был переименован в gcp_compute_instance_group_manager_info.
  • Модуль gcp_compute_instance_template_facts был переименован в gcp_compute_instance_template_info.
  • Модуль gcp_compute_interconnect_attachment_facts был переименован в gcp_compute_interconnect_attachment_info.
  • Модуль gcp_compute_network_facts был переименован в gcp_compute_network_info.
  • Модуль gcp_compute_region_disk_facts был переименован в gcp_compute_region_disk_info.
  • Модуль gcp_compute_route_facts был переименован в gcp_compute_route_info.
  • Модуль gcp_compute_router_facts был переименован в gcp_compute_router_info.
  • Модуль gcp_compute_ssl_certificate_facts был переименован в gcp_compute_ssl_certificate_info.
  • Модуль gcp_compute_ssl_policy_facts был переименован в gcp_compute_ssl_policy_info.
  • Модуль gcp_compute_subnetwork_facts был переименован в gcp_compute_subnetwork_info.
  • Модуль gcp_compute_target_http_proxy_facts был переименован в gcp_compute_target_http_proxy_info.
  • Модуль gcp_compute_target_https_proxy_facts был переименован в gcp_compute_target_https_proxy_info.
  • Модуль gcp_compute_target_pool_facts был переименован в gcp_compute_target_pool_info.
  • Модуль gcp_compute_target_ssl_proxy_facts был переименован в gcp_compute_target_ssl_proxy_info.
  • Модуль gcp_compute_target_tcp_proxy_facts был переименован в gcp_compute_target_tcp_proxy_info.
  • Модуль gcp_compute_target_vpn_gateway_facts был переименован в gcp_compute_target_vpn_gateway_info.
  • Модуль gcp_compute_url_map_facts был переименован в gcp_compute_url_map_info.
  • Модуль gcp_compute_vpn_tunnel_facts был переименован в gcp_compute_vpn_tunnel_info.
  • Модуль gcp_container_cluster_facts был переименован в gcp_container_cluster_info.
  • Модуль gcp_container_node_pool_facts был переименован в gcp_container_node_pool_info.
  • Модуль gcp_dns_managed_zone_facts был переименован в gcp_dns_managed_zone_info.
  • Модуль gcp_dns_resource_record_set_facts был переименован в gcp_dns_resource_record_set_info.
  • Модуль gcp_iam_role_facts был переименован в gcp_iam_role_info.
  • Модуль gcp_iam_service_account_facts был переименован в gcp_iam_service_account_info.
  • Модуль gcp_pubsub_subscription_facts был переименован в gcp_pubsub_subscription_info.
  • Модуль gcp_pubsub_topic_facts был переименован в gcp_pubsub_topic_info.
  • Модуль gcp_redis_instance_facts был переименован в gcp_redis_instance_info.
  • Модуль gcp_resourcemanager_project_facts был переименован в gcp_resourcemanager_project_info.
  • Модуль gcp_sourcerepo_repository_facts был переименован в gcp_sourcerepo_repository_info.
  • Модуль gcp_spanner_database_facts был переименован в gcp_spanner_database_info.
  • Модуль gcp_spanner_instance_facts был переименован в gcp_spanner_instance_info.
  • Модуль gcp_sql_database_facts был переименован в gcp_sql_database_info.
  • Модуль gcp_sql_instance_facts был переименован в gcp_sql_instance_info.
  • Модуль gcp_sql_user_facts был переименован в gcp_sql_user_info.
  • Модуль gcp_tpu_node_facts был переименован в gcp_tpu_node_info.
  • Модуль gcpubsub_facts был переименован в gcpubsub_info.
  • Модуль github_webhook_facts был переименован в github_webhook_info.
  • Модуль gluster_heal_facts был переименован в gluster_heal_info. При вызове с новым именем модуль больше не возвращает ansible_facts. Для доступа к значениям возврата необходимо зарегистрировать переменную.
  • Модуль hcloud_datacenter_facts был переименован в hcloud_datacenter_info. При вызове с новым именем модуль больше не возвращает ansible_facts. Для доступа к значениям возврата необходимо зарегистрировать переменную.
  • Модуль hcloud_floating_ip_facts был переименован в hcloud_floating_ip_info. При вызове с новым именем модуль больше не возвращает ansible_facts. Для доступа к значениям возврата необходимо зарегистрировать переменную.
  • Модуль hcloud_image_facts был переименован в hcloud_image_info. При вызове с новым именем модуль больше не возвращает ansible_facts. Для доступа к значениям возврата необходимо зарегистрировать переменную.
  • Модуль hcloud_location_facts был переименован в hcloud_location_info. При вызове с новым именем модуль больше не возвращает ansible_facts. Для доступа к значениям возврата необходимо зарегистрировать переменную.
  • Модуль hcloud_server_facts был переименован в hcloud_server_info. При вызове с новым именем модуль больше не возвращает ansible_facts. Для доступа к значениям возврата необходимо зарегистрировать переменную.
  • Модуль hcloud_server_type_facts был переименован в hcloud_server_type_info. При вызове с новым именем модуль больше не возвращает ansible_facts. Для доступа к значениям возврата необходимо зарегистрировать переменную.
  • Модуль hcloud_ssh_key_facts был переименован в hcloud_ssh_key_info. При вызове с новым именем модуль больше не возвращает ansible_facts. Для доступа к значениям возврата необходимо зарегистрировать переменную.
  • Модуль hcloud_volume_facts был переименован в hcloud_volume_info. При вызове с новым именем модуль больше не возвращает ansible_facts. Для доступа к значениям возврата необходимо зарегистрировать переменную.
  • Модуль hpilo_facts был переименован в hpilo_info. При вызове с новым именем модуль больше не возвращает ansible_facts. Для доступа к значениям возврата необходимо зарегистрировать переменную.
  • Модуль iam_mfa_device_facts был переименован в iam_mfa_device_info.
  • Модуль iam_role_facts был переименован в iam_role_info.
  • Модуль iam_server_certificate_facts был переименован в iam_server_certificate_info.
  • Модуль idrac_redfish_facts был переименован в idrac_redfish_info. При вызове с новым именем модуль больше не возвращает ansible_facts. Для доступа к значениям возврата необходимо зарегистрировать переменную.
  • Модуль intersight_facts был переименован в intersight_info.
  • Модуль jenkins_job_facts был переименован в jenkins_job_info.
  • Модуль k8s_facts был переименован в k8s_info.
  • Модуль memset_memstore_facts был переименован в memset_memstore_info.
  • Модуль memset_server_facts был переименован в memset_server_info.
  • Модуль one_image_facts был переименован в one_image_info.
  • Модуль onepassword_facts был переименован в onepassword_info. При вызове с новым именем модуль больше не возвращает ansible_facts. Для доступа к возвращаемым значениям, зарегистрируйте переменную.
  • Модуль oneview_datacenter_facts был переименован в oneview_datacenter_info. При вызове с новым именем модуль больше не возвращает ansible_facts. Для доступа к возвращаемым значениям, зарегистрируйте переменную.
  • Модуль oneview_enclosure_facts был переименован в oneview_enclosure_info. При вызове с новым именем модуль больше не возвращает ansible_facts. Для доступа к возвращаемым значениям, зарегистрируйте переменную.
  • Модуль oneview_ethernet_network_facts был переименован в oneview_ethernet_network_info. При вызове с новым именем модуль больше не возвращает ansible_facts. Для доступа к возвращаемым значениям, зарегистрируйте переменную.
  • Модуль oneview_fc_network_facts был переименован в oneview_fc_network_info. При вызове с новым именем модуль больше не возвращает ansible_facts. Для доступа к возвращаемым значениям, зарегистрируйте переменную.
  • Модуль oneview_fcoe_network_facts был переименован в oneview_fcoe_network_info. При вызове с новым именем модуль больше не возвращает ansible_facts. Для доступа к возвращаемым значениям, зарегистрируйте переменную.
  • Модуль oneview_logical_interconnect_group_facts был переименован в oneview_logical_interconnect_group_info. При вызове с новым именем модуль больше не возвращает ansible_facts. Для доступа к возвращаемым значениям, зарегистрируйте переменную.
  • Модуль oneview_network_set_facts был переименован в oneview_network_set_info. При вызове с новым именем модуль больше не возвращает ansible_facts. Для доступа к возвращаемым значениям, зарегистрируйте переменную.
  • Модуль oneview_san_manager_facts был переименован в oneview_san_manager_info. При вызове с новым именем модуль больше не возвращает ansible_facts. Для доступа к возвращаемым значениям, зарегистрируйте переменную.
  • Модуль os_flavor_facts был переименован в os_flavor_info. При вызове с новым именем модуль больше не возвращает ansible_facts. Для доступа к возвращаемым значениям, зарегистрируйте переменную.
  • Модуль os_image_facts был переименован в os_image_info. При вызове с новым именем модуль больше не возвращает ansible_facts. Для доступа к возвращаемым значениям, зарегистрируйте переменную.
  • Модуль os_keystone_domain_facts был переименован в os_keystone_domain_info. При вызове с новым именем модуль больше не возвращает ansible_facts. Для доступа к возвращаемым значениям, зарегистрируйте переменную.
  • Модуль os_networks_facts был переименован в os_networks_info. При вызове с новым именем модуль больше не возвращает ansible_facts. Для доступа к возвращаемым значениям, зарегистрируйте переменную.
  • Модуль os_port_facts был переименован в os_port_info. При вызове с новым именем модуль больше не возвращает ansible_facts. Для доступа к возвращаемым значениям, зарегистрируйте переменную.
  • Модуль os_project_facts был переименован в os_project_info. При вызове с новым именем модуль больше не возвращает ansible_facts. Для доступа к возвращаемым значениям, зарегистрируйте переменную.
  • Модуль os_server_facts был переименован в os_server_info. При вызове с новым именем модуль больше не возвращает ansible_facts. Для доступа к возвращаемым значениям, зарегистрируйте переменную.
  • Модуль os_subnets_facts был переименован в os_subnets_info. При вызове с новым именем модуль больше не возвращает ansible_facts. Для доступа к возвращаемым значениям, зарегистрируйте переменную.
  • Модуль os_user_facts был переименован в os_user_info. При вызове с новым именем модуль больше не возвращает ansible_facts. Для доступа к возвращаемым значениям, зарегистрируйте переменную.
  • Модуль ovirt_affinity_label_facts был переименован в ovirt_affinity_label_info. При вызове с новым именем модуль больше не возвращает ansible_facts. Для доступа к возвращаемым значениям, зарегистрируйте переменную.
  • Модуль ovirt_api_facts был переименован в ovirt_api_info. При вызове с новым именем модуль больше не возвращает ansible_facts. Для доступа к значениям возврата, зарегистрируйте переменную.
  • Модуль ovirt_cluster_facts был переименован в ovirt_cluster_info. При вызове с новым именем, модуль больше не возвращает ansible_facts. Для доступа к значениям возврата, зарегистрируйте переменную.
  • Модуль ovirt_datacenter_facts был переименован в ovirt_datacenter_info. При вызове с новым именем, модуль больше не возвращает ansible_facts. Для доступа к значениям возврата, зарегистрируйте переменную.
  • Модуль ovirt_disk_facts был переименован в ovirt_disk_info. При вызове с новым именем, модуль больше не возвращает ansible_facts. Для доступа к значениям возврата, зарегистрируйте переменную.
  • Модуль ovirt_event_facts был переименован в ovirt_event_info. При вызове с новым именем, модуль больше не возвращает ansible_facts. Для доступа к значениям возврата, зарегистрируйте переменную.
  • Модуль ovirt_external_provider_facts был переименован в ovirt_external_provider_info. При вызове с новым именем, модуль больше не возвращает ansible_facts. Для доступа к значениям возврата, зарегистрируйте переменную.
  • Модуль ovirt_group_facts был переименован в ovirt_group_info. При вызове с новым именем, модуль больше не возвращает ansible_facts. Для доступа к значениям возврата, зарегистрируйте переменную.
  • Модуль ovirt_host_facts был переименован в ovirt_host_info. При вызове с новым именем, модуль больше не возвращает ansible_facts. Для доступа к значениям возврата, зарегистрируйте переменную.
  • Модуль ovirt_host_storage_facts был переименован в ovirt_host_storage_info. При вызове с новым именем, модуль больше не возвращает ansible_facts. Для доступа к значениям возврата, зарегистрируйте переменную.
  • Модуль ovirt_network_facts был переименован в ovirt_network_info. При вызове с новым именем, модуль больше не возвращает ansible_facts. Для доступа к значениям возврата, зарегистрируйте переменную.
  • Модуль ovirt_nic_facts был переименован в ovirt_nic_info. При вызове с новым именем, модуль больше не возвращает ansible_facts. Для доступа к значениям возврата, зарегистрируйте переменную.
  • Модуль ovirt_permission_facts был переименован в ovirt_permission_info. При вызове с новым именем, модуль больше не возвращает ansible_facts. Для доступа к значениям возврата, зарегистрируйте переменную.
  • Модуль ovirt_quota_facts был переименован в ovirt_quota_info. При вызове с новым именем, модуль больше не возвращает ansible_facts. Для доступа к значениям возврата, зарегистрируйте переменную.
  • Модуль ovirt_scheduling_policy_facts был переименован в ovirt_scheduling_policy_info. При вызове с новым именем, модуль больше не возвращает ansible_facts. Для доступа к значениям возврата, зарегистрируйте переменную.
  • Модуль ovirt_snapshot_facts был переименован в ovirt_snapshot_info. При вызове с новым именем, модуль больше не возвращает ansible_facts. Для доступа к значениям возврата, зарегистрируйте переменную.
  • Модуль ovirt_storage_domain_facts был переименован в ovirt_storage_domain_info. При вызове с новым именем, модуль больше не возвращает ansible_facts. Для доступа к значениям возврата, зарегистрируйте переменную.
  • Модуль ovirt_storage_template_facts был переименован в ovirt_storage_template_info. При вызове с новым именем, модуль больше не возвращает ansible_facts. Для доступа к значениям возврата, зарегистрируйте переменную.
  • Модуль ovirt_storage_vm_facts был переименован в ovirt_storage_vm_info. При вызове с новым именем, модуль больше не возвращает ansible_facts. Для доступа к значениям возврата, зарегистрируйте переменную.
  • Модуль ovirt_tag_facts был переименован в ovirt_tag_info. При вызове с новым именем, модуль больше не возвращает ansible_facts. Для доступа к значениям возврата, зарегистрируйте переменную.
  • Модуль ovirt_template_facts был переименован в ovirt_template_info. При вызове с новым именем, модуль больше не возвращает ansible_facts. Для доступа к значениям возврата, зарегистрируйте переменную.
  • Модуль ovirt_user_facts был переименован в ovirt_user_info. При вызове с новым именем, модуль больше не возвращает ansible_facts. Для доступа к значениям возврата, зарегистрируйте переменную.
  • Модуль ovirt_vm_facts был переименован в ovirt_vm_info. При вызове с новым именем модуль больше не возвращает ansible_facts. Для доступа к возвращаемым значениям, зарегистрируйте переменную.
  • Модуль ovirt_vmpool_facts был переименован в ovirt_vmpool_info. При вызове с новым именем, модуль больше не возвращает ansible_facts. Для доступа к возвращаемым значениям, зарегистрируйте переменную.
  • Модуль python_requirements_facts был переименован в python_requirements_info.
  • Модуль rds_instance_facts был переименован в rds_instance_info.
  • Модуль rds_snapshot_facts был переименован в rds_snapshot_info.
  • Модуль redfish_facts был переименован в redfish_info. При вызове с новым именем, модуль больше не возвращает ansible_facts. Для доступа к возвращаемым значениям, зарегистрируйте переменную.
  • Модуль redshift_facts был переименован в redshift_info.
  • Модуль route53_facts был переименован в route53_info.
  • Модуль smartos_image_facts был переименован в smartos_image_info. При вызове с новым именем, модуль больше не возвращает ansible_facts. Для доступа к возвращаемым значениям, зарегистрируйте переменную.
  • Модуль vertica_facts был переименован в vertica_info. При вызове с новым именем, модуль больше не возвращает ansible_facts. Для доступа к возвращаемым значениям, зарегистрируйте переменную.
  • Модуль vmware_cluster_facts был переименован в vmware_cluster_info.
  • Модуль vmware_datastore_facts был переименован в vmware_datastore_info.
  • Модуль vmware_guest_facts был переименован в vmware_guest_info.
  • Модуль vmware_guest_snapshot_facts был переименован в vmware_guest_snapshot_info.
  • Модуль vmware_tag_facts был переименован в vmware_tag_info.
  • Модуль vmware_vm_facts был переименован в vmware_vm_info.
  • Модуль xenserver_guest_facts был переименован в xenserver_guest_info.
  • Модуль zabbix_group_facts был переименован в zabbix_group_info.
  • Модуль zabbix_host_facts был переименован в zabbix_host_info.

Важные изменения в модулях

  • vmware_cluster был переработан для упрощения обслуживания/исправления ошибок. Используйте три новых специализированных модуля для настройки кластеров. Настройте DRS с помощью vmware_cluster_drs, HA с помощью vmware_cluster_ha и vSAN с помощью vmware_cluster_vsan.
  • vmware_dvswitch принимает параметр folder для размещения dvswitch в пользовательской папке. Этот параметр делает datacenter необязательным.
  • vmware_datastore_cluster принимает параметр folder для размещения кластера хранилищ данных в пользовательской папке. Этот параметр делает datacenter необязательным.
  • mysql_db возвращает новый параметр db_list в дополнение к параметру db. Этот параметр db_list относится к списку имен баз данных. Параметр db будет устаревшим в версии 2.13.
  • snow_record и snow_record_find теперь принимают переменные среды для параметров instance, username и password. Это изменение делает эти параметры необязательными.
  • Устаревший параметр force в win_firewall_rule был удален.
  • openssl_certificate’s ownca provider создаёт идентификаторы ключа авторитета, если они не отключены явно параметром ownca_create_authority_key_identifier: no. Это справедливо только для cryptography бэкенда, который выбирается по умолчанию, если доступна библиотека cryptography.
  • openssl_certificate’s ownca и selfsigned providers создают идентификаторы ключа субъекта, если они не отключены явно параметрами ownca_create_subject_key_identifier: never_create соответственно selfsigned_create_subject_key_identifier: never_create. Если идентификатор ключа субъекта предоставляется CSR, он используется; в противном случае он создаётся из открытого ключа. Это справедливо только для cryptography бэкенда, который выбирается по умолчанию, если доступна библиотека cryptography.
  • openssh_keypair теперь применяет те же права доступа к файлам и владения и открытым и закрытым ключам (оба получают одинаковые mode, owner, group, и так далее). Если вам нужно изменить права доступа/владения одному ключу, используйте модуль file для его изменения после создания.

Плагины

Удаленные плагины поиска

  • redis_kv используйте redis вместо этого.

Перевод пользовательских скриптов

Незначительных изменений нет

Сеть

Модули ресурсов сети

В Ansible 2.9 был представлен первый набор модулей ресурсов сети. Разделы конфигурации сетевого устройства можно рассматривать как ресурс, предоставляемый этим устройством. Модули ресурсов сети преднамеренно ограничены конфигурированием одного ресурса, и их можно комбинировать как строительные блоки для конфигурации сложных сетевых служб. Более старые модули устарели в Ansible 2.9 и будут удалены в Ansible 2.13. Вы должны просмотреть список устаревших модулей выше и заменить их новыми модулями ресурсов сети в ваших playbook. Подробнее см. Сетевые возможности Ansible в версии 2.9.

Улучшенная gather_facts поддержка сетевых устройств

В Ansible 2.9 ключевое слово gather_facts теперь поддерживает сбор фактов сетевого устройства в стандартизированных парах ключ-значение. Эти сетевые факты можно передать в дальнейшие задачи для управления сетевым устройством. Также можно использовать новый параметр gather_network_resources с сетевыми *_facts модулями (например, eos_facts), чтобы вернуть только подмножество конфигурации устройства. Пример см. в Сбор фактов из сетевых устройств.

Аргументы подключения верхнего уровня удалены в 2.9

Аргументы подключения верхнего уровня, такие как username, host, и password удалены в версии 2.9.

СТАРОЕ В Ansible < 2.4

- name: example of using top-level options for connection properties
  ios_command:
    commands: show version
    host: "{{ inventory_hostname }}"
    username: cisco
    password: cisco
    authorize: yes
    auth_pass: cisco

Измените свои playbook на типы подключений network_cli и netconf с использованием стандартных свойств подключения Ansible и установкой этих свойств в инвентаризации по группе. При обновлении ваших playbook и файлов инвентаризации вы легко можете изменить become для повышения привилегий (на платформах, которые это поддерживают). Дополнительную информацию см. в руководстве использование become с модулями сети и в документации по платформам.

© 2012–2018 Michael DeHaan
© 2018–2021 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.11/porting_guides/porting_guide_2.9.html

Spec-Zone.ru

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