在 /etc/salt/master 之外定义节点组
Define node groups outside of /etc/salt/master
是否可以在主配置文件之外定义节点组 (/etc/salt/master)。似乎像动态节点组这样的东西不应该在主配置中,或者我是不是以错误的方式考虑节点组。
这是我的场景,我们的服务器在其命名约定中按角色分类。这意味着我们有多个名为 location-nginxXX.mydomain.com 的服务器,其中 XX 表示节点。节点 can/will 上的应用程序随时间变化。当我们将应用程序从一个节点移动到另一个节点时,我们希望以附加状态和支柱项来定位新节点。理想情况下,我们会使用分配给给定应用程序的服务器列表更新一些配置(也许是支柱?)。然后我们用新应用程序的状态更新服务器,并删除不再需要的状态。
我们的方法是否合理?如果是,您如何针对一组不断变化的具有状态和支柱的随从?
如果您正在使用节点组 'dynamically',那么这通常是使用 compound matchers 之一来完成的。您定义一个 nodegroup
(在 master
中)匹配可以在配置中其他地方更改的内容(grains
是最常见的,但支柱也有效)。当你想改变服务器的组时,只需修改它的配置以匹配不同的节点组。
您可以使用 ENC(外部节点分类器)- 构建您自己的,或使用类似 reclass.
的东西
是否可以在主配置文件之外定义节点组 (/etc/salt/master)。似乎像动态节点组这样的东西不应该在主配置中,或者我是不是以错误的方式考虑节点组。
这是我的场景,我们的服务器在其命名约定中按角色分类。这意味着我们有多个名为 location-nginxXX.mydomain.com 的服务器,其中 XX 表示节点。节点 can/will 上的应用程序随时间变化。当我们将应用程序从一个节点移动到另一个节点时,我们希望以附加状态和支柱项来定位新节点。理想情况下,我们会使用分配给给定应用程序的服务器列表更新一些配置(也许是支柱?)。然后我们用新应用程序的状态更新服务器,并删除不再需要的状态。
我们的方法是否合理?如果是,您如何针对一组不断变化的具有状态和支柱的随从?
如果您正在使用节点组 'dynamically',那么这通常是使用 compound matchers 之一来完成的。您定义一个 nodegroup
(在 master
中)匹配可以在配置中其他地方更改的内容(grains
是最常见的,但支柱也有效)。当你想改变服务器的组时,只需修改它的配置以匹配不同的节点组。
您可以使用 ENC(外部节点分类器)- 构建您自己的,或使用类似 reclass.
的东西