<p>If I need to build, run checks, tests, ... I use a node.</p>

<p>If I want to open a connection to a server to deliver the built code to production for example, I use the sshCommand step from SSH Step plugin. When the code is delivered the ssh connection is closed.</p>

<p>Having a node always connected to your jenkins can be unpleasant. Let's say the server you connect to belongs to a partner and he wants to audit the times you connect to put the files on the server. In that case he cannot say. Having a node always connected also means you need to maintain the connection, imagine the server is configured to disconnect you after a while or the server reboots and the connection is not relaunched.</p>

CC BY-SA 4.0
2019-04-23T21:17:47.860Z
2019-04-23T21:17:47.860Z
fredericrous
<p>What are the advantages of each option? What are the disadvantages? Is there a best practice in this? I fail to see any critical differences between them.</p>

<p>In my current place of employment we use nodes exclusively, however they are all in our internal network.</p>

<p>I have a task that needs to be delegated to an external server. It does not need access to our GIT. Essentially, it will upload data to a file server, and does not need to access our servers, network, data, etc.</p>

CC BY-SA 4.0
2018-09-06T22:45:27.627Z
Can you add more details about what you mean by "SSH site" and "node"?  I am not familiar with these terms as they relate to Jenkins.  Perhaps you are talking about communicating with nodes via JNLP vs. SSH?
jayhendren
CC BY-SA 4.0
2018-09-07T21:03:00.517Z
He tried to choose jenkins slave (jnlp) or ssh agent (plugin).
Do not use plugin if you can solve it natively.
Meiram Chuzhenbayev
CC BY-SA 4.0
2018-09-12T07:58:45.777Z
@jayhendren by "SSH site" I mean using a the "Execute shell script on remote host using SSH" build step (It refers to the SSH host as an SSH site if I get it).
By Node I mean a server that runs a Jenkins agent program and responds to the Jenkins master. Based on: https://wiki.jenkins.io/display/JENKINS/Distributed+builds.
Uberhumus
<jenkins>
In Jenkins when to use SSH site and when to use a node?
Uberhumus
# In Jenkins when to use SSH site and when to use a node?

(Asked by: username_0 on 2018-09-06)

What are the advantages of each option? What are the disadvantages? Is there a best practice in this? I fail to see any critical differences between them.

In my current place of employment we use nodes exclusively, however they are all in our internal network.

I have a task that needs to be delegated to an external server. It does not need access to our GIT. Essentially, it will upload data to a file server, and does not need to access our servers, network, data, etc.

**Tags:** jenkins

> **Comments:**
> **username_1**: Can you add more details about what you mean by "SSH site" and "node"?  I am not familiar with these terms as they relate to Jenkins.  Perhaps you are talking about communicating with nodes via JNLP vs. SSH?  
> **username_2**: He tried to choose jenkins slave (jnlp) or ssh agent (plugin). Do not use plugin if you can solve it natively.  
> **username_0**: @username_1 by "SSH site" I mean using a the "Execute shell script on remote host using SSH" build step (It refers to the SSH host as an SSH site if I get it). By Node I mean a server that runs a Jenkins agent program and responds to the Jenkins master. Based on: https://wiki.jenkins.io/display/JENKINS/Distributed+builds.  

---

## 1 answers

### Answer by username_3 on 2019-04-23. Score: 1

If I need to build, run checks, tests, ... I use a node.

If I want to open a connection to a server to deliver the built code to production for example, I use the sshCommand step from SSH Step plugin. When the code is delivered the ssh connection is closed.

Having a node always connected to your jenkins can be unpleasant. Let's say the server you connect to belongs to a partner and he wants to audit the times you connect to put the files on the server. In that case he cannot say. Having a node always connected also means you need to maintain the connection, imagine the server is configured to disconnect you after a while or the server reboots and the connection is not relaunched.


---

