有人可以帮我理解厨师独唱。我仍然没有理解这部分是否必须在我的机器上运行chef-solo来运行配置机器,或者我需要首先配置一台机器并在我配置的新机器上安装solo。我需要了解端到端的流程。请帮助我更好地理解。
答案 0 :(得分:1)
有关如何在Integrating AWS CloudFormation With Opscode Chef.pdf
中使用AWS环境中的Chef-Solo的详细说明Chef Solo可用于部署Chef cookbook和角色而无需使用 依赖于Chef服务器。 Chef Solo可以通过Ruby安装 宝石包装;但是,它需要许多其他依赖 要安装的软件包。通过使用资源元数据和AWS CloudFormation帮助程序,您可以通过基础AMI部署Chef Solo 云初始化
您可以使用上面PDF中提供的云形成,也可以自己创建文件并运行脚本(嵌入在此模板中)。
答案 1 :(得分:1)
您还可以使用chef-solo with vagrant来测试目标Linux发行版在本地计算机上的行为方式;但是,你的问题更多的是关于AWS的端到端 - 所以我们走了。
端到端你至少需要在目标机器上使用以下依赖项:
ruby,宝石厨师,ssh,git或其他一些将代码发送到虚拟机的方式。
您进入机器,获得要在目标机器上使用的食谱,运行chef-solo,其中包含一些参数,这些参数至少指定了一些属性,烹饪书的位置以及包含的运行列表一些应用于目标机器的配方或角色。下面是获取apt配方和mongo配方(https://github.com/opscode-cookbooks/apt和https://github.com/edelight/chef-mongodb)的示例...我将它们克隆到目标机器上的/ opt / devops位置。
chef-solo -c solo.rb -j node.json
solo.rb内容
file_cache_path "/opt/devops/log"
cookbook_path "/opt/devops/cookbooks"
node.json内容
{
"node": {
"vm_ip": [ "192.168.33.10" ],
"myProject": {
"git_revision":"bzrDevel",
}
},
"run_list": ["recipe[apt]","recipe[mongodb]" ]
}