You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Ansible运行Azure虚拟机扩展模块出现check_invalid_arguments参数错误如何解决

问题根因

你遇到的报错是Ansible核心版本与azure.azure_modules集合版本不兼容导致的:低版本的Azure模块工具类azure_rm_common.py的构造函数不支持高版本Ansible核心自动传入的check_invalid_arguments参数。

解决方案
  • 方案1:升级Azure Ansible集合到最新兼容版本
    执行升级命令:
ansible-galaxy collection install azure.azcollection --force

安装完成后在playbook开头指定集合前缀即可兼容:

collections:
  - azure.azcollection
  • 方案2:临时兼容适配(适合不能升级依赖的场景)
    在对应任务的参数中添加check_invalid_arguments: false关闭参数校验,修改后的任务配置如下:
- name: create Azure vm extension to enable HTTPS WinRM listener
    azure_rm_virtualmachine_extension:
      name: "winrm-extension"
      resource_group: "{{ resource_group }}"
      virtual_machine_name: "{{ item.invocation.module_args.tags.hostname }}"
      publisher: Microsoft.Compute
      virtual_machine_extension_type: CustomScriptExtension
      type_handler_version: 1.9
      settings: '{"commandToExecute": "powershell.exe -ExecutionPolicy ByPass -EncodedCommand {{winrm_enable_script}}"}'
      auto_upgrade_minor_version: true
      check_invalid_arguments: false
    with_items: "{{ azure_nic.results }}"
    loop_control:
      label: "{{ item.invocation.module_args.tags.hostname }}"
    register: azure_vm_ext
  • 方案3:降级Ansible核心版本到2.9.x,该版本不会自动传入check_invalid_arguments参数,和旧版Azure模块天然兼容。

内容的提问来源于stack exchange,提问作者user630702

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.29 13:45:03