gpt4 book ai didi

salt-stack - 解释使用 mine.get 进入 salt 状态

转载 作者:行者123 更新时间:2023-12-02 15:12:44 26 4
gpt4 key购买 nike

谁能给我一个白痴解释以下是如何工作的:

{% for server, addrs in salt['mine.get']('roles:web', 'network.ip_addrs', expr_form='grain') | dictsort() %}
server {{ server }} {{ addrs[0] }}:80 check
{% endfor %}

支柱文件如下所示:

mine_functions:
network.ip_addrs: [eth0]

salt 为前两个值 serveraddrs 分配了什么?您将如何在上面使用多个地雷选项?也就是说,如果你的 pillar 文件有一个额外的 mine 函数,如下所示:

mine_functions:
network.ip_addrs: [eth0]
role:
- mine_function: grains.get
- role

然后您如何访问第一个代码片段中的角色函数?

希望这是有道理的

最佳答案

我的

在你的 pillar 中定义的 mine 函数告诉 minions 将一些关于它们的信息推送给 salt master。然后您可以使用 mine.get 从任何 minion 访问它。这记录在 this page 中.

我的.get

首先,你可以自己看一下mine.get的结果:

salt 'minion0' mine.get 'roles:web' 'network.ip_addrs' expr_form='grain'
minion0:
----------
minion1:
- ip1
- ip2
minion2:
- ip

所以你得到了一个字典,键是 minions id,值是网络 ip 地址列表。 dictsort() 函数在传递给循环变量之前对键进行排序。

您最终得到包含 minion id 的 server,以及它的 IP 地址列表 addrs

第一个参数过滤你想要获取哪些minions数据,第三个参数(expr_form)是这个过滤器的过滤类型。您可以使用 globgraincompound,基本上任何 salt targeting .

现在,要访问 role 挖掘的数据,您只需将 network.ip_addrs 替换为 role

关于salt-stack - 解释使用 mine.get 进入 salt 状态,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42631951/

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