Node vs client


#1

Hi,

I’m a little bit confused… with nodes and clients… following the
devopscasts, the mysql server was installed on a client machine, using
bootstrap method but the client machine didn’t have a chef client
installed. I only need the chef client installed if I want to run it on a
regular basis to update configs? Or, the bootstrap installation already
installed the chef client?

Thanks

Kelly


#2

Hello!

On Tue, Dec 27, 2011 at 2:30 AM, Kelly Goedert kelly.goedert@gmail.com wrote:

I’m a little bit confused… with nodes and clients… following the
devopscasts, the mysql server was installed on a client machine, using
bootstrap method but the client machine didn’t have a chef client installed.
I only need the chef client installed if I want to run it on a regular basis
to update configs? Or, the bootstrap installation already installed the chef
client?

Nodes are the systems that you configure with Chef. They have data
(attributes) and a list of roles or recipes to run (run list). Nodes
typically run Chef either in standalone mode (chef-solo) or connected
to a Chef Server (chef-client).

Clients authenticate to the Chef Server API (Opscode Hosted/Private
Chef, Open Source Chef Server).

chef-client is a program installed with Chef. It can be run a single
time on the command line, or as a daemon.

We normally call the process of setting up a node to run Chef
"bootstrapping." This is often done with knife bootstrap command.

More information about these terms here, with links to additional detail:

http://wiki.opscode.com/display/chef/Glossary


Opscode, Inc
Joshua Timberman, Technical Program Manager
IRC, Skype, Twitter, Github: jtimberman


#3

A good way to think of it:

Node = Machine
Client = User that authenticates against chef-server

A Node has the list of recipes to be run, and a Client has the permission level to access the chef-server.

So, when webserver XYZ connects to chef-server, it says “Hi, I’m client XYZ, may I have the recipes and run-list for node XYZ?”

When using chef-solo instead of chef-server, all of the recipes and the run-list are contained within chef on that particular machine, so clients and nodes are a chef-server/chef-client mechanic.

----- Original Message -----
From: “Joshua Timberman” joshua@opscode.com
To: chef@lists.opscode.com
Sent: Tuesday, December 27, 2011 3:44:22 AM GMT -06:00 US/Canada Central
Subject: [chef] Re: node vs client…

Hello!

On Tue, Dec 27, 2011 at 2:30 AM, Kelly Goedert kelly.goedert@gmail.com wrote:

I’m a little bit confused… with nodes and clients… following the
devopscasts, the mysql server was installed on a client machine, using
bootstrap method but the client machine didn’t have a chef client installed.
I only need the chef client installed if I want to run it on a regular basis
to update configs? Or, the bootstrap installation already installed the chef
client?

Nodes are the systems that you configure with Chef. They have data
(attributes) and a list of roles or recipes to run (run list). Nodes
typically run Chef either in standalone mode (chef-solo) or connected
to a Chef Server (chef-client).

Clients authenticate to the Chef Server API (Opscode Hosted/Private
Chef, Open Source Chef Server).

chef-client is a program installed with Chef. It can be run a single
time on the command line, or as a daemon.

We normally call the process of setting up a node to run Chef
"bootstrapping." This is often done with knife bootstrap command.

More information about these terms here, with links to additional detail:

http://wiki.opscode.com/display/chef/Glossary


Opscode, Inc
Joshua Timberman, Technical Program Manager
IRC, Skype, Twitter, Github: jtimberman


#4

See also http://wiki.opscode.com/display/chef/Architecture+Introduction for
an explanation of the distinction between nodes, clients (chef-client and
API client), and workstations. There’s a picture! :slight_smile:

Thanks,

  • Tom

On Tue, Dec 27, 2011 at 7:23 AM, Aaron Abramson aabramson@wi-figuys.comwrote:

A good way to think of it:

Node = Machine
Client = User that authenticates against chef-server

A Node has the list of recipes to be run, and a Client has the permission
level to access the chef-server.

So, when webserver XYZ connects to chef-server, it says “Hi, I’m client
XYZ, may I have the recipes and run-list for node XYZ?”

When using chef-solo instead of chef-server, all of the recipes and the
run-list are contained within chef on that particular machine, so clients
and nodes are a chef-server/chef-client mechanic.

----- Original Message -----
From: “Joshua Timberman” joshua@opscode.com
To: chef@lists.opscode.com
Sent: Tuesday, December 27, 2011 3:44:22 AM GMT -06:00 US/Canada Central
Subject: [chef] Re: node vs client…

Hello!

On Tue, Dec 27, 2011 at 2:30 AM, Kelly Goedert kelly.goedert@gmail.com
wrote:

I’m a little bit confused… with nodes and clients… following the
devopscasts, the mysql server was installed on a client machine, using
bootstrap method but the client machine didn’t have a chef client
installed.
I only need the chef client installed if I want to run it on a regular
basis
to update configs? Or, the bootstrap installation already installed the
chef
client?

Nodes are the systems that you configure with Chef. They have data
(attributes) and a list of roles or recipes to run (run list). Nodes
typically run Chef either in standalone mode (chef-solo) or connected
to a Chef Server (chef-client).

Clients authenticate to the Chef Server API (Opscode Hosted/Private
Chef, Open Source Chef Server).

chef-client is a program installed with Chef. It can be run a single
time on the command line, or as a daemon.

We normally call the process of setting up a node to run Chef
"bootstrapping." This is often done with knife bootstrap command.

More information about these terms here, with links to additional detail:

http://wiki.opscode.com/display/chef/Glossary


Opscode, Inc
Joshua Timberman, Technical Program Manager
IRC, Skype, Twitter, Github: jtimberman