Search code examples
amazon-ec2automated-deploychef-infrachef-recipe

chef wont install from recipes/cookbooks


I think I'm missing something fundamental in deploying applications using Chef.

I've cloned a bunch of cookbooks from the opscode repo. I made changes and knifed them appropriately. Everything is configured so I can spawn an EC2 instance using a bash script but its not executing any of the Chef installs.

In roles/base.rb I have all the apps I want installed:

run_list(
  "recipe[chef-client::delete_validation]",
  "recipe[chef-client::config]",
  "recipe[chef-client]",
  "recipe[build-essential]",
  "recipe[runit]",
  "recipe[git]",
  "recipe[node]",        
  "recipe[mongodb]",
  "recipe[monit]"
)

I ssh to the instance and do sudo chef-client which spews:

Tue, 07 Jun 2011 06:36:50 +0000] INFO: Starting Chef Run for i-XXXXXXXX
[Tue, 07 Jun 2011 06:36:51 +0000] INFO: Loading cookbooks [build-essential, chef-client, git, mongodb, monit, node, runit]
[Tue, 07 Jun 2011 06:36:51 +0000] INFO: Storing updated cookbooks/mongodb/recipes/default.rb in the cache.
[Tue, 07 Jun 2011 06:36:52 +0000] INFO: Storing updated cookbooks/mongodb/recipes/backup.rb in the cache.
[Tue, 07 Jun 2011 06:36:52 +0000] INFO: Storing updated cookbooks/mongodb/recipes/mongos.rb in the cache.
[Tue, 07 Jun 2011 06:36:53 +0000] INFO: Storing updated cookbooks/mongodb/recipes/source.rb in the cache.
[Tue, 07 Jun 2011 06:36:53 +0000] INFO: Storing updated cookbooks/mongodb/recipes/apt.rb in the cache.
[Tue, 07 Jun 2011 06:36:53 +0000] INFO: Storing updated cookbooks/mongodb/recipes/server.rb in the cache.
[Tue, 07 Jun 2011 06:36:54 +0000] INFO: Storing updated cookbooks/mongodb/recipes/config_server.rb in the cache.
[Tue, 07 Jun 2011 06:36:54 +0000] INFO: Storing updated cookbooks/mongodb/libraries/mondogb_process.rb in the cache.
[Tue, 07 Jun 2011 06:36:55 +0000] INFO: Storing updated cookbooks/mongodb/attributes/mongodb.rb in the cache.
[Tue, 07 Jun 2011 06:36:55 +0000] INFO: Storing updated cookbooks/mongodb/metadata.rb in the cache.
[Tue, 07 Jun 2011 06:36:56 +0000] INFO: Storing updated cookbooks/runit/recipes/default.rb in the cache.
[Tue, 07 Jun 2011 06:36:56 +0000] INFO: Storing updated cookbooks/runit/definitions/runit_service.rb in the cache.
[Tue, 07 Jun 2011 06:36:57 +0000] INFO: Storing updated cookbooks/runit/attributes/default.rb in the cache.
[Tue, 07 Jun 2011 06:36:57 +0000] INFO: Storing updated cookbooks/runit/metadata.rb in the cache.
[Tue, 07 Jun 2011 06:36:57 +0000] INFO: Storing updated cookbooks/runit/metadata.json in the cache.
[Tue, 07 Jun 2011 06:36:58 +0000] INFO: Storing updated cookbooks/node/resources/nodejs.rb in the cache.
[Tue, 07 Jun 2011 06:36:58 +0000] INFO: Storing updated cookbooks/node/resources/server.rb in the cache.
[Tue, 07 Jun 2011 06:36:58 +0000] INFO: Storing updated cookbooks/node/resources/npm.rb in the cache.
[Tue, 07 Jun 2011 06:36:59 +0000] INFO: Storing updated cookbooks/node/providers/npm.rb in the cache.
[Tue, 07 Jun 2011 06:36:59 +0000] INFO: Storing updated cookbooks/node/providers/server.rb in the cache.
[Tue, 07 Jun 2011 06:36:59 +0000] INFO: Storing updated cookbooks/node/providers/nodejs.rb in the cache.
[Tue, 07 Jun 2011 06:37:00 +0000] INFO: Storing updated cookbooks/node/recipes/default.rb in the cache.
[Tue, 07 Jun 2011 06:37:00 +0000] INFO: Storing updated cookbooks/node/attributes/default.rb in the cache.
[Tue, 07 Jun 2011 06:37:00 +0000] INFO: Storing updated cookbooks/node/README.rdoc in the cache.
[Tue, 07 Jun 2011 06:37:01 +0000] INFO: Storing updated cookbooks/node/metadata.rb in the cache.
[Tue, 07 Jun 2011 06:37:01 +0000] INFO: Storing updated cookbooks/node/metadata.json in the cache.
[Tue, 07 Jun 2011 06:37:02 +0000] INFO: Storing updated cookbooks/monit/recipes/default.rb in the cache.
[Tue, 07 Jun 2011 06:37:02 +0000] INFO: Storing updated cookbooks/monit/libraries/monitrc.rb in the cache.
[Tue, 07 Jun 2011 06:37:02 +0000] INFO: Storing updated cookbooks/monit/attributes/default.rb in the cache.
[Tue, 07 Jun 2011 06:37:03 +0000] INFO: Storing updated cookbooks/monit/metadata.rb in the cache.
[Tue, 07 Jun 2011 06:37:03 +0000] INFO: Storing updated cookbooks/monit/metadata.json in the cache.
[Tue, 07 Jun 2011 06:37:03 +0000] INFO: Storing updated cookbooks/chef-client/recipes/default.rb in the cache.
[Tue, 07 Jun 2011 06:37:04 +0000] INFO: Storing updated cookbooks/chef-client/recipes/delete_validation.rb in the cache.
[Tue, 07 Jun 2011 06:37:04 +0000] INFO: Storing updated cookbooks/chef-client/recipes/config.rb in the cache.
[Tue, 07 Jun 2011 06:37:05 +0000] INFO: Storing updated cookbooks/chef-client/recipes/service.rb in the cache.
[Tue, 07 Jun 2011 06:37:05 +0000] INFO: Storing updated cookbooks/chef-client/attributes/default.rb in the cache.
[Tue, 07 Jun 2011 06:37:05 +0000] INFO: Storing updated cookbooks/chef-client/README.md in the cache.
[Tue, 07 Jun 2011 06:37:06 +0000] INFO: Storing updated cookbooks/chef-client/metadata.rb in the cache.
[Tue, 07 Jun 2011 06:37:06 +0000] INFO: Storing updated cookbooks/chef-client/metadata.json in the cache.
[Tue, 07 Jun 2011 06:37:07 +0000] INFO: Storing updated cookbooks/git/recipes/default.rb in the cache.
[Tue, 07 Jun 2011 06:37:07 +0000] INFO: Storing updated cookbooks/git/recipes/server.rb in the cache.
[Tue, 07 Jun 2011 06:37:07 +0000] INFO: Storing updated cookbooks/git/README.rdoc in the cache.
[Tue, 07 Jun 2011 06:37:08 +0000] INFO: Storing updated cookbooks/git/metadata.rb in the cache.
[Tue, 07 Jun 2011 06:37:08 +0000] INFO: Storing updated cookbooks/git/metadata.json in the cache.
[Tue, 07 Jun 2011 06:37:09 +0000] INFO: Storing updated cookbooks/build-essential/recipes/default.rb in the cache.
[Tue, 07 Jun 2011 06:37:09 +0000] INFO: Storing updated cookbooks/build-essential/README.md in the cache.
[Tue, 07 Jun 2011 06:37:09 +0000] INFO: Storing updated cookbooks/build-essential/metadata.rb in the cache.
[Tue, 07 Jun 2011 06:37:10 +0000] INFO: Storing updated cookbooks/build-essential/metadata.json in the cache
[Tue, 07 Jun 2011 06:37:11 +0000] ERROR: Running exception handlers
[Tue, 07 Jun 2011 06:37:11 +0000] FATAL: Saving node information to /var/chef/cache/failed-run-data.json
[Tue, 07 Jun 2011 06:37:11 +0000] ERROR: Exception handlers complete
[Tue, 07 Jun 2011 06:37:11 +0000] FATAL: Stacktrace dumped to /var/chef/cache/chef-stacktrace.out
[Tue, 07 Jun 2011 06:37:11 +0000] FATAL: Chef::Exceptions::CookbookNotFound: Cookbook logrotate not found. If you're loading logrotate from another cookbook, make sure you configure the dependency in your metadata

I wait a bit and still nothing is installed. Do I need to explicitly state action: install for each recipe default.rb? I'm so confused.


Solution

  • I used the rightscale mongodb cookbook and customized it for the latest release 1.8.1 on Ubuntu 10.04. Now deploying without issue.