我一直在研究尝试在远程目标上使用 python3,以便针对它们运行 playbook,但是,简单地针对安装了 python3 的目标运行 playbook 失败并显示错误消息:
"/bin/sh: 1: /usr/bin/python: not found\r\n"
Run Code Online (Sandbox Code Playgroud)
在网上寻找这个问题的答案似乎只是讨论在主机上配置 ansible 以使用 python3 而不是远程。是否可以将遥控器配置为使用 python3 而不是 2?
您可以设置该ansible_python_interpreter变量以告诉 Ansible 使用哪个版本的 Python。您可以像 C. Dodds 在他们的回答中所建议的那样全局设置它,但通常将它设置为每个主机的清单变量更有意义。例如,使用 YAML 清单:
all:
hosts:
myhost:
ansible_python_interpreter: /usr/bin/python3
Run Code Online (Sandbox Code Playgroud)
或者使用 ini 风格的库存:
myhost ansible_python_interpreter=/usr/bin/python3
Run Code Online (Sandbox Code Playgroud)
当然,如果您有多个需要相同配置的主机,您可以设置每个主机组。
这在Ansible 文档中进行了讨论。
| 归档时间: |
|
| 查看次数: |
2181 次 |
| 最近记录: |