Руководство по переносу Ansible 2.9
В данном разделе обсуждаются изменения в поведении между Ansible 2.8 и Ansible 2.9.
Цель этого руководства — помочь обновить ваши плейбуки, плагины и другие части вашей инфраструктуры Ansible, чтобы они работали с этой версией Ansible.
Мы рекомендуем прочитать эту страницу вместе с Журналом изменений Ansible 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
owncaprovider создаёт идентификаторы ключа авторитета, если они не отключены явно параметромownca_create_authority_key_identifier: no. Это справедливо только дляcryptographyбэкенда, который выбирается по умолчанию, если доступна библиотекаcryptography. -
openssl_certificate’s
owncaиselfsignedproviders создают идентификаторы ключа субъекта, если они не отключены явно параметрами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