Articles of 厨师

无法从食谱上传菜谱到厨师服务器

我在ubuntu ec2实例上运行开源厨师服务器。 我试图从我的工作站使用刀上传厨师服务器的食谱,我得到以下错误 home/jeevan/.rvm/rubies/ruby-2.0.0-p195/lib/ruby/2.0.0/net/http.rb:878:in `initialize': getaddrinfo: Name or service not known (SocketError) from /home/jeevan/.rvm/rubies/ruby-2.0.0-p195/lib/ruby/2.0.0/net/http.rb:878:in `open' from /home/jeevan/.rvm/rubies/ruby-2.0.0-p195/lib/ruby/2.0.0/net/http.rb:878:in `block in connect' from /home/jeevan/.rvm/rubies/ruby-2.0.0-p195/lib/ruby/2.0.0/timeout.rb:66:in `timeout' from /home/jeevan/.rvm/rubies/ruby-2.0.0-p195/lib/ruby/2.0.0/net/http.rb:877:in `connect' from /home/jeevan/.rvm/rubies/ruby-2.0.0-p195/lib/ruby/2.0.0/net/http.rb:862:in `do_start' from /home/jeevan/.rvm/rubies/ruby-2.0.0-p195/lib/ruby/2.0.0/net/http.rb:851:in `start' from /home/jeevan/.rvm/gems/ruby-2.0.0-p195/gems/rest-client-1.6.7/lib/restclient/request.rb:172:in `transmit' from /home/jeevan/.rvm/gems/ruby-2.0.0-p195/gems/rest-client-1.6.7/lib/restclient/request.rb:64:in `execute' from /home/jeevan/.rvm/gems/ruby-2.0.0-p195/gems/rest-client-1.6.7/lib/restclient/request.rb:33:in `execute' from /home/jeevan/.rvm/gems/ruby-2.0.0-p195/gems/rest-client-1.6.7/lib/restclient/resource.rb:76:in `put' from /home/jeevan/.rvm/gems/ruby-2.0.0-p195/gems/chef-11.6.0/lib/chef/cookbook_uploader.rb:151:in `block in uploader_function_for' from /home/jeevan/.rvm/gems/ruby-2.0.0-p195/gems/chef-11.6.0/lib/chef/cookbook_uploader.rb:25:in `call' from /home/jeevan/.rvm/gems/ruby-2.0.0-p195/gems/chef-11.6.0/lib/chef/cookbook_uploader.rb:25:in `block […]

防止厨师从组中移除成员

在我的厨师食谱,我正在创build一个组 group "mygroup" do action :create end 我有其他用户添加和从服务器不是由厨师pipe理删除。 当我运行厨师客户端时,已经添加到我的组的任何用户都将从组中删除。 我会认为,因为我没有使用append(它默认为false),并没有提供一个成员列表,它不会尝试pipe理用户。 有没有办法阻止我的新用户从这个组中删除? 或者如果组已经被创build,就不要运行组资源了?

厨师包装版本

我们正在部署一个使用厨师的多节点PHP环境。 我已经为特定的服务器angular色编写了几本食谱,它们安装了应用程序使用的某些包(大部分是使用包pipe理器)。 现在,我想让厨师保持这些节点上的软件包是最新的。 我们有两个环境:开发和生产。 比如,当新版本的PHP出来的时候,我想在我们的开发环境中testing这个新版本,然后把它推广到生产环境。 我在安装PHP的配方中的包定义如下所示: package 'php' do action :install version '5.3.27' end 版本5.3.28发布时我应该采取哪些步骤?

在AWS OpsWorks中部署Rails应用程序

我已经创build了一个堆栈,在这个堆栈里面创build了两层。 Rails应用服务器(Ruby版本:2.0.0,Rails堆栈:nginx和独angular兽, 没有自定义的厨师食谱 ) MySQL(使用内置的食谱 ) 并创build了两个实例。 最后, 应用说明如下所示: Rails环境: 生产 文档根目录: 公共 回购types: Git 然后我部署了这个App 。 它部署成功! I can provide you deploy log but don't know which portion of log should post here?! 但在公共IP它redirect到500.html页面! 请帮帮我,这里已经被卡住了两天了。

Cloudformation将实例添加到不同地区的安全组

我有一个通过Jenkins在各个地区创build的Cloudformation堆栈。 我在一个地区有一个厨师服务器与一个单独的安全组。 我需要通过Cloudformation创build的新实例注册/创build,并将其自己添加到us-west-1的厨师SG,而不pipe他们的地区。 这可行吗? 编辑:我需要通过CloudForms脚本来做到这一点,而不是其他方法由于冗长/复杂的多种原因。 编辑2:为了清楚起见,我不希望实例成为SG的一部分,而是为了将新实例的EIP添加为SG中的入口。

我如何在OpsWorks上安装phpmyadmin?

我正在尝试使用自定义食谱在opsworks上安装phpmyadmin。 我对厨师很新,所以我真的不知道我在做什么。 我正在使用这本食谱: https : //github.com/priestjim/chef-phpmyadmin 并指定我的堆栈使用该自定义食谱。 但是我在日志中没有看到phpmyadmin已经安装或正在运行。 实例设置失败,并显示以下错误消息: ================================================== ============================== 食谱编译错误Chef :: Exceptions :: RecipeNotFound 找不到菜谱php的配方默认 [2014-06-06T10:48:16 + 00:00]错误:运行exception处理程序[2014-06-06T10:48:16 + 00:00]错误:exception处理程序完成[2014-06-06T10:48:16 +00:00]致命:Stacktrace转储到/var/lib/aws/opsworks/cache/chef-stacktrace.out [2014-06-06T10:48:16 + 00:00]错误:找不到食谱的默认食谱FAT [2014-06-06T10:48:16 + 00:00] FATAL:Chef :: Exceptions :: ChildConvergeError:Chef运行进程退出失败(退出代码1) 请稍微指导一下? 谢谢!

不能使用刀分配弹性ip

我想创build一个EC2实例,使用一个弹性IP分配刀。 刀具有–associate-eip选项,但是当我使用这个选项时,它会失败,错误“错误:请求的弹性IP不可用”。 尽pipeAWS控制台中的EIP显示IP可用。 我执行的命令 刀ec2服务器创build-S testKey -I ami-e7b8c0d7 -security-group-id test_sg -n -test-eip -f m3.medium -region us-west-2 -i testKey.pem -associate-eip 6.6。 6.6 错误:请求的弹性IP不可用。 我有没有错过任何明显的步骤? 刀在哪里寻找弹性IP列表? 有没有一个地方通知弹性ip列表刀?

AWS opsworks构build生命周期和亚马逊linux

我最近一直在使用Opsworks,并且GIT集成在我的服务器版本上部署应用程序给我留下了深刻的印象。 但我有一个要求,由于外部库使用PHP 5.4>亚马逊Linux提供了PHP5.3安装。 现在我创build了一个基于Amazon Linux的单独ec2实例,并升级了PHP版本,实际上我使用自定义用户数据来完成这个任务。 然后我把它保存为一个自定义的AMI。 当我将这个设置为AMI在opsworks中用于一个实例时,启动服务器时出现了由于冲突的Apache等版本而出现的错误。因此,看起来我的AMI几乎被忽略了,或者它构build了我的AMI并使用了自定义数据,然后尝试运行CHEF食谱。 然后,我相信这可能是厨师的食谱没有安装他们所需要的,因此错误。 我已经尝试使用默认情况下使用PHP 5.5的Ubuntu AMI做同样的事情,但我已经试图启用mod_rewrite为我的应用程序目录在这里单独的问题。 虽然我正试图通过这个解决scheme来解决我在Amazon Linux AMI上的问题 所以我的问题是,厨师食谱运行后,我的user_data? 或者我理论上可以卸载厨师将安装在我的自定义user_data中的每一件事情,然后我的实际依赖关系将安装后? 我目前对Chef的熟悉程度还不足以尝试编辑默认的PHP-APP-Server配方来完成我所需要的操作(我也不确定我需要从AWS GitHub仓库中执行此操作) 还是有没有人有更好的想法?

用厨师,刀子引导指定SSH端口

每厨师的文档 ,-p(或–ssh-port)标志应该允许我指定一个SSH端口,但是,以下内容: knife bootstrap host.com -x user -P password –ssh-port 5846 -N nodename –sudo 收益: -bash: –ssh-port: command not found 在尝试连接到端口22之前。“-p”也是如此。 有没有人遇到过这个问题,或者可能抓到我可能做错了什么? 我正在运行厨师11.14.6: $ knife -v Chef: 11.14.6

厨师:我怎样才能在rabbitmq食谱中添加一个访客帐号来停止user_management配方?

我是厨师新手,想要使用rabbitmq user_management配方,而不添加rabbitmq guest帐户的默认行为。 我使用chef-server 11.1.3和rabbitmq cookbook 3.3.0( https://supermarket.getchef.com/cookbooks/rabbitmq )在ubuntu 14.04上安装和configurationrabbitmq 3.3.5。 我定义了一个厨师angular色,我使用user_management recipe和disabled_users来删除guest账户,但是每个厨师客户端运行的guest账户首先被添加到rabbitmq,然后再被删除 (你可以从“ – execute”行看到下面的client.log输出)。 我究竟做错了什么? /var/log/chef/client.log输出 Recipe: rabbitmq::user_management * rabbitmq_user[guest] action addRecipe: <Dynamically Defined Resource> * execute[rabbitmqctl add_user guest] action run – execute rabbitmqctl add_user guest 'guest' Recipe: rabbitmq::user_management * rabbitmq_user[guest] action set_tags (up to date) * rabbitmq_user[guest] action set_permissionsRecipe: <Dynamically Defined Resource> […]