将新的 Rackspace 服务器实例连接到 Puppet Master 的最快方法是什么?

将新的 Rackspace 服务器实例连接到 Puppet Master 的最快方法是什么?

现在我

  • 登录新服务器
  • 将 Puppet Master 放入 /etc/hosts 中
  • 安装 puppet
  • 在 /etc/default/puppet 中将“START”更改为“yes”
  • 将 [main] 下的“服务器”更改为 puppet master 名称
  • 使用 --waitforcert 运行代理
  • 把它交给木偶大师。

我希望这能实现自动化。长期目标是根据需要轻松扩大或缩小资源规模。

答案1

有很多技巧可以减少工作量。我对 Rackspace 不是很了解,所以有些方法可能行不通,但你可以借鉴一些想法,放弃其他想法。

  1. 使用机器映像:准备好包含 Puppet、您的配置和来自自动化主机的 /root/.ssh/authorized_keys 中的密钥的机器映像。
  2. 添加回调/etc/init.d:在或类似文件中设置某些内容/etc/rc.local以启动初始 Puppet 运行,然后点击自动化并触发签署证书的脚本。主机应该已经位于匹配的节点声明中,第二个配置应该触发并将“waitforcert”设置为“true”。
  3. 使用 Puppet 进行清理:有一个模块可以清理上面的条目(root 访问 ssh 密钥,rc.local等等)

答案2

官方适用于 iOS 的 Rackspace Cloud 应用程序有一个选项可以在启动时自动将新实例连接到 Puppet Master。虽然我不确定他们如何进行引导过程,但它可能会帮助你入门。

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

答案3

Puppet cloud provisioner 有一个支持 rackspace 的分支:

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

我们需要进行一些额外的测试,并希望获得一些关于此分支的社区反馈。以下是关于如何使用它的文档

答案4

你还需要结账在云服务器上使用 Puppet使用 Libcloud 和 Puppet 引导云服务器。 注意Rackspace 现在支持 cloud-init注入您可能需要的任何附加配置。

相关内容