Versions Node Monitors

This plugin offers two node monitors:

  • Remoting Version

  • JVM Version

Plugin tutorial

plugin tutorial video

Remoting Version Node Monitor

Note
The remoting module handles the network connection between the Jenkins controller and agents.

This monitor will disconnect an agent if it is not running the same version of remoting library as the version on the Jenkins controller.

JVM Version Node Monitor

This monitor offers 3 levels of monitoring:

Level Description & Examples

Default

Agent must run a JVM whose feature-release counter (e.g., 11 or 17) is greater than or equal to that of the controller (strongly recommended minimum).

Even without this plugin, it is critical to the health of your Jenkins cluster that the feature-release counter of the agent JVM match that of the controller.

Examples:

  • Java 11.0.21 agent will not be disconnected from a Java 11.0.22 controller

  • Java 11.0.22 agent will not be disconnected from a Java 11.0.21 controller

  • Java 11.0.22 agent will not be disconnected from a Java 11.0.22 controller

  • Java 17.0.8 agent will not be disconnected from a Java 11.0.22 controller

  • Java 11.0.22 agent will be disconnected from a Java 17.0.8 controller

  • Java 17.0.8 agent will not be disconnected from a Java 17.0.8 controller

  • Java 17.0.8 agent will not be disconnected from a Java 17.0.8.1 controller

  • Java 17.0.8.1 agent will not be disconnected from a Java 17.0.8 controller

  • Java 17.0.8.1 agent will not be disconnected from a Java 17.0.8.1 controller

  • Java 17.0.9+9 agent will not be disconnected from a Java 17.0.9+7 controller

  • Java 17.0.9+7 agent will not be disconnected from a Java 17.0.9+9 controller

  • Java 17.0.8 agent will be disconnected from a Java 21.0.2 controller

  • Java 21.0.2 agent will not be disconnected from a Java 17.0.8 controller

  • Java 21.0.1 agent will not be disconnected from a Java 21.0.2 controller

  • Java 21.0.2 agent will not be disconnected from a Java 21.0.1 controller

  • Java 21.0.2 agent will not be disconnected from a Java 21.0.2 controller

Paranoid

Agent must run a JVM whose version number — including feature-release counter, interim-release counter, update-release counter, and patch-release counter (e.g., 11.0.22 or 17.0.8.1) but not including pre-release and build information (for example, 11.0.22+7, 17.0.10+7, or 21.0.2+13) — is greater than or equal to that of the controller.

Examples:

  • Java 11.0.21 agent will be disconnected from a Java 11.0.22 controller

  • Java 11.0.22 agent will not be disconnected from a Java 11.0.21 controller

  • Java 11.0.22 agent will not be disconnected from a Java 11.0.22 controller

  • Java 17.0.8 agent will not be disconnected from a Java 11.0.22 controller

  • Java 11.0.22 agent will be disconnected from a Java 17.0.8 controller

  • Java 17.0.8 agent will not be disconnected from a Java 17.0.8 controller

  • Java 17.0.8 agent will be disconnected from a Java 17.0.8.1 controller

  • Java 17.0.8.1 agent will not be disconnected from a Java 17.0.8 controller

  • Java 17.0.8.1 agent will not be disconnected from a Java 17.0.8.1 controller

  • Java 17.0.9+9 agent will not be disconnected from a Java 17.0.9+7 controller

  • Java 17.0.9+7 agent will not be disconnected from a Java 17.0.9+9 controller

  • Java 17.0.8 agent will be disconnected from a Java 21.0.2 controller

  • Java 21.0.2 agent will not be disconnected from a Java 17.0.8 controller

  • Java 21.0.1 agent will be disconnected from a Java 21.0.2 controller

  • Java 21.0.2 agent will not be disconnected from a Java 21.0.1 controller

  • Java 21.0.2 agent will not be disconnected from a Java 21.0.2 controller

Paranoid++

Agent must run a JVM whose version number — including feature-release counter, interim-release counter, update-release counter, and patch-release counter (e.g., 11.0.22 or 17.0.8.1) but not including pre-release and build information (for example, 11.0.22+7, 17.0.10+7, or 21.0.2+13) — is equal to that of the controller.

Examples:

  • Java 11.0.21 agent will be disconnected from a Java 11.0.22 controller

  • Java 11.0.22 agent will be disconnected from a Java 11.0.21 controller

  • Java 11.0.22 agent will not be disconnected from a Java 11.0.22 controller

  • Java 17.0.8 agent will be disconnected from a Java 11.0.22 controller

  • Java 11.0.22 agent will be disconnected from a Java 17.0.8 controller

  • Java 17.0.8 agent will not be disconnected from a Java 17.0.8 controller

  • Java 17.0.8 agent will be disconnected from a Java 17.0.8.1 controller

  • Java 17.0.8.1 agent will be disconnected from a Java 17.0.8 controller

  • Java 17.0.8.1 agent will not be disconnected from a Java 17.0.8.1 controller

  • Java 17.0.9+9 agent will not be disconnected from a Java 17.0.9+7 controller

  • Java 17.0.9+7 agent will not be disconnected from a Java 17.0.9+9 controller

  • Java 17.0.8 agent will be disconnected from a Java 21.0.2 controller

  • Java 21.0.2 agent will be disconnected from a Java 17.0.8 controller

  • Java 21.0.1 agent will be disconnected from a Java 21.0.2 controller

  • Java 21.0.2 agent will be disconnected from a Java 21.0.1 controller

  • Java 21.0.2 agent will not be disconnected from a Java 21.0.2 controller

Configuration Page

Enable Versions Node Monitors

Configuration as code

The node monitors can be configured automatically with the following configuration as code example:

jenkins:
  nodeMonitors:
  - jvmVersion:
      comparisonMode: RUNTIME_GREATER_OR_EQUAL_MASTER_BYTECODE
      ignored: true
  - remotingVersion:
      ignored: true