I just finished refactoring our eight or so application cookbooks into a single one with LWRP’s for different application layers and I’m pretty happy with it so far. All of our applications at the moment are Rails with Sidekiq for workers and Unicorn for the web servers running behind nginx. The way I ended up breaking things down was an LWRP for each one of those pieces, and recipes inside the cookbook for each application (so app1_web uses the app_web resource, app1_app uses the app_unicorn resource, etc.) We use runit for process supervision so each application has a data bag for it’s environment that gets put into the shared/env directory for that application. Standardizing on configuration for things like unicorn, nginx, sidekiq, etc. has made my life a whole lot easier now, and if there’s things I might need to tweak per application like unicorn worker counts or which ssl cert to use for an application’s web resource, I’ve just added those as attributes on the LWRPs.Tony--Tony BurnsOperations Engineer / Software DeveloperQuad Learning, Inc.1150 17th St Ste 310, Washington, DC 20036On Jan 2, 2014, at 18:25, David Morton < " target="_blank"> > wrote:In our case, I have to disagree, since most of our devs don't want to deal with devops. We have a lot of apps, but not very much server complexity for any one app. We have a git hook based deploy process, so if a single cookbook can provision servers based on a data structure in data bags, I think I can limit the ops side to those who deal with server provisioning, and have the server set up ready to accept a git push to deploy the app. Having all the servers provisioned with chef, though, will help standardize all the environments. Eventually, the cookbooks will need very little maintenance, and I won't have to create a new cookbook every time we start a new app - just add some data values and bootstrap the new servers.
Later I may add a rails app to manage the data bag data, allowing for quick provisioning of new app servers.
On 1/2/14 5:13 PM, JJ Asghar wrote:
I like the idea of one cookbook per app.
It allows for expandability and scaling opportunity.
If that makes sense :)
From: "Mark H. Nichols" < " target="_blank"> >
Reply-To: < " target="_blank"> >
Date: Thursday, January 2, 2014 at 3:33 PM
To: < " target="_blank"> >
Subject: [chef] App cookbooks
All -
What’s the community consensus on cookbooks to deploy applications. One per app? Or a generalized cookbook that can deploy any app (as long as it follows a set pattern)?
Thanks,Mark
-- David Morton " target="_blank">
Archive powered by MHonArc 2.6.16.