The respawn of the install monitor was paced by a retry budget that, once spent, made the daemon stop trying for good. That put xcatiport back in the state the respawn was added to fix: with no monitor alive there is nothing left to reset the counter, so the port stays dead until the whole daemon is restarted, and a port that frees up a minute later is never picked back up. It only reached that state more slowly than before. Pacing itself is needed. do_installm_service dies when it cannot bind the port, so an unguarded re-fork spins as fast as fork allows while something else holds it, and keeps re-entering that function's USR2 socket-takeover handshake. Replace the budget with an exponential backoff that has a ceiling but no end: the delay doubles from XCATD_MON_RESPAWN_MIN_INTERVAL (default 5s) to XCATD_MON_RESPAWN_MAX_INTERVAL (default 300s) and stays there. A monitor that cannot start therefore costs one fork per five minutes for as long as that lasts, and is back within five minutes of the port becoming free, with no restart and no operator action. A monitor that ran for XCATD_MON_RESPAWN_HEALTHY seconds (default 60) plainly got the socket and served, so its eventual death resets the delay: an isolated death is retried at once and the backoff only builds up during a real streak of failures to start. The ceiling is reported once per streak rather than on every attempt, and says that xcatd is still retrying instead of that it has stopped. The pacing lives in a marked mon-respawn-policy region, free of forking and of daemon state, so xCAT-test/unit/xcatd_monitor_respawn.t drives the real code rather than a copy of it. Signed-off-by: Daniel Hilst <392820+dhilst@users.noreply.github.com>
xCAT
xCAT is a toolkit for deployment and administration of clusters of all sizes.
The xCAT sunset was only a quick eclipse
Dear xCAT Community,
The xCAT sunset has changed course. VersatusHPC has been invited to join the xCAT Consortium, and future development will move toward direct upstream contributions coordinated with the Consortium and its existing member companies.
That matters most for Enterprise Linux 10 (EL10). EL10 support is coming to xCAT, restoring a future operating-system path for sites that still rely on xCAT. This is an important change from the previous sunset guidance, where the lack of an EL10 path was one of the strongest reasons to move away from xCAT.
The xCAT Consortium continues to recommend Confluent as the long-term successor to xCAT, and that remains the Consortium position. Users planning new cluster-management deployments should evaluate Confluent and its xCAT comparison documentation.
At the same time, xCAT is no longer sunsetted. The Consortium and participating companies will continue updating xCAT while there is community and user demand for it.
In summary:
- xCAT development is continuing upstream through the Consortium and participating companies.
- Enterprise Linux 10 support is coming.
- Confluent remains the Consortium-recommended successor and migration path.
- xCAT updates will continue while there is community and user demand.
We want to thank the xCAT Consortium and community for keeping this project moving. The sun went behind the moon for a moment, but xCAT is still here.
For more information on Confluent and how to get started, please visit the Confluent: Project Page, Documentation or Confluent vs xCAT comparison.
With thanks,
The xCAT Consortium
Documentation
xCAT Documentation is hosted on Read The Docs: https://xcat-docs.readthedocs.io
Status
| xCAT Version | Build Status |
|---|---|
| Latest (master branch) | |
| Stable (latest release) |
Looking for older versions?
Open Source License
xCAT is made available under the EPL license: https://opensource.org/licenses/eclipse-1.0.php
Developers
Want to help? Check out the developers guide!