phelun
By:
phelun

Multiple workstation for one chef-server/org

August 3, 2015 2.6k views
Chef Ruby Git

Hi All ,

i have a chef server running with a few nodes registered on it . At the moment i have just ONE workstation managing and controlling the nodes with cookbooks written in my chef-repo dir.

I have two orther engineers i want them to be able to manage the same chef server from their own workstations .

Question:

1.) Whats the standard way for them to setup their own workstation to also manage same chef-server and nodes ?

2.) When they do the git clone part of the setup , they have compltetly newly synced chef-repo . Is there a way to share the same repo across three different workstations ?

Hope my question is quite understandable , i will be available for any clarifications

Thanks in advance . !

1 Answer

Hello There!

The most common method for multiple users is for each of them to run their own local workstation. They can set up the workstation in the same manner you did or however they wish.

Here is a great guide on setting up a chef workstation if you do not have one you prefer to use:
https://www.digitalocean.com/community/tutorials/how-to-set-up-a-chef-12-configuration-management-system-on-ubuntu-14-04-servers#configure-a-chef-workstation

To give them access to your Chef server, you will want to create a user on the Chef server. The command will look something like this:

chef-server-ctl user-create username FirstName LastName email@address 'password' -f username.pem

You will want to change username, FirstName, LastName, email@address, and password to whatever values you wish to use for the user. This will create a user on the chef server to access it. The .pem file created will be the one you want to provide them for access to the server. This .pem file will be located in the directory you are working in.

You can share it with them however you wish, if they have SSH access to the Chef server, you could place it in their home folder; then have them log in to get it

Then you will want to add them to the organization you are using with the following:

chef-server-ctl org-user-add organizationName username

If you want them to be an admin, you will want to tag '--admin' onto the end of that as an argument.

As for your second question, I'm not sure I understand what you mean, can you be more specific? If they are cloning a repository they would share the files that everyone who clones it has. If one user updates the repository, they can push their changes and then the others can pull those later.

Perhaps I don't understand your question though, so if you could clarify that would be great :)

As your infrastructure requirements expand, managing each server by hand becomes an increasingly difficult task. This difficulty is compounded by requirements for reproducibility, which become necessary if a node fails or if horizontal scaling is needed. Configuration...
Have another answer? Share your knowledge.