Terminology: agent vs node

classic Classic list List threaded Threaded
8 messages Options
Reply | Threaded
Open this post in threaded view
|

Terminology: agent vs node

Martin Schmude
Dear all,

on the occasion of the current effort to replace the term "master" I learnt, that back in 2016 it had been decided to replace "slave" by "agent".

This reminds me of that I am worried from time to time by the terms "agent" and "node".
They seem to be synonyms - am I right?
If so, shouldn't "agent" be the preferred term, due to the decision of 2016 and "node" be dropped?

--
You received this message because you are subscribed to the Google Groups "Jenkins Developers" group.
To unsubscribe from this group and stop receiving emails from it, send an email to [hidden email].
To view this discussion on the web visit https://groups.google.com/d/msgid/jenkinsci-dev/142ebe47-dbc5-4bf5-8bf1-96f69517983ao%40googlegroups.com.
Reply | Threaded
Open this post in threaded view
|

Re: Terminology: agent vs node

Gavin Mogan
I agree its pretty confusing.

I'm under the impression an agent (like ssh) can have multiple nodes.
to me, node = executor, but not really

On Tue, Jul 21, 2020 at 2:06 PM 'Martin Schmude' via Jenkins Developers <[hidden email]> wrote:
Dear all,

on the occasion of the current effort to replace the term "master" I learnt, that back in 2016 it had been decided to replace "slave" by "agent".

This reminds me of that I am worried from time to time by the terms "agent" and "node".
They seem to be synonyms - am I right?
If so, shouldn't "agent" be the preferred term, due to the decision of 2016 and "node" be dropped?

--
You received this message because you are subscribed to the Google Groups "Jenkins Developers" group.
To unsubscribe from this group and stop receiving emails from it, send an email to [hidden email].
To view this discussion on the web visit https://groups.google.com/d/msgid/jenkinsci-dev/142ebe47-dbc5-4bf5-8bf1-96f69517983ao%40googlegroups.com.

--
You received this message because you are subscribed to the Google Groups "Jenkins Developers" group.
To unsubscribe from this group and stop receiving emails from it, send an email to [hidden email].
To view this discussion on the web visit https://groups.google.com/d/msgid/jenkinsci-dev/CAG%3D_DusuDdKaGZ38V5SmUeM%2B5RPgnpas9-rzEy_GAwQeMZF1gA%40mail.gmail.com.
Reply | Threaded
Open this post in threaded view
|

Re: Terminology: agent vs node

Jeff Thompson
In reply to this post by Martin Schmude

Yes, the usages of these terms should cleaned up and made consistent. "agent" is a better term in almost all cases. Sometimes there is a technical distinction between the terms, but we should only use "node" where we really need to distinguish that and use "agent" as much as possible in the UI.

Jeff

On 7/21/20 3:05 PM, 'Martin Schmude' via Jenkins Developers wrote:
Dear all,

on the occasion of the current effort to replace the term "master" I learnt, that back in 2016 it had been decided to replace "slave" by "agent".

This reminds me of that I am worried from time to time by the terms "agent" and "node".
They seem to be synonyms - am I right?
If so, shouldn't "agent" be the preferred term, due to the decision of 2016 and "node" be dropped?

--
You received this message because you are subscribed to the Google Groups "Jenkins Developers" group.
To unsubscribe from this group and stop receiving emails from it, send an email to [hidden email].
To view this discussion on the web visit https://groups.google.com/d/msgid/jenkinsci-dev/142ebe47-dbc5-4bf5-8bf1-96f69517983ao%40googlegroups.com.

--
You received this message because you are subscribed to the Google Groups "Jenkins Developers" group.
To unsubscribe from this group and stop receiving emails from it, send an email to [hidden email].
To view this discussion on the web visit https://groups.google.com/d/msgid/jenkinsci-dev/acbbef58-9b51-6515-2d07-daefc1f12aaa%40cloudbees.com.
Reply | Threaded
Open this post in threaded view
|

Re: Terminology: agent vs node

Daniel Beck
In reply to this post by Martin Schmude


> On 21. Jul 2020, at 23:05, 'Martin Schmude' via Jenkins Developers <[hidden email]> wrote:
>
> This reminds me of that I am worried from time to time by the terms "agent" and "node".
> They seem to be synonyms - am I right?
> If so, shouldn't "agent" be the preferred term, due to the decision of 2016 and "node" be dropped?
>

These terms are useful and consistent, as master can also be a node. By default, it's even the only node.

So "node" is an term for "master and agents" (at least the "executing workloads" part of master, see my and others' feedback to the ongoing terminology update that it could make sense to use different terms here).

> to me, node = executor, but not really

One node can have multiple executors. Executors are individual slots for a single workload.

By default, a new Jenkins installation has 1 node (the master) with 2 executors, and 0 agents.

All of that is also explained in https://www.jenkins.io/doc/book/glossary/

--
You received this message because you are subscribed to the Google Groups "Jenkins Developers" group.
To unsubscribe from this group and stop receiving emails from it, send an email to [hidden email].
To view this discussion on the web visit https://groups.google.com/d/msgid/jenkinsci-dev/9636A16D-1011-47E7-BCEE-A6738024B660%40beckweb.net.
Reply | Threaded
Open this post in threaded view
|

Re: Terminology: agent vs node

Daniel Beck


> On 22. Jul 2020, at 13:40, Daniel Beck <[hidden email]> wrote:
>
> These terms are useful and consistent, as master can also be a node. By default, it's even the only node.

I forgot to mention: Master is not an agent (but both are nodes). This distinction was somewhat clearer, IMO, before we introduced the 'agent' term, so let's hope we find a replacement term for 'master' that nicely contrasts with 'agent' :-)

--
You received this message because you are subscribed to the Google Groups "Jenkins Developers" group.
To unsubscribe from this group and stop receiving emails from it, send an email to [hidden email].
To view this discussion on the web visit https://groups.google.com/d/msgid/jenkinsci-dev/2A4017C8-842C-4E47-B822-D8B4FB9DBB60%40beckweb.net.
Reply | Threaded
Open this post in threaded view
|

Re: Terminology: agent vs node

Martin Schmude
In reply to this post by Daniel Beck
I have not been aware of the definitions in https://www.jenkins.io/doc/book/glossary/.
So thank you very much.


Am Mittwoch, 22. Juli 2020 13:40:54 UTC+2 schrieb Daniel Beck:


> On 21. Jul 2020, at 23:05, 'Martin Schmude' via Jenkins Developers <<a href="javascript:" target="_blank" gdf-obfuscated-mailto="gYDEmCXLCAAJ" rel="nofollow" onmousedown="this.href=&#39;javascript:&#39;;return true;" onclick="this.href=&#39;javascript:&#39;;return true;">jenkin...@googlegroups.com> wrote:
>
> This reminds me of that I am worried from time to time by the terms "agent" and "node".
> They seem to be synonyms - am I right?
> If so, shouldn't "agent" be the preferred term, due to the decision of 2016 and "node" be dropped?
>

These terms are useful and consistent, as master can also be a node. By default, it's even the only node.

So "node" is an term for "master and agents" (at least the "executing workloads" part of master, see my and others' feedback to the ongoing terminology update that it could make sense to use different terms here).

> to me, node = executor, but not really

One node can have multiple executors. Executors are individual slots for a single workload.

By default, a new Jenkins installation has 1 node (the master) with 2 executors, and 0 agents.

All of that is also explained in <a href="https://www.jenkins.io/doc/book/glossary/" target="_blank" rel="nofollow" onmousedown="this.href=&#39;https://www.google.com/url?q\x3dhttps%3A%2F%2Fwww.jenkins.io%2Fdoc%2Fbook%2Fglossary%2F\x26sa\x3dD\x26sntz\x3d1\x26usg\x3dAFQjCNFwMoXCgwFN3QjE0fjWdZNzuLuhGw&#39;;return true;" onclick="this.href=&#39;https://www.google.com/url?q\x3dhttps%3A%2F%2Fwww.jenkins.io%2Fdoc%2Fbook%2Fglossary%2F\x26sa\x3dD\x26sntz\x3d1\x26usg\x3dAFQjCNFwMoXCgwFN3QjE0fjWdZNzuLuhGw&#39;;return true;">https://www.jenkins.io/doc/book/glossary/

--
You received this message because you are subscribed to the Google Groups "Jenkins Developers" group.
To unsubscribe from this group and stop receiving emails from it, send an email to [hidden email].
To view this discussion on the web visit https://groups.google.com/d/msgid/jenkinsci-dev/fcff3711-107b-44a4-90c1-fb60f3ec13e9o%40googlegroups.com.
Reply | Threaded
Open this post in threaded view
|

Re: Terminology: agent vs node

Gavin Mogan
In reply to this post by Daniel Beck
> By default, a new Jenkins installation has 1 node (the master) with 2 executors, and 0 agents.

this sentence has made it the most clear I've ever been about it. Thank you

On Wed, Jul 22, 2020 at 4:41 AM Daniel Beck <[hidden email]> wrote:


> On 21. Jul 2020, at 23:05, 'Martin Schmude' via Jenkins Developers <[hidden email]> wrote:
>
> This reminds me of that I am worried from time to time by the terms "agent" and "node".
> They seem to be synonyms - am I right?
> If so, shouldn't "agent" be the preferred term, due to the decision of 2016 and "node" be dropped?
>

These terms are useful and consistent, as master can also be a node. By default, it's even the only node.

So "node" is an term for "master and agents" (at least the "executing workloads" part of master, see my and others' feedback to the ongoing terminology update that it could make sense to use different terms here).

> to me, node = executor, but not really

One node can have multiple executors. Executors are individual slots for a single workload.

By default, a new Jenkins installation has 1 node (the master) with 2 executors, and 0 agents.

All of that is also explained in https://www.jenkins.io/doc/book/glossary/

--
You received this message because you are subscribed to the Google Groups "Jenkins Developers" group.
To unsubscribe from this group and stop receiving emails from it, send an email to [hidden email].
To view this discussion on the web visit https://groups.google.com/d/msgid/jenkinsci-dev/9636A16D-1011-47E7-BCEE-A6738024B660%40beckweb.net.

--
You received this message because you are subscribed to the Google Groups "Jenkins Developers" group.
To unsubscribe from this group and stop receiving emails from it, send an email to [hidden email].
To view this discussion on the web visit https://groups.google.com/d/msgid/jenkinsci-dev/CAG%3D_DusU%3DXfjX%3DeRbumZ1i81PoJrR90DCrpXJhVxJV6oySG9Rw%40mail.gmail.com.
Reply | Threaded
Open this post in threaded view
|

Re: Terminology: agent vs node

Ian W
This is distinction I was trying to make in my response to "Terminology Updates", without the self-evident and clear distinction between node, agent and executor Daniel illustrated so well.


I see "the master" as having two contexts. There is the Administrative context (configuration, plugins etc.), that determine focus, capability, delegation. Then there's the context of those tasks that are necessary to execute "on the master". What about the tasks run on master? It's still executors doing the work...

That is why I proposed using two names for the different contexts: "Executive" for the administrative portion of master,  and "Concierge" for the task execution.
AgentZero (or NodeZero) also has a nice ring to it for that context, should another name be chosen for the "Master".

Personally, I always found the glossary definitions rather confusing
Agent: An agent is typically a machine, or container, which connects to a Jenkins master and executes tasks when directed by the master.
Master:  The central, coordinating process which stores configuration, loads plugins, and renders the various user interfaces for Jenkins.
Node: A machine which is part of the Jenkins environment and capable of executing Pipelines or Projects.
Both the Master and Agents are considered to be Nodes.

As defined, an agent is a machine, a node is a machine, but a master is a "process". Master is considered to be a Node, which implies it's a machine even though that's not in the definition. The definition of master also mentions nothing about executing Pipelines or Projects; that must be inferred.

We can have multiple Nodes running on the same remote server (under different accounts - aka agents ?).
We can also have a Node configured on the same server as the master, but it's not master.

I am not an taxonomist nor a linguist, perhaps just a little pedantic: concerned with formalism, accuracy, and precision.

I have perhaps wrongly interpreted the Node to be Jenkins master's representation of the server/container + account the agent is running on. There also happens to be an agent that runs on master.

When you add a Node, it's a combination of the host+account (plus environment) that the agent is launched under.

If I'm completely off-base, please disregard. If any of this makes sense, the definitions in the glossary should get some attention. If it makes more sense, then there are two contexts for "master" that need to de documented and given names to avoid ambiguity.


Regards,
Ian

On Wednesday, 22 July 2020 11:08:12 UTC-7, Gavin Mogan wrote:
> By default, a new Jenkins installation has 1 node (the master) with 2 executors, and 0 agents.

this sentence has made it the most clear I've ever been about it. Thank you

On Wed, Jul 22, 2020 at 4:41 AM Daniel Beck <<a href="javascript:" target="_blank" gdf-obfuscated-mailto="57CMLEjgCAAJ" rel="nofollow" onmousedown="this.href=&#39;javascript:&#39;;return true;" onclick="this.href=&#39;javascript:&#39;;return true;">m...@...> wrote:


> On 21. Jul 2020, at 23:05, 'Martin Schmude' via Jenkins Developers <<a href="javascript:" target="_blank" gdf-obfuscated-mailto="57CMLEjgCAAJ" rel="nofollow" onmousedown="this.href=&#39;javascript:&#39;;return true;" onclick="this.href=&#39;javascript:&#39;;return true;">jenkin...@googlegroups.com> wrote:
>
> This reminds me of that I am worried from time to time by the terms "agent" and "node".
> They seem to be synonyms - am I right?
> If so, shouldn't "agent" be the preferred term, due to the decision of 2016 and "node" be dropped?
>

These terms are useful and consistent, as master can also be a node. By default, it's even the only node.

So "node" is an term for "master and agents" (at least the "executing workloads" part of master, see my and others' feedback to the ongoing terminology update that it could make sense to use different terms here).

> to me, node = executor, but not really

One node can have multiple executors. Executors are individual slots for a single workload.

By default, a new Jenkins installation has 1 node (the master) with 2 executors, and 0 agents.

All of that is also explained in <a href="https://www.jenkins.io/doc/book/glossary/" rel="nofollow" target="_blank" onmousedown="this.href=&#39;https://www.google.com/url?q\x3dhttps%3A%2F%2Fwww.jenkins.io%2Fdoc%2Fbook%2Fglossary%2F\x26sa\x3dD\x26sntz\x3d1\x26usg\x3dAFQjCNFwMoXCgwFN3QjE0fjWdZNzuLuhGw&#39;;return true;" onclick="this.href=&#39;https://www.google.com/url?q\x3dhttps%3A%2F%2Fwww.jenkins.io%2Fdoc%2Fbook%2Fglossary%2F\x26sa\x3dD\x26sntz\x3d1\x26usg\x3dAFQjCNFwMoXCgwFN3QjE0fjWdZNzuLuhGw&#39;;return true;">https://www.jenkins.io/doc/book/glossary/

--
You received this message because you are subscribed to the Google Groups "Jenkins Developers" group.
To unsubscribe from this group and stop receiving emails from it, send an email to <a href="javascript:" target="_blank" gdf-obfuscated-mailto="57CMLEjgCAAJ" rel="nofollow" onmousedown="this.href=&#39;javascript:&#39;;return true;" onclick="this.href=&#39;javascript:&#39;;return true;">jenkin...@googlegroups.com.
To view this discussion on the web visit <a href="https://groups.google.com/d/msgid/jenkinsci-dev/9636A16D-1011-47E7-BCEE-A6738024B660%40beckweb.net" rel="nofollow" target="_blank" onmousedown="this.href=&#39;https://groups.google.com/d/msgid/jenkinsci-dev/9636A16D-1011-47E7-BCEE-A6738024B660%40beckweb.net&#39;;return true;" onclick="this.href=&#39;https://groups.google.com/d/msgid/jenkinsci-dev/9636A16D-1011-47E7-BCEE-A6738024B660%40beckweb.net&#39;;return true;">https://groups.google.com/d/msgid/jenkinsci-dev/9636A16D-1011-47E7-BCEE-A6738024B660%40beckweb.net.

--
You received this message because you are subscribed to the Google Groups "Jenkins Developers" group.
To unsubscribe from this group and stop receiving emails from it, send an email to [hidden email].
To view this discussion on the web visit https://groups.google.com/d/msgid/jenkinsci-dev/e8303a33-3386-4b22-8e1c-88c6ce0cd384o%40googlegroups.com.