获得连接到puppet master的新Rackspace服务器实例的最快捷方式是什么?

现在我

  • login到新的服务器
  • 木偶大师放在/ etc / hosts中
  • 安装木偶
  • 在/ etc / default / puppet中将“START”更改为“yes”
  • 将[server]改为[main]下的puppet master name
  • 使用–waitforcert运行代理
  • 在木偶大师上签字。

我想这是自动的。 长期目标是随着资源的需要轻松扩大和缩小。

有很多技巧可以用来减less这个工作。 我不明确Rackspace,所以这可能是不可能的,但你可以采取一些想法,离开别人。

  1. 使用机器映像 :准备一个包含Puppet,您的configuration和从自动化主文件中的/root/.ssh/authorized_keys中的密钥的机器映像。
  2. 添加callback :在/etc/init.d设置一些东西,或者类似地启动一个初始的木偶运行,然后点击自动操作并触发一个签名证书的脚本。 主机应该已经在一个匹配的节点声明中,第二个configuration应该触发'waitforcert'设置为'true'。
  3. 使用Puppet进行清理 :拥有一个清理上面条目的模块(root访问ssh密钥, rc.local等)

适用于iOS的官方Rackspace Cloud应用程序可以在启动时自动将新实例连接到您的木偶大师。 我不确定他们是如何执行引导过程的,但是它可以帮助您开始。

http://www.rackspace.com/blog/rackspace-cloud-2-0-1-for-iphone-ipad-and-ipod-touch-coming-soon/

木偶云configuration器有一个支持机架空间的分支:

 https://github.com/puppetlabs/puppetlabs-cloud-provisioner/pull/55 

我们需要一些额外的testing,并希望得到这个分支的一些社区反馈。 这里是关于如何使用它的文档 。

这个确切的过程已经自动化了,我创build了一个名为puppet-bootstrap的shell脚本。 便携式架构和操作系统: http : //workshop.avatarnewyork.com/project/puppet-bootstrap/

您还需要使用Puppet与云服务器以及使用Libcloud和Puppet来引导云服务器 。 请注意, Rackspace现在支持cloud-init来注入您可能需要的任何其他configuration。