And*_*oud 6 chef chef-solo knife
我已经两次阅读了关于 Chef 的文档。我仍然无法理解它的概念,因为他们跳过了基础知识并跳转到了带有 Chef-server 的复杂部署。
使用厨师独奏和可能的刀,是否有一种简单的方法来配置服务器和部署?
我可能错了,但看起来我的食谱已经准备好了,这应该很简单。
knife rackspace server create --flavor 1 --image 112
Run Code Online (Sandbox Code Playgroud)
这提供了我的服务器。我可以选择传递 --run-list "recipe[mything]",但是我在 ~/my_cookbooks 中的食谱实际上是如何到达服务器的?我必须手动转移它们吗?这似乎适得其反。
如果你使用chef-solo,你就不能使用刀。Knife 是厨师服务器的 API 客户端,带有一些额外的实用程序糖(就像knife rackspace server create
您提到的那样)。
要使用chef-solo 配置服务器,您应该将您的chef 存储库复制到服务器,并通过ssh 在那里运行chef-solo。据我所知,没有现成的脚本或刀插件可以自动完成。
命令knife rackspace server create
创建新的 Rackspace 服务器,然后通过调用knife bootstrap
. 它不会轻易与厨师独奏一起工作。
从技术上讲,knife bootstrap
因此knife rackspace server create
,可以通过编写自定义引导程序模板来强制使用chef-solo,该模板将下载您的chef 存储库并运行chef-solo-see knife bootstrap --help
、其维基页面或源代码,而不是初始化chef-client 。细节。您可以在此处查看安装 Chef-client 的示例模板。但是,这是一项高级功能,并且没有很好的文档记录。
如果您不想处理安装和管理自己的主厨服务器的复杂性,您可以使用 Opscode 托管主厨的免费层,这是主厨服务器 SAAS 产品,最多可免费使用三个节点。无论如何,我建议开始使用服务器进行任何认真的工作-chef-solo 与不错的引导 shell 脚本一样好,仅此而已,并且您错过了许多重要/有趣的功能,例如搜索和数据包,这些功能使您可以以数据驱动的方式配置您的服务器。