最近新搭建了一个k8s测试环境,在使用Ansible初始化环境的时候,执行的时候出现如下的告警信息:
“[WARNING]: Platform linux on host 192.168.2.xx is using the discovered Python interpreter at /usr/bin/python3, but future installation of another Python interpretercould change this. See https://docs.ansible.com/ansible/2.9/reference_appendices/interpreter_discovery.html for more information. ”
这个错误的意思是:Ansible 在目标主机上自动发现了Python解释器位于 /usr/bin/python3 这个路径。Ansible会使用这个Python解释器来执行它的模块和脚本。但是,如果在未来,目标主机上安装了另一个Python解释器(例如,通过包管理器安装了Python 3.11,而原来的是Python 3.9),Ansible可能会自动选择新的Python解释器,而不是继续使用 /usr/bin/python3。
虽然不影响使用,但是每行结果都出现一个WARNING也是怪影响查看心情的。如何来解决这个WARNING的提示呢?
1. 在Ansible playbook或inventory文件中明确指定Python解释器的路径。
2. 如果有多个Python版本安装在目标主机上,考虑使用 ansible_python_interpreter 变量来明确指定Ansible应该使用哪个版本的Python。
例如,在inventory文件中,我们可以这样指定:
[your_group] 192.168.2.118 ansible_python_interpreter=/usr/bin/python3.9这样,Ansible就会始终使用/usr/bin/python3.9这个特定的Python解释器,而不管目标主机上是否安装了其他版本的Python。
再次执行,没有告警信息了。