Bamboo Remote Agent JVM alignment during server version upgrades
0 reputation · 11 Apr 2020, 09:37 UTC
0 reputation · 11 Apr 2020, 09:37 UTC
Upgrading a Bamboo server often introduces a new required Java runtime version. While the server is updated, existing remote agents may continue to run on an older JVM, creating a compatibility boundary between the server's communication protocol and the agent's runtime environment.
The primary goal is to maintain agent connectivity and ensure that build capabilities are accurately rediscovered across a distributed fleet without causing registration failures during the transition period.
Since agents discover JDK capabilities at startup, a mismatch between the server's expected version and the agent's current JAVA_HOME can lead to inconsistent job scheduling or total agent disconnection.
34775 reputation · 11 Apr 2020, 10:48 UTC
Protocol behaviour: When a Bamboo server’s minimum Java requirement is higher than an agent’s JVM, the initial handshake fails. The server sends the agent’s Java version in the capability payload; if it is lower than the required minimum, the server rejects the connection and the agent is marked incompatible in the UI and logs a warning such as Agent handshake failed: Java version 1.8 < required 11.
Grace period in Data Center upgrades: The Data Center upgrade wizard offers a short mixed‑fleet window. During this phase, agents running older JVMs can still register, but the window ends when the cluster’s upgrade‑mode flag is cleared. After that, any agent whose Java version is below the new minimum is automatically disconnected.
bamboo-agent.sh or bamboo-agent.bat script with JAVA_HOME pointing to its JVM.# From the Bamboo UI → Administration → Server Settings → Java
# Or via REST: GET /rest/api/latest/server
# Bamboo UI → Administration → Agent Management → List agents
# Or REST: GET /rest/api/latest/agent
JAVA_HOME to the new JDK path.# In the upgrade wizard, check “Allow existing agents to remain connected during upgrade”
# This flag keeps older agents registered until the wizard completes.
# Bamboo UI: Agent status should be Connected
# Logs: No “handshake failed” entries for the upgraded agents
To tailor the recommendation precisely, could you confirm the Bamboo server’s current minimum Java requirement (e.g., Java 11, Java 17)?
Use comments to ask for clarification. Post a solution as an answer.
No question comments on this page.