如何使用Knife为Vagrant安装Chef Solo

3
我在使用MAC OSX 10.8系统,正在进行一个vagrant部署项目,需要使用chef-solo。但是我去opscode网站上查找时发现,chef安装程序分为chef-client和chef-server两种,如果我安装了chef client,那么是否也会安装chef-solo呢?我在网上也没有找到任何关于chef-solo的安装程序。此外,安装chef后是否也会自动安装knife呢?
谢谢您的帮助。
1个回答

13

chef-solo是Chef客户端的一部分

查看Ubuntu 13.04的软件包内容

vagrant@devops:~$ dpkg -L chef | grep chef-solo
/opt/chef/bin/chef-solo
/opt/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.6.0/bin/chef-solo

安装Chef客户端

选项1

使用Shell脚本 => install.sh, 该脚本会检测操作系统并使用操作系统特定的软件包来安装Chef。

选项2

使用vagrant-omnibus在虚拟机中安装Chef客户端。

安装插件。

vagrant plugin install vagrant-omnibus

例如,在Vagrantfile中添加块,如下所示:

VAGRANTFILE_API_VERSION = "2"

Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|

  config.vm.box = "raring64"
  config.vm.hostname = "devops#{rand(01..99)}.vagrant.vm"

  # Use vagrant-omnibus to install chef client
  config.omnibus.chef_version = :latest

  # Enable Berkshelf via vagrant-berkshelf
  # config.berkshelf.enabled = true

启动虚拟机,它将负责安装Chef客户端。

注意:Chef客户端仍然可作为gem使用,但推荐使用特定于操作系统(自包含的)软件包,这样更易于安装和维护。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接