我试图实施福尔曼让我们pipe理和configuration我们pipe理的客户的服务器,我已经安装在一个中央位置的福尔曼,然后安装在一个客户networking的福尔曼智能代理,一切工作正常(远程木偶代理可以连接到我的智能代理,我的中央Foreman服务器可以看到数据),但是我现在想要configuration新的虚拟机(通过vCenter)。 我已经安装了foreman-vmware并configuration了我的计算资源configuration文件,为我的虚拟机模板创build了一个条目,但是当我通过Foreman创build一个新的主机并告诉它从我的模板克隆时,它等待节点可用,我假设所以它可以SSH到它来完成configuration,我的问题是,福尔曼服务器将无法连接到新的虚拟机,我希望新的VM(已安装了Puppet代理)将被configuration为连接到我的智能代理,完成自己的configuration方式?
我的devise有错吗? 有人能帮我devise适合我的解决scheme吗?
我无法在客户networking上创build新的DHCP,DNS和TFTP服务器,因为它可能会干扰现有的DHCP和DNS服务。
谢谢,本
tl; dr:目前无法正常工作,SSH供应来自工头服务器。
我们有一个类似的configuration,其中有一个公共/集中的工头/木偶实例,我们连接几个“小”客户。 在我们的情况下,我甚至没有在客户networking上安装“智能代理”。 客户的IT人员实际上为我提供了最小的CentOS 6.x安装(有效地像部署映像?)SSH凭据。 在Foreman中,我刚刚创build了新的虚拟机作为“裸机”,然后从主机详细信息屏幕的“模板”选项卡复制完成脚本,并将其粘贴到虚拟机中(我必须使用VPN来SSH连接到客户机)。 在你的情况下,你可能会做类似的事情,但是任何“手动”的步骤通常都会被忽视。
以下是我在思考这个时候的一些随机想法:
也许你可以弄清楚如何使用“cloud-init”,那么你就可以在虚拟机上“configuration”(运行一个脚本),而不需要工头服务器能够连接到它。 我不知道这将如何与ESXi,这可能需要一些“自定义代码”:)
也许在领class服务器上设置一个OpenVPN服务器,并设置你的图像自动VPN连接到领class服务器。 这样做有一些好处,就是你不需要把puppet / foreman暴露给互联网,但是也可能会有一些定制代码涉及到弄清楚主机的VPN IP到SSH上。 这也可能被一些客户认为是一个漏洞,特别是如果他们试图符合PCI标准的话。
创build一个允许和“SSH通过”configuration的新模块,这样,在供应过程中,工头服务器将SSH连接到特定的主机,然后连接到所需的客户机IP( ssh -t viaHost ssh $HOST_ADDRESS )。 当然,如果你走这条路,你也可以把它变成一个聪明的代理操作,而不是从工头服务器尝试SSH,它会要求一个智能代理来做到这一点。
这些都是潜在的解决scheme,但我不认为他们中的任何一个目前会工作。 在http://projects.theforeman.org/projects/foreman/issues上提交一些function请求可能是一个好主意
〜汤米
对Foreman使用的fog提出请求#3623应该有助于通过runcmd条目从user_data模板运行命令。