Chef 使用不同的 IP 地址

Chef 使用不同的 IP 地址

刚从 Amazon 转移到 Joyent(不管为什么)并设置我的 Chef 服务器时发现以下问题:

您可能知道,Chef 根据路由表设置 IP 地址。因此,在我的例子中,客户端通知服务器的 IP 是我的公网 IP。

我有一个方法,可以使用客户端提供的 IP 和 FQDN 动态写入 /etc/hosts 文件。问题是,我需要使用私有 IP,这样到达本地计算机的所有流量实际上都是本地的。

我尝试node['network']['ipaddress_eth1']在 hosts.erb 模板文件上使用,但是不起作用。

我错过了什么云?还有其他方法可以使用我的私有 IP 写入主机文件吗?

谢谢

更新

其实有一种方法可以找到我想要的东西,使用舍夫

chef > asdf = node['network']['interfaces']['eth1']['addresses'].keys.select { |a| a[/\A\d+\.\d+\.\d+\.\d+\Z/] }.first

这将返回我的 eth1 上的 IP 地址。

答案1

为了解决这个问题我使用了ipaddr_extensions 宝石然后添加私有IP地址归因于ohai。

相关内容