我试图通过使用Ansible Fact来找出机器的架构。
我们可以通过运行ansible -m setup <host-name>命令来收集有关机器的信息。如文档中所述:Discovering variables: facts and magic variables — Ansible Documentation。
但是看起来ansible_architecture和ansible_machine是相同的值。我不确定它们之间的区别。以上文档中的示例显示了以下两个值,它们具有相同的值:
"ansible_architecture": "x86_64",
"ansible_machine": "x86_64",在我的M1 MacBook上,结果如下所示:
shuuji3@momo mac-dev-playbook
> ansible -m setup localhost | egrep '_architecture|_machine'
"ansible_architecture": "arm64",
"ansible_machine": "arm64",我们可以互换使用这些值吗?或者它们在另一种情况下可以有其他值?
发布于 2021-03-27 15:05:06
根据代码(https://github.com/ansible/ansible/blob/devel/lib/ansible/module_utils/facts/system/platform.py),它几乎总是相同的。
在Solaris、AIX和OpenBSD上,该值可以不同。
我猜ansible_machine应该是机器架构( platform.machine() https://docs.python.org/3/library/platform.html的价值),而ansible_architecture更像是操作系统架构?
https://stackoverflow.com/questions/66828315
复制相似问题