【发布时间】:2022-09-26 09:08:14
【问题描述】:
我很沮丧地发现 ansible 模块 vmware_vm_shell 是否可以以管理员身份运行 powershell?因为很少有需要使用 powershell 运行的命令必须提升为管理员角色。
为什么我没有使用 win_shell 或 win_psexec?因为我想尝试在没有 WinRM 的 Windows VM Guest 中运行命令,所以我不需要使用 IPaddr 访问 VM,否则我们可以在这种情况下使用 vmtools 作为连接。
- name: Initiate New Disk
vmware_vm_shell:
hostname: \"{{ lookup (\'env\', \'VMWARE_HOST\' )}}\"
username: \"{{ lookup (\'env\', \'VMWARE_USER\' )}}\"
password: \"{{ lookup (\'env\', \'VMWARE_PASSWORD\' )}}\"
vm_id: \"{{ vmname }}\"
vm_username: \"administrator\"
vm_password: \"password123\"
vm_shell: \'C:\\Windows\\System32\\WindowsPowershell\\v1.0\\powershell.exe\'
vm_shell_args: \'-ExecutionPolicy Bypass -command \"Initialize-Disk -Number {{newdisk_osnum}}\"\'
vm_shell_cwd: \'C:\\Users\\administrator\\Desktop\'
wait_for_process: yes
validate_certs: no
delegate_to: localhost
register: initdisk_shell
-
我认为 \"become\" 命令仅适用于来自 ansible 的 WinRM 连接,它适用于 vmware_vm_shell 吗?因为我尝试在 vmware_vm_shell 模块中使用 become,但仍然出现相同的错误。
标签: ansible yaml vmware vmware-tools