- 厨师教程
- 厨师 - 主页
- 厨师 - 概述
- 厨师 - 建筑
- Chef - 版本控制系统设置
- 厨师 - 工作站设置
- Chef - 客户端设置
- 厨师 - 测试厨房设置
- 厨师 - 刀具设置
- 厨师 - 独奏设置
- 厨师 - 食谱
- Chef - 食谱依赖项
- 厨师 - 角色
- 厨师 - 环境
- Chef - Chef-Client 作为守护进程
- 厨师 - Chef-Shell
- 厨师 - 测试食谱
- 厨师 - 美食评论家
- 厨师 - ChefSpec
- 使用测试厨房测试食谱
- 厨师 - 节点
- 厨师 - 厨师-客户运行
- 高级厨师
- 动态配置菜谱
- 厨师 - 模板
- Chef - 带有 Chef DSL 的纯 Ruby
- 厨师 - 红宝石宝石与食谱
- 厨师 - 图书馆
- 厨师 - 定义
- Chef - 环境变量
- 厨师 - 数据袋
- Chef - 数据包脚本
- Chef - 跨平台食谱
- 厨师 - 资源
- 轻量级资源提供者
- 厨师 - 蓝图
- Chef - 文件和包
- 厨师 - 社区食谱
- 厨师有用的资源
- 厨师 - 快速指南
- 厨师 - 有用的资源
- 厨师 - 讨论
Chef - 客户端设置
为了使Chef节点与Chef服务器进行通信,需要在节点上安装Chef客户端。
厨师客户
这是 Chef 节点的关键组件之一,它从 Chef 服务器检索说明书并在节点上执行它们。它也称为 Chef 供应商。
这里,我们将使用 Vagrant 来管理 VM。Vagrant 还可以使用 Shell 脚本、Chef 和 Puppet 等配置器进行配置,以使 VM 进入所需状态。在我们的例子中,我们将使用 Vagrant 来管理虚拟机,并使用 VirtualBox 和 Chef 客户端作为配置程序。
步骤 1 - 从https://www.virtualbox.org/wiki/downlod下载并安装 VirtualBox
步骤 2 - 在http://downloads.vagrantup.com下载并安装 Vagrant
步骤 3 - 安装 Vagrant Omnibus 插件,使 Vagrant 能够在虚拟机上安装 Chef 客户端。
$ vagrant plugin install vagrant-omnibus
创建和启动虚拟
步骤 1 - 我们可以从 Opscode vagrant 存储库下载所需的 Vagrant 框。从以下 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/<YOUR_ORG>" chef.validation_key_path = "/.chef/<YOUR_ORG>-validator.pem" chef.validation_client_name = "<YOUR_ORG>-validator" chef.node_name = "server" end end
在上面的程序中,您需要使用正确或所需的组织名称更新 <YOUR_ORG> 名称。
步骤 3 - 配置后的下一步是启动 vagrant box。为此,您需要移动到 Vagrant box 所在的位置并运行以下命令。
$ vagrant up
步骤 4 - 机器启动后,您可以使用以下命令登录机器。
$ vagrant ssh
在上面的命令中,vagrantfile是用Ruby域特定语言(DSL)编写的,用于配置vagrant虚拟机。
在 vagrant 文件中,我们有配置对象。Vagrant 将使用此配置对象来配置虚拟机。
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 下载综合插件。
config.omnibus.chef_version = :latest
选择要启动的 VM 框后,配置如何使用 Chef 配置该框。
config.vm.provision :chef_client do |chef| ….. End
在其中,您需要设置有关如何将虚拟节点连接到 Chef 服务器的说明。您需要告诉 Vagrant 您需要将所有 Chef 内容存储在节点上的位置。
chef.provisioning_path = "/etc/chef"