Boot the live installer correctly. Add boot=casper so casper actually processes netboot=nfs instead of scanning local disks and panicking, resolve the install server to a literal IP because casper mounts the live filesystem with klibc's nfsmount which has no resolver, and add toram so casper copies the squashfs into RAM and unmounts the NFS source. That last one is what lets the node reboot at all: with the NFS root still mounted, systemd-shutdown waits forever on an lvm/pvscan wedged in uninterruptible I/O on it and the node never power-cycles into the disk it just installed. casper has no cmdline knob for NFS mount options -- it parses only nfsroot= and takes the whole value as the path -- so toram is its supported way to avoid a network root. Write the installer's resolv.conf nameserver as an IP. glibc's resolver discards a hostname given on a nameserver line, so the xcatmaster name left the installer, and the in-target apt that inherits the file, with no DNS at all. Add the online archive through apt `sources:` on classic-sources releases, where Subiquity renders the target sources.list from the install media alone and in-target apt cannot find packages the ISO does not carry. Deb822 releases are excluded: their primary mirror already lands in ubuntu.sources, so legacy .list files would configure the same suites twice. Flip the node to local-disk boot from the live installer over bash's /dev/tcp instead of relying on updateflag.awk, which needs gawk's |& coprocess while Ubuntu's /usr/bin/awk is mawk. The exchange is checked, and a failure is recorded in the install log rather than silently PXE-looping into another install. Defer syncfiles to the postbootscripts on the diskful install path, so it runs on the booted node with sshd up rather than inside the in-target chroot where the MN cannot reach it. Make the test harness's provision wait overridable through WAIT_FOR_PROVISION; the default stays short so a boot loop still fails fast. 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!