我试图通过这个模块来集成puppet和vSphere:
https://forge.puppetlabs.com/puppetlabs/vsphere
该模块允许您通过几行puppet代码创build服务器。
我有一个虚拟机模板,我从克隆。 它安装了vmware工具和puppet客户端。
节点出现了,但是木偶大师认为所有连续的克隆都是相同的节点,可能是因为它们具有相同的SSL证书。
那么这应该如何工作? 我可以在单个节点上解决SSL问题,但我希望能够以自动方式创build100个节点。
它看起来像puppet resource vsphere_vm应该显示访客IP,我会想象,然后可以被送入傀儡,并从那里提供的节点,但该命令目前不产生任何IP信息。
必须有人使用这个puppet vsphere插件来使用它来以自动方式旋转节点。 这也意味着一个更为普遍的问题:如果您正在使用基于映像的虚拟化技术(如vSphere),如何使用puppet自动创build和configuration服务器?
作为一个注意事项,我正在使用木偶企业2015.2。
您必须检测puppet服务器使用哪些信息来检测相同的节点,并准备脚本来更改它。 脚本将准备好在新节点启动后运行,并重新统一这些信息,puppet服务器会认为这是新的服务器,并将pipe理它。
我有一个虚拟机模板,我从克隆。 它安装了vmware工具和puppet客户端。
节点出现了,但是木偶大师认为所有连续的克隆都是相同的节点,可能是因为它们具有相同的SSL证书。
为了解决这个问题,你需要一个具有puppet客户端的模板,但是还没有生成与puppet服务器的CSR。 您可以将模板转换回虚拟机,并删除(或重命名)客户端的puppet ssl目录(不知道它存储在PE 2015.2上,但在Puppet v4上它位于/ etc/puppetlabs/puppet/ssl )。
然后在puppet服务器上执行puppet cert clean <name> ,其中<name>是模板生成的证书。
将VM转换回模板。 现在,使用此模板部署的任何VM将在运行puppet agent -t后生成自己的CSR。 不利之处在于,无论何时生成CSR,您都必须签署每个新的证书。 为了使自动化更友好,你可以configuration你的puppet服务器,在服务器的puppet.conf文件中使用autosign = true自动签名证书。 但是,这不build议保持在生产环境中。 这个文档更详细地介绍了自动签名证书: https ://docs.puppetlabs.com/puppet/latest/reference/ssl_autosign.html