如何使用puppet配置网络设置?

如何使用puppet配置网络设置?,puppet,sles,Puppet,Sles,我已经编写了一个模块,该模块将在我的系统上配置网络设置,但我无法应用清单,因为在应用清单之前,它会执行“facter ipaddress”来查找和显示全局事实 这是否意味着为了应用傀儡清单,我们必须配置IP 因此,我有一个没有配置IP地址的系统,我想使用puppet为我配置该IP地址,因为我要求用户输入保存在.csv文件中的IP地址,然后我使用模板配置if-eth0文件。模板将执行extlookup以填充模板中的字段,并且最终在清单中调用模板。所以问题是,在puppet应用任何东西之前,它无法运

我已经编写了一个模块,该模块将在我的系统上配置网络设置,但我无法应用清单,因为在应用清单之前,它会执行“facter ipaddress”来查找和显示全局事实

这是否意味着为了应用傀儡清单,我们必须配置IP

因此,我有一个没有配置IP地址的系统,我想使用puppet为我配置该IP地址,因为我要求用户输入保存在.csv文件中的IP地址,然后我使用模板配置if-eth0文件。模板将执行extlookup以填充模板中的字段,并且最终在清单中调用模板。所以问题是,在puppet应用任何东西之前,它无法运行,并出现以下错误


facter ip地址无法解析ip,原因匿名

我不确定实际问题(如果确实需要ip)。但是,如果我理解正确,您可以尝试以下两种解决方法之一:

  • 启用DHCP
  • 这样,当您的系统启动时将需要多一点时间(假设网络上没有DHCP服务)。超时将发生,在大多数情况下,这将导致默认IP(169.254.Y.Z,如果我记得的话)。在这种情况下,您可能需要在应用静态IP之前停止/终止dhcp客户端进程,或者重新启动接口以获得新配置

  • 分配默认静态IP
  • 如果您知道无论发生什么情况(可能在rc.local中调用?)都将应用puppet配置,那么您可以使用静态IP(即10.1.1.10)配置接口,以避免出现错误消息。这是暂时的,因为一旦puppet运行,将应用正确的配置

    希望有帮助


    安德烈亚斯我不知道你在问什么。如果你没有为你的问题提供任何傀儡代码或任何错误消息,你将一无所获,浪费你的时间,浪费我们的时间。这是一个概念性的问题,如果你仔细阅读这个问题,我已经提到了错误。对木偶有很强的概念和技术背景的人应该能够很容易地理解。这里有什么困难是你无法理解的?如果您有任何具体问题,请随时提问,我将真诚地回答。这是因为我们应该能够向stackflow订户提供一些有意义的信息。不,提供的信息非常少。请通过Pastebin或类似工具提供
    puppet代理--test--debug--verbose--trace
    的输出。我使用的是无主配置,因此基本上puppet apply是一个命令,用于在独立系统中应用任何清单,该系统同时充当主配置和从配置。现在,在应用任何清单之前,都会编译目录,并且在编译过程中,会显示节点的事实,包括IP地址,但在我的示例中,目录编译失败,因为事实上我的操作系统(即SLES)没有初始化ipaddress。所以傀儡应用命令甚至没有开始。它与未初始化的事实真相制造者IP地址有关。现在有意义了吗?这就是我运行facter时遇到的错误:“无法检索fact='ipaddress',resolution='Andreas,这是一个很好的解决方法,解决了我的问题,谢谢