gpt4 book ai didi

proxy - 在 ansible 剧本中动态设置 HTTP_PROXY

转载 作者:行者123 更新时间:2023-12-04 23:09:42 25 4
gpt4 key购买 nike

我正在一堆不需要 http_proxy 的服务器和其他需要它的服务器上运行剧本(在不同的运行中)。

我读过 https://docs.ansible.com/ansible/latest/user_guide/playbooks_environment.html但它并没有真正回答这个问题......

举个例子:


- 主持人:全部
任务:
- 名称:安装vi
成为:真实
易于:
姓名:vi
状态:现在

我想在没有代理的情况下用一组服务器(比如 server01-atlanta)启动它,在另一个运行中用一组服务器(比如 server01-berlin)用代理启动它,并且在每次运行之间不更改代码(所以设法用库存变量来做到这一点)。

我愿意

最佳答案

您可以使用 group_vars/host_vars 结合环境变量来解决这个问题。她是一个基于 ansible 文档中代码的简单示例。

---
- hosts: all
vars:
proxy: # default empty
tasks:
- apt: name=cobbler state=installed
environment:
http_proxy: "{{ proxy }}"

这就是您为每个任务定义环境变量的方式。您也可以为此使用普通的 ansible 变量。文档中还有一个带有代理设置和变量的示例。请参阅:https://docs.ansible.com/ansible/latest/user_guide/playbooks_environment.html

在您的 list 中,您可以为每个主机或组定义代理变量:

atlanta:
hosts:
host1:
host2:
vars:
proxy: proxy.atlanta.example.com

有关详细信息,请参阅库存文档:https://docs.ansible.com/ansible/latest/user_guide/intro_inventory.html#host-variables

关于proxy - 在 ansible 剧本中动态设置 HTTP_PROXY,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53591531/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com