我想知道在一个大的CHEF食谱和大量的小食谱之间什么是普遍的共识。 举个例子,假设你想部署一个Radius服务器,你是否有单独的配方: MySql DB(只是软件) MySql DBconfiguration(数据库,表创build,授权等) Radius pkg安装 Radiusconfiguration文件 或者你有一两个大食谱呢? 我所承担的将是有很多小食谱,每一个做一个非常具体的任务,但我不知道什么是最佳做法。
我会很好的帮助。 我完全不理解,我应该如何使用Git版本控制系统在本地pipe理Node数据? Exceprt从厨师文档: http ://wiki.opscode.com/display/chef/Nodes knife node create foobar { "normal": { }, "name": "foobar", "override": { }, "default": { }, "json_class": "Chef::Node", "automatic": { }, "run_list": [ "recipe[zsh]", "role[webserver]" ], "chef_type": "node" } 我明白了,我可以在编辑器上通过刀在服务器上pipe理这些数据。 似乎有一个命令行选项本地厨师客户端(最有可能的JJSON_ATTRIBS)。 =>但是chef-client在本地运行,我需要将数据上传到服务器,然后这些节点属性需要被推送到客户端。 这是在更大的环境中唯一可行的解决scheme 但是如何用刀上传这个数据呢? 这似乎没有select? (只有刀编辑的选项似乎是存在的?) 感谢弗朗索瓦
奥海文档不完整。 以下是我迄今为止所能做到的: 我创build了一个自定义插件,添加了一个名为“my_custom_data”的节点数据 它工作时,我手动加载在IRB 我已经使用Ohai烹饪书来将它加载到需要它的服务器上 然而,奥海不加载它,既不在厨师运行,也不是手动运行奥海。 这里的文档对回答这个问题没什么用处。 http://docs.opscode.com/ohai.html
我第一次使用厨师独奏configuration一个用Vagrant创build的Windows盒子。 在尝试应用sql_server cookbook时,出现以下错误: [2013-11-14T09:41:24+01:00] ERROR: Running exception handlers [2013-11-14T09:41:24+01:00] ERROR: Exception handlers complete [2013-11-14T09:41:24+01:00] FATAL: Stacktrace dumped to C:/var/chef/cache/chef-stacktrace.out [2013-11-14T09:41:24+01:00] FATAL: Chef::Exceptions::RedirectLimitExceeded: windows_package[Microsoft SQL Server 2008 R2 (32-bit)] (sql_server::server line 39) had an error: Chef::Exceptions::RedirectLimitExceeded: remote_file[/var/chef/cache/SQLEXPR32_x86_ENU.exe] (dynamically defined) had an error: Chef::Exceptions::RedirectLimitExceeded: Chef::Exceptions::RedirectLimitExceeded 欣赏任何build议。
我试图安装几个与nginx无关的软件包(例如htop),使用chef脚本。 但是它失败了,因为它要求更新nginx.conf和nginx / sites-available / default。 我可以select使用厨师。 (我也不想重写,因为我想了解和解决这个问题,而不是从它逃脱) 因此,我尝试通过运行命令sudo apt-get install htop尝试安装htop,并且我得到了以下输出。 ubuntu@ip-10-150-4-249:~⟫ sudo apt-get install htop Reading package lists… Done Building dependency tree Reading state information… Done The following NEW packages will be installed: htop 0 upgraded, 1 newly installed, 0 to remove and 160 not upgraded. 3 not fully installed or removed. Need […]
我有3种不同的方式来安装这个软件包,我更喜欢#1选项,但我想看看是否有理由使用选项#2或3或其他选项? (我这个问题的目标是获得不同方式的反馈,如果可能的话,不要在编译时安装…在这种情况下) 1。 p = package "snmp" do package_name value_for_platform( [ "centos", "redhat", "suse" ] => { "default" => "net-snmp" }, "default" => "snmpd" ) action :install end 第2位。 packages = case node[:platform] when "centos","redhat","fedora" %w{net-snmp} else %w{snmpd} end packages.each do |pkg| package pkg end 3。 package "snmpd" do action :install only_if do platform?("ubuntu", "debian") […]
我在厨师客户端的stream浪虚拟机上使用桥接networking。 knife node show test1-vagrant显示10.0.2.15的一个ip地址,它是eth0。 eth1是192.168.1.5,这是DHCP给它的。 我怎么能得到厨师思考的IP地址是192.168.1.5而不是,所以我可以刀ssh – 一个ipaddress?
我有一个使用案例,其中一个厨师食谱需要使用'remote_file'来获取虚拟文件,并且需要通过HTTP代理来获取文件。 这是行不通的,因为厨师客户端不使用系统代理设置…它从/etc/chef/chef-client.rb获取其代理设置 那么如何将代理设置(或一般设置)置于客户端的chef-client.rb文件中? 理想情况下,我希望在客户端引导时发生,但是我看不到如何做黑客代码。 另一种可能是我可以创build一个更新chef-client.rb文件的配方。 但是这让我觉得有点危险。 这意味着您需要在运行chef-client之前运行两次,假设第一次运行时丢失的代理设置导致运行最终失败。 有想法该怎么解决这个吗?
与我签约的公司已经确定他们需要将他们的厨师(开源版)实例迁移到新的服务器上。 他们不想迁移到托pipe平台。 我一直无法find如何做到这一点的指导。 有没有人有指导或经验分享,或更好的指导? 我有这样的想法,但我恐怕会错过一些至关重要的事情。 可悲的是,他们的厨师服务器不通过厨师pipe理…
我对厨师的使用相当陌生,特别是对于stream浪汉来说,这对于那些更有经验的用户来说很可能是一个愚蠢的问题。 我正在使用这本食谱: https : //github.com/opscode-cookbooks/application_nginx 我只是想添加我自己的网站configuration(虚拟主机)。 它必须是以下之一: 将我自己的收件人和模板直接添加到食谱中 创build我自己的食谱,以某种方式扩展nginx食谱,只添加我需要的特定行为。 选项1对我来说看起来不太合适,我不知道如何完成选项2,而不必完全分开食谱。 任何人都可以build议如何实现?