100 条 Chef 命令实例,供您参考:
- chef-client -v:查看 Chef 客户端版本信息。
- chef-solo -v:查看 Chef Solo 版本信息。
- chef generate cookbook <cookbook_name>:生成新的 Chef cookbook 项目。
- chef generate recipe <recipe_name>:生成新的 Chef recipe 文件。
- chef generate attribute <attribute_file_name>:生成新的 Chef attribute 文件。
- chef generate template <template_file_name>:生成新的 Chef 模板文件。
- chef generate file <file_name>:生成新的 Chef 文件。
- chef generate lwrp <lwrp_name>:生成新的 Chef LWRP(Lightweight Resource Providers)。
- chef generate provider <provider_name>:生成新的 Chef 资源提供程序。
- knife cookbook create <cookbook_name>:创建新的 Chef cookbook。
- knife node show <node_name>:显示指定节点的详细信息。
- knife node list:列出所有已知节点的名称。
- knife cookbook list:列出所有可用的 cookbook。
- knife cookbook show <cookbook_name>:显示特定 cookbook 的详细信息。
- knife client list:列出所有已知客户端的名称。
- knife client show <client_name>:显示特定客户端的详细信息。
- knife role list:列出所有角色的名称。
- knife role show <role_name>:显示特定角色的详细信息。
- knife environment list:列出所有环境的名称。
- knife environment show <environment_name>:显示特定环境的详细信息。
- knife search :在指定节点或所有节点上执行搜索查询。
- knife ssh ‘’ ‘’:使用 SSH 连接到查询的节点并执行命令。
- knife bootstrap <node_name> -x -P :在远程节点上安装 Chef 客户端。
- knife cookbook upload <cookbook_name>:上传 cookbook 到 Chef Server。
- knife cookbook delete <cookbook_name>:删除 cookbook 从 Chef Server 中。
- knife cookbook download <cookbook_name>:从 Chef Server 下载 cookbook。
- knife node run_list add <node_name> :将新 recipe 添加到节点的运行列表中。
- knife node run_list remove <node_name> :从节点的运行列表中删除特定 recipe。
- knife node run_list set <node_name> :设置特定的 recipe 作为节点的运行列表。
- knife node edit <node_name>:编辑节点的 JSON 描述文件。
- knife role create <role_name>:创建新的 Chef 角色。
- knife role from file :从文件中导入 Chef 角色。
- knife role edit <role_name>:编辑 Chef 角色的 JSON 描述文件。
- knife role delete <role_name>:从 Chef Server 中删除 Chef 角色。
- knife environment create <environment_name>:创建新的 Chef 环境。
- knife environment edit <environment_name>:编辑 Chef 环境的 JSON 描述文件。
- knife environment delete <environment_name>:从 Chef Server 中删除Chef 环境。
- knife data bag create <bag_name>:创建一个新的数据包。
- knife data bag list:列出所有数据包的名称。
- knife data bag show <bag_name>:显示指定数据包的详细信息。
- knife data bag from file :从文件中导入特定数据包。
- knife data bag edit <bag_name>:编辑数据包的 JSON 描述文件。
- knife data bag delete <bag_name>:从 Chef Server 中删除数据包。
- knife node run_list add <node_name> role[<role_name>]:将特定角色添加到节点的运行列表。
- knife node run_list remove <node_name> role[<role_name>]:从节点的运行列表中删除特定角色。
- knife node run_list set <node_name> role[<role_name>]:将特定角色设置为节点的运行列表。
- chef-shell:启动交互式的 chef-shell。
- chef-shell -z:在本地模式下启动 chef-shell。
- chef-client -z -o recipe[<recipe_name>]:在本地模式下运行 Chef 并仅运行指定 recipe。
- chef-client -z -n <node_name>:以本地模式运行 Chef 以测试指定节点。
- chef gem install <gem_name>:安装指定的 Ruby Gem。
- chef gem list:列出所有已安装的 Ruby Gem。
- chef gem uninstall <gem_name>:卸载指定的 Ruby Gem。
- chef gem update <gem_name>:更新指定的 Ruby Gem。
- chef gem cleanup:清除所有已安装的过期 Ruby Gem。
- chef show-policy <policy_group>/<policy_name>:显示特定策略的详细信息。
- chef install /path/to/policy_archive.tgz -g <policy_group>:使用指定的策略组安装策略存档。
- chef-push-archive:将本地策略上传到 Chef Server。
- chef push-client <client_name>:将 Chef 客户端上传到 Chef Server。
- chef push-job <job_info>:将 Chef 作业上传到 Chef Server。
- chef push-node <node_name>:将节点上传到 Chef Server。
- chef push-policy <policy_file>:将策略文件上传到 Chef Server。
- chef push-sandbox <sandbox_path>:将 Chef 沙盒文件上传到 Chef Server。
- chef push-user <user_name>:将 Chef 用户上传到 Chef Server。
- chef push :将任何 Chef 对象上传到 Chef Server。
- chef backup <object_type> <object_name>:备份 Chef 对象。
- chef-apply :使用指定的文件运行 chef-apply。
- chef-shell -z :使用指定的文件启动 chef-shell。
- knife ssh ‘role:<role_name>’ ‘’:使用 SSH 连接到所有属于特定角色的节点上并执行命令。
- knife ssh ‘chef_environment:<environment_name>’ ‘’:使用 SSH 连接到所有属于特定环境的节点上并执行命令。
- knife ssh ‘node:<node_name>’ ‘’:使用 SSH 连接到特定节点并执行命令。
- knife ssh ‘name:*’ ‘’:使用 SSH 连接到所有节点并执行命令。
- knife upload :上传指定的文件或目录到 Chef Server。
- knife cookbook download -a:从 Chef Server 中下载所有 cookbook。
- knife cookbook download -d <cookbook_name>:从 Chef Server 中下载指定 cookbook 的所有版本。
- knife cookbook download -f <cookbook_name>::从 Chef Server 中下载特定版本的 cookbook。
- knife cookbook site download <cookbook_name>:从 Cookbook Site 上下载 cookbook。
- knife cookbook site install <cookbook_name>::从 Cookbook Site 上安装 cookbook。
- knife cookbook site show <cookbook_name>:显示特定 cookbook 在 Cookbook Site 上的详细信息。
- knife node edit <node_name>:编辑节点的 JSON 描述文件。
- knife search node ‘platform_family:debian’:根据指定条件在所有 Debian 系统上搜索节点。
- knife search environment ‘name:_default’:根据指定条件搜索默认环境。
- knife ssh name:server[01-05] ‘’:使用 SSH 连接到一组节点并执行命令。
- knife ssh “role:web” “apt-get update”:在属于 web 角色的所有节点上执行 apt-get update 命令。
- knife ssh <node_name> “chef-client”:远程运行 chef-client 命令。
- knife ssh <node_name> “tail -f /var/log/syslog”:远程连接到节点并在后台运行命令。
- knife ssh <node_name> -i path/to/key “command”:使用指定的 SSH 密钥进行连接和身份验证。
- knife configure -i:使用交互式过程配置 Chef 工具。
- knife configure -r /path/to/config:使用特定的 Chef 配置文件运行 Chef 工具。
- chef-client -l debug:以调试模式运行 Chef 客户端。
- chef-solo -c solo.rb -j node.json:使用指定的配置文件和节点 JSON 文件在 Chef Solo 下运行 Chef。
- chef-apply -e ‘resource “file”, “/tmp/index.html” do content "Hello World"end’:通过命令行直接运行 Chef 资源。
- chef-vault create <vault_item> <vault_item_id> -J <json_data_file>:创建一个新的 Chef Vault 数据项。
- chef-vault item <vault_item> <vault_item_id>:显示特定 Chef Vault 数据项的详细信息。
- chef-vault edit <vault_item> <vault_item_id>:编辑 Chef Vault 数据项。
- chef-vault update <vault_item> <vault_item_id> -J <json_data_file>:更新 Chef Vault 数据项的内容。
- chef-vault delete <vault_item> <vault_item_id>:从 Chef Server 中删除 Chef Vault 数据项。
- chef verify:验证 Chef 安装是否完整。
- chef env run-tests :在指定环境中运行所有测试。
- chef verify-mode-policy-group <policy_group>:验证指定策略组的模式。