English 中文(简体)
Should I be using Chef or other tool for managing servers
原标题:

I have 4 servers behind a load balancer and a staging server, a db server, and a utility server for a web application that hosts a number of web sites.

Should I make the jump to Chef to manage these servers or should I just maintain them manually? The servers were built using sprinkle but at that time there were only two. Now that there are four maintenance is becoming more of an issue.

I d like to hear experiences and the pros and cons of chef and other chef-like tools.

Thanks!

最佳回答

Chef has a steep learning curve, so it will take a while - at least a few weeks - to become familiar with how to use it.

But once you pick up the basics, it is a very handy system, and can simplify any number of tasks - even for the smallest of infrastructures.

A few notes for when you start.

  • You will be setting up and tearing down cloud servers dozens of times, just to get the hang of it. Experiment.

  • The standard opscode cookbooks (github.com/opscode/cookbooks) are very useful. But you will need to extend/customize many of them for your particular case. And you will need to search the net for cookbooks that are missing from the opscode/cookbooks repository.

  • Read the opscode cookbooks, and read the 37signals cookbooks too.

  • The application and database cookbooks are geared towards standard Rails apps with MySQL and Memcached. To the extent that this describes you, you are way in luck.

问题回答

We moved to Chef, and we now have a 1 minute redeployment for our app. So it certainly pays off.

However it took a long time (a few months) to get to the point where we were happy with the chef deployment strategy. With hindsight we would have had several spare boxes around to try out a from scratch deployment. I certainly wouldn t advise trying chef in a production environment without an exact mirror of the setup and lots and lots of tests, nor would I advise using chef on a setup that hasn t been cheffed from scratch.

Having said that, Chef is far better than the other options we looked at and now that we are out the other side it s a breeze deploying a new version of the app on multiple servers. In future I ll be using it for any staging or production environment I have.

In summary, yes, but only if your client/employer is aware that it may take some time before they see the benefits, which will be considerable.





相关问题
rails collection_select vs. select

collection_select and select Rails helpers: Which one should I use? I can t see a difference in both ways. Both helpers take a collection and generates options tags inside a select tag. Is there a ...

SSL slowness in EC2

We ve deployed our rails app to EC2. In our setup, we have two proxies on small instances behind round-robin DNS. These run nginx load balancers for a dynamically growing and shrinking farm of web ...

Auth-code with A-Za-z0-9 to use in an URL parameter

As part of a web application I need an auth-code to pass as a URL parameter. I am currently using (in Rails) : Digest::SHA1.hexdigest((object_id + rand(255)).to_s) Which provides long strings like : ...

RubyCAS-Client question: Rails

I ve installed RubyCAS-Client version 2.1.0 as a plugin within a rails app. It s working, but I d like to remove the ?ticket= in the url. Is this possible?

activerecord has_many :through find with one sql call

I have a these 3 models: class User < ActiveRecord::Base has_many :permissions, :dependent => :destroy has_many :roles, :through => :permissions end class Permission < ActiveRecord::...

Ordering a hash to xml: Rails

I m building an xml document from a hash. The xml attributes need to be in order. How can this be accomplished? hash.to_xml

Text Editor for Ruby-on-Rails

guys which text editor is good for Rubyonrails? i m using Windows and i was using E-Texteditor but its not free n its expired now can anyone plese tell me any free texteditor? n which one is best an ...

How to get SQL queries for each user where env is production

I’m developing an application dedicated to generate statistical reports, I would like that user after saving their stat report they save sql queries too. To do that I wrote the following module: ...

热门标签