📅  最后修改于: 2020-11-04 04:48:21             🧑  作者: Mango
为了使Chef节点与Chef服务器通信,您需要在该节点上设置Chef客户端。
这是Chef节点的关键组件之一,Chef节点从Chef服务器检索食谱并在节点上执行。它也被称为厨师配置者。
在这里,我们将使用Vagrant来管理VM。还可以使用配置程序(例如Shell脚本,Chef和Puppet)配置Vagrant,以使VM进入所需状态。在我们的案例中,我们将使用Vagrant通过VirtualBox和Chef客户端作为预配器来管理VM。
步骤1-从https://www.virtualbox.org/wiki/downlod下载并安装VirtualBox
步骤2-在http://downloads.vagrantup.com下载并安装Vagrant
步骤3-安装Vagrant Omnibus插件以使Vagrant在VM上安装Chef客户端。
$ vagrant plugin install vagrant-omnibus
步骤1-我们可以从Opscode流浪者仓库下载所需的流浪者盒子。从以下URL下载opscode-ubuntu-12.04框https://opscode-vmbento.s3.amazonaws.com/vagrant/opscode_ubuntu-12.04_provisionerless.box
步骤2-拥有Vagrant文件后,下载编辑Vagrant文件所需的路径。
vipin@laptop:~/chef-repo $ subl Vagrantfile
Vagrant.configure("2") do |config|
config.vm.box = "opscode-ubuntu-12.04"
config.vm.box_url = https://opscode-vm-bento.s3.amazonaws.com/
vagrant/opscode_ubuntu-12.04_provisionerless.box
config.omnibus.chef_version = :latest
config.vm.provision :chef_client do |chef|
chef.provisioning_path = "/etc/chef"
chef.chef_server_url = "https://api.opscode.com/
organizations/"
chef.validation_key_path = "/.chef/-validator.pem"
chef.validation_client_name = "-validator"
chef.node_name = "server"
end
end
在上述程序中,您需要使用正确或必需的组织名称更新
步骤3-配置完成后的下一步,启动无业游民的盒子。为此,您需要移动到“ Vagrant”框所在的位置,然后运行以下命令。
$ vagrant up
步骤4-一旦机器启动,您可以使用以下命令登录到机器。
$ vagrant ssh
在上面的命令中,vagrantfile是用Ruby域特定语言(DSL)编写的,用于配置vagrant虚拟机。
在流浪汉文件中,我们有config对象。 Vagrant将使用此配置对象配置VM。
Vagrant.configure("2") do |config|
…….
End
在配置块中,您将告诉vagrant使用哪个VM映像,以便引导节点。
config.vm.box = "opscode-ubuntu-12.04"
config.vm.box_url = https://opscode-vm-bento.s3.amazonaws.com/
vagrant/opscode_ubuntu-12.04_provisionerless.box
在下一步中,您将告诉Vagrant下载omnibus插件。
config.omnibus.chef_version = :latest
选择要启动的VM框后,配置如何使用Chef设置该框。
config.vm.provision :chef_client do |chef|
…..
End
在其中,您需要设置有关如何将虚拟节点连接到Chef服务器的说明。您需要告诉Vagrant,您需要在哪里将所有Chef内容存储在节点上。
chef.provisioning_path = "/etc/chef"