undefined method `get_arp_value' for Facter::Util::IP:Module

针对Puppet 3.6.1版本中facter在获取arp_eth0事实时出现的错误,通过修改facter/util/ip.rb文件并添加特定方法get_arp_value来解决这一问题。文中详细记录了解决步骤及最终效果。

puppet版本:3.6.1

puppetmaster上执行facter的时候,总是有提示:

Could not retrieve fact='arp_eth0', resolution='<anonymous>': undefined method `get_arp_value' for Facter::Util::IP:Module


解决办法:vim /usr/lib/ruby/site_ruby/1.8/facter/util/ip.rb

#加入以下内容:


def self.get_arp_value(interface)
    arp = Facter::Util::Resolution.exec("arp -en -i #{interface} | sed -e 1d")
    if arp =~ /^\S+\s+\w+\s+(\S+)\s+\w\s+\S+$/
     return $1
    end
  end

重启puppetmaster.再次执行facter,问题解决!




本文转自 zhangzj1030 51CTO博客,原文链接:http://blog.51cto.com/tech110/1424713

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值