Multiple chef-server instances on one server


#1

Hi

Does anyone know what needs to be done in order to have two chef-
servers on the same machine, serving different cookbooks directories
and writing to different db’s in couchdb, and probably using different
MQ and seaqrch indexes? (not sure about this one)
Does anyone has the need to have a testing chef-server and a
production chef-server like I do?

Best Regards

Miguel Cabeça


#2

Miguel,

You should be able to set two different server.rb files up with
different internal paths (for things like cookbooks, etc.)

Use a web server with virtual hosts and proxy support (Apache or
Nginx) to proxy between your two different chef instances, and give
the clients the name of the virtual host. (http://chef.test.cabeca.com
and http://chef.prod.cabeca.com)

If you are using an Opscode-style repository (with a Rakefile) you
will likely want to tweak that as well, to load two different
configurations depending on which environment needs to be updated.

Regards,
Adam

On Wed, Apr 22, 2009 at 8:54 AM, Miguel Cabeça cabeca@ist.utl.pt wrote:

Hi

Does anyone know what needs to be done in order to have two chef-servers on
the same machine, serving different cookbooks directories and writing to
different db’s in couchdb, and probably using different MQ and seaqrch
indexes? (not sure about this one)
Does anyone has the need to have a testing chef-server and a production
chef-server like I do?

Best Regards

Miguel Cabeça


Opscode, Inc.
Adam Jacob, CTO
T: (206) 508-4759 E: adam@opscode.com


#3

Hi,

You should be able to set two different server.rb files up with
different internal paths (for things like cookbooks, etc.)

Use a web server with virtual hosts and proxy support (Apache or
Nginx) to proxy between your two different chef instances, and give
the clients the name of the virtual host. (http://chef.test.cabeca.com
and http://chef.prod.cabeca.com)

That’s the easy part (the part that I understand :slight_smile:

I was talking about the chef internalls. Without changes, both
instances would use the same DB on couch and the same message queue
(?) and the same index (?) That would not be a good thing.

My question was more in the sense of what needs to be done to specify
different sets of components for different chef instances.

Does this make sense?

Best regards

Miguel Cabeça