Spec-Zone.ru › Ansible

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

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

Он предназначен для помощи в обновлении ваших playbooks, плагинов и других частей вашей инфраструктуры Ansible, чтобы они работали с этой версией Ansible.

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

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

  • Playbook

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

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

      • Переименованные модули
    • Заслуживающие внимания изменения в модулях
  • Плагины

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

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

Playbook

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

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

Циклы

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

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

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

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

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

Устаревшие элементы

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

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

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

#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_find используйте ec2_ami_facts вместо этого.
  • kubernetes используйте k8s вместо этого.
  • nxos_ip_interface используйте nxos_l3_interface вместо этого.
  • nxos_portchannel используйте nxos_linkagg вместо этого.
  • nxos_switchport используйте nxos_l2_interface вместо этого.
  • oc используйте k8s вместо этого.
  • panos_nat_policy используйте panos_nat_rule вместо этого.
  • panos_security_policy используйте panos_security_rule вместо этого.
  • vsphere_guest используйте vmware_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_interfaces вместо vyos_lldp_interface.

Следующая функциональность будет удалена в 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.
END_OF_DOCUMENT_MARKER
  • Модуль 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 Network Features в 2.9.

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

В 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–2024 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/latest/porting_guides/porting_guide_2.9.html

Spec-Zone.ru

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