Ansible:通过资源清册设置http_代理

Ansible:通过资源清册设置http_代理,ansible,environment-variables,http-proxy,ansible-inventory,Ansible,Environment Variables,Http Proxy,Ansible Inventory,我在一个站点中有一组服务器,其中一些服务器只能访问管理网络而不能访问Internet,因此我需要为它们配置http_代理,以便能够拉包,等等 现在,我有了一个顶级的playbook,我将它应用于所有服务器,我正在寻找一种方法,只为那些需要它的服务器设置environment/http_代理设置。有没有办法使用主机/组变量以某种方式设置环境 我试图重写ansible\u env变量,但它不起作用,我猜它在第一个剧本步骤(gather\u facts)中被重写了 除了复制剧本中的剧本,将它们限制在团

我在一个站点中有一组服务器,其中一些服务器只能访问管理网络而不能访问Internet,因此我需要为它们配置http_代理,以便能够拉包,等等

现在,我有了一个顶级的playbook,我将它应用于所有服务器,我正在寻找一种方法,只为那些需要它的服务器设置environment/http_代理设置。有没有办法使用主机/组变量以某种方式设置环境

我试图重写
ansible\u env
变量,但它不起作用,我猜它在第一个剧本步骤(
gather\u facts
)中被重写了

除了复制剧本中的剧本,将它们限制在团队中,并在那里设置环境之外,还有其他方法来实现我想要的吗


提前感谢。

这似乎是不可能的,因为库存变量是特定于ansible的,它们不是环境变量

如果服务器需要设置
proxy\u http
,请将其直接放在服务器上的任何相关文件上,如
/etc/environment
,以便在系统范围内或在用户配置文件中。这样ansible应该透明地使用它

此外,官方ansible建议在任务或游戏级别使用环境变量