首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Puppet代理应根据位置选择DNS和NTP服务器

Puppet代理应根据位置选择DNS和NTP服务器
EN

Stack Overflow用户
提问于 2015-09-12 02:55:39
回答 1查看 143关注 0票数 0

我们的基础设施中有3个不同的数据中心。我正在使用puppetlabs/ntp模块和saz/resolv,并使用hiera_include('classes')将这两个模块安装到添加到puppet的所有代理。

现在,我的common.yaml文件如下所示:

代码语言:javascript
运行
复制
---
classes: ['ntp', 'resolv_conf']
ntp::servers:
        - datacenter1 NTP server
        - datacenter2 NTP server
        - datacenter3 NTP server
resolv_conf::nameservers:
        - datacenter1 DNS server
        - datacenter2 DNS server
        - datacenter3 DNS server

因此,我在Datacenter 3中的傀儡代理获得了所有3个数据中心的NTP服务器和DNS服务器。

但我希望它只是根据它的位置选择NTP服务器和DNS服务器。

例如,如果我的傀儡代理在数据中心1中,那么使用数据中心1中的NTP和DNS服务器。我如何在common.yaml中定义它?

EN

回答 1

Stack Overflow用户

发布于 2015-09-12 16:50:09

我建议改变你的hiera层次结构,例如在你的傀儡代理上定义custom facts。因此,您定义了一些自定义事实,假设为data_center,然后修改您的hiera层次结构,例如:

代码语言:javascript
运行
复制
:hierarchy:
  - "%{::data_center}"
  - common

data_center的值应该取决于您的agent所在的位置,例如,假设对于数据中心N中的代理,该值为datacenter_n。最后,在puppet master上创建包含以下内容的文件datacenter_n.yaml

代码语言:javascript
运行
复制
ntp::servers:
    - datacenterN NTP server
resolv_conf::nameservers:
    - datacenterN DNS server
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/32530360

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档