Jenkins Remoting layer
Jenkins remoting is an executable JAR, which implements communication layer in Jenkins automation server. It's being used for master <=> agent(fka "slave") and master <=> CLI communications.
In general, this library contains the bootstrap code to bridge separate JVMs into a single semi-shared space. It includes: TCP-based communication protocols, data serialization, Java classloading.
The library is reusable outside Jenkins.
Remoting documentation is under development. More info will appear soon. Feel free to contribute.
Remoting library uses the Jenkins bugtracker.
Issues should be reported there in the
JENKINS project with the
See How to report an issue for more details about Jenkins issue reporting.
- Remoting Architecture Overview by Winston Prakash, Oracle (the information is outdated)
- Making your plugin behave in distributed Jenkins
- Writing an SCM plugin. Remoting examples
- Troubleshooting remoting issues
- Scaling Jenkins to Hundreds of Nodes by Akshay Dayal, Google (remoting optimization, JNLP3)