Xen Orchestra 5.105
Another month, another release—once again, we have a ton of updates to share with you across the XCP-ng project, the community, and Xen Orchestra itself. From deeper hardware integration and major UI improvements to important progress in the ARM architecture and LTS arenas, this month's release is is chock-full of new features and improvements with meaningful changes. Whether you're running production environments, managing backups, exploring DevOps tooling, or just keeping an eye on what’s next, there's something in here for you. Let's dive in.
The detailed changelog for XO is available on this link.
👨🚀 Project & Community
Let’s start with the broader ecosystem. From advancements in XCP-ng virtualization on ARM architecture to details about our upcoming LTS release, and key milestones in the Xen Project, there’s been strong momentum this month across the community and upstream. Here’s a look at what’s been happening.
A new Xen Community manager
We’re super excited about this: after starting as a Xen Evangelist, Cody has now officially stepped into the role of Xen Project Community Manager! 🎉
Personally, I think he’s a great guy and an ideal fit for the job. Fun fact? He’s almost a neighbor!
At Vates, we’re doubling down on our commitment to the Xen Project and have big plans to help accelerate its growth even more — so expect more exciting news on this front in 2025!
Xen on Ampere
Cody, the new Community Manager of the Xen Project, recently shared an update on our ongoing work to port XCP-ng to the ARM architecture. With support from Ampere—who provided access to their high-performance hardware—we’ve been able to start testing and validating the platform. While it’s still early, we’re aiming to release a public preview before the end of the year, so stay tuned.

Xen 4.20 is out
Xen 4.20 has been officially released! While this version won’t impact XCP-ng in the immediate term, it’s an important milestone for the Xen Project itself. It also sets the foundation for the future: Xen 4.20 is expected to power our next major release, XCP-ng 9.0.

The future of XCP-ng LTS
Our current Long-Term Support (LTS) version, XCP-ng 8.2, will reach the end of its support lifecycle in June 2025.
To ensure a smooth transition, we have introduced its successor: XCP-ng 8.3 LTS. Released last October, XCP-ng 8.3 will soon enter its LTS support phase as originally announced. To facilitate migration, we will ensure a three-month overlap between XCP-ng 8.2 LTS and 8.3 LTS, allowing users to upgrade without pressure.

XCP-ng March Updates
March also brought fresh security and maintenance updates for both XCP-ng 8.2 and XCP-ng 8.3. These patches are part of our ongoing effort to deliver reliable, consistent updates—now almost on a monthly basis—to keep your infrastructure secure and up to date.


Thoughts about IT monoculture
In the wake of the VMware situation, I penned a personal and timely blog post calling for greater digital biodiversity. It's a reminder that putting all your eggs in one vendor’s basket comes with real risks—and why open, diverse ecosystems matter more than ever.

Coder+Terraform
We also want to highlight a great contribution from the community: a blog post by Millefeuille, who shared how they created a template to use Coder with XCP-ng and Xen Orchestra. It's a great example of how the ecosystem keeps growing through shared knowledge and real-world use cases.

Vates is joining the Eclipse Foundation
As our involvement in the Xen Project within the Linux Foundation continues to grow, we’re also expanding our commitment to open-source collaboration by joining the Eclipse Foundation. This marks another step forward in reinforcing our long-term vision: building reliable, transparent, and community-driven infrastructure software through active participation in key open-source ecosystems.

Our stack inside the Italian Cyber Command
Our collaboration with the Italian Cyber Command continues to move forward. What began as a strategic proof of concept has now been extended, reinforcing the role of Vates VMS in strengthening European technological sovereignty.

Phew. And now we can talk about our monthly release!
Many many many things on the menu. Let's discover all of that together!
💾 Backup
While no major production features dropped this month, the backup team has been hard at work behind the scenes — preparing for the “post-2 TiB” era in XCP-ng and laying the groundwork for many improvements to come.
A new generic code to prepare the future
A big change is coming!
As we prepare to add qcow2 support for backups, we took the opportunity to redesign major parts of the backup engine. The result? A much more flexible and abstracted system that can better handle various scenarios like V2V, qcow2, VHD, and more.
We're also moving from traditional streams to Node generators, adding backup throttling, and laying the groundwork for future improvements.
It's not production-ready yet, but that’s where you come in! If you're working from sources, you can test it by switching to the branch: feat_generator_backups
. Bug reports and feedback are more than welcome!
To provide some feedback, we created a dedicated thread in our forums:

Improved replications
Replication just got a lot more robust. The new logic can handle more variations in the source VM: add or remove disks, change their order, it will just work. We’ve fixed several edge cases that previously caused issues, making replication much more reliable across the board.
Better BackBlaze compatibility
Our S3 backup system is built on the official AWS SDK for Node.js — which is why AWS S3 has always been our primary supported target. However, recent updates to the SDK introduced additional headers that broke compatibility with some S3-compatible providers, such as Backblaze B2. (To be fair, not all providers were affected — some simply ignored the extra headers.)
Backblaze addressed the issue in their documentation.
🥝 Core UI
A quick reminder: Core UI is our brand-new UI foundation, powering both XO Lite and the upcoming XO 6.
New progress bar component
We’ve rolled out the CircleProgressBar
component to the interface. It’s a customizable, circular progress bar that makes tracking progress smoother and more engaging. You can use it for things like loading states or tracking tasks such as migrations and backups.
It’s easy to drop into your interface and adds a cleaner, more dynamic way to show progress.

Improved pagination mechanism
We’ve enhanced the pagination system. This improvement is fully transparent, meaning there are no visible changes, but the system now loads more efficiently. It makes navigating large sets of data faster and smoother, so you can jump between pages without the annoying delays. The page number is now available directly as a query string in the URL.
🔭 XO Lite
By the way, all of our XO Lite releases are synced with the monthly XO release!
VM creation
XO 6 and XO Lite now make creating virtual machines a breeze. You just choose a template and configure the basics.
This release is ideal for users who need a simple method of managing VMs.


VM network tab and VIFs table
We've introduced a table list for VIFs (Virtual Interfaces) in the VM Network tab. You can now comfortably view and manage the network interfaces attached to your VMs. It displays all the vital information, such as configuration and status, directly within the tab.
There is a side panel as well for quick access to additional information.


🛰️ XO 6
You can already enjoy XO 6 by adding /v6
at the end of your XOA URL. As we already seen VM creation working for both XO 6 and XO Lite, we'll talk about new view in XO 6 in here.
Pool network view side panel
We've added a side panel to the pool network view. This gives you a more streamlined experience for your network settings management and easy access to important information. Now, when you look at network configurations of a pool, you're given more information upfront, and you can make changes without having to bounce back and forth between pages.


Host network view side panel
We've included a side panel within the host network view. As in the view for pool networks, this panel allows you to quickly absorb essential network information without hassle.
It's a small update, but it makes it so much easier to work with host networks and gain an overview.


Virtual interface side panel
It's now easier to examine a VM's network information with a new side panel in the Network tab. Just click on a network interface to see details like MAC address, connected network, and traffic statistics—without switching out of the main view.


Host dashboard
We've included a host dashboard that provides you with a clear and easy-to-grasp view of your host health and performance. You can easily view important statistics such as CPU, memory, and storage, so it's even easier to keep an eye on your host's status.


💠 XOSTOR
XOSTOR continues to evolve as our HCI (Hyperconverged Infrastructure) solution, becoming more stable, and now also easier to use and update!
RPU support with XOSTOR
Rolling pool updates (RPU) now manage pools that use XOSTOR. If there is no Linstor Storage Repository (SR), the RPU continues as usual. If there is a Linstor SR, the update process includes extra steps to make it compatible before performing the standard rolling update.
This update keeps your XOSTOR pools running smoothly and in sync throughout the update process.
For a better description of the workings of rolling pool updates, see the RPU and XOSTOR chapters of the XCP-ng documentation.
📡 REST API
We now have two driving forces behind the evolution of our REST API: the upcoming XO 6 and a growing number of users requesting more features.
And guess what? We’ve delivered — with new capabilities already available and more on the way!
Migrating endpoints to Swagger
We've done some solid work in simplifying and making our REST API more logical, by moving several get
and getId
endpoints, along with some actions, to Swagger. This translates to more consistency, easier organization, and a smoother overall experience.
A lot of this update involved getting our API to adhere to a more consistent structure and fully utilizing the standardized format of Swagger/Open API. We've updated a number of controllers to accommodate this new format, including:
- Servers (
getServers
andgetServer
) - VM templates (
getVmTemplates
andgetVmTemplate
) - VM snapshots (
getVmSnapshots
andgetVmSnapsho
) - VM controllers (
getVmControllers
andgetVmController
) - VM operations (
vm.start
) - VIFs
- VDIs
- VDI snapshots
- VBDs
- SRs
- Hosts (
getHosts
,getHost
, andgetHostStats
)
These endpoints are now properly organized in Swagger, which improves integration with OpenAPI-compatible tools as well as making API interaction more intuitive.
On top of relocating the endpoints, we also changed type definitions to better reflect what XAPI actually returns. This prevents inconsistencies, particularly for VM templates, snapshots, and controllers. We also added explicit controllers for VM templates and snapshots to retain more of a logical structure.
This opens the door for a more consistent API experience with better discoverability and easier maintainability in the future.





☸️ DevOps Tools
There are plenty of exciting things in the pipeline — and you can expect even more updates next month. Stay tuned!
Pulumi provider published
The Xen Orchestra provider for #Pulumi is now live on the Pulumi Registry (alongside AWS, Azure, and others!) Describe and deploy your infrastructure on Xen Orchestra using Python, TypeScript, Go, C#, or even YAML.

A brand new PowerShell module
The PowerShell module for Xen Orchestra allows administrators to interact with their XO infrastructure via PowerShell. It provides cmdlets to manage VMs, VDIs, snapshots, and servers, including features for exporting/importing VDIs, creating snapshots, starting/stopping VMs, and monitoring tasks.

This first alpha version covers essential operations, enabling automation of common workflows directly from PowerShell scripts.
You can find the repository here:
Stability upgrade for XO Terraform Provider
The Terraform Provider for Xen Orchestra v0.31.1 brings significant improvements in reliability and stability. We have reimplemented the core client to use our own xenorchestra-go-sdk
, for enhanced maintainability and consistency of behavior.
This version fixes critical issues, such as VM creation with blocked operations, and resolves a bug where cloud config VDIs were being treated incorrectly for non-running VMs. We've also improved protection against unintended VM deletion, security dependencies, and enhanced documentation with better examples.
These enhancements make the provider better for production use while maintaining backward compatibility.

🐦 VMware to Vates (V2V)
Our continued work to make VMware migration to Vates easier than ever continues to pay off. From tooling to automation, we're doing everything we can to eliminate friction and enable users to migrate with ease.
Better import management
We've solved an issue where an Assertion error was raised while importing delta snapshots from ESXi versions prior to 7.5. The problem was related to disk sizes not being correctly aligned on import. Xen Orchestra is now more tolerant of such cases, and imports are less likely to fail. This results in more reliable V2V migrations, particularly with older ESXi setups.
🛡️ Air gap features
As our customer list expands to more strategic and security-conscious organizations, we're further developing our air gap functionality.
Fully-offline XOA updates
We just reached the first beta milestone of a new feature: fully-offline updates of Xen Orchestra Appliance (XOA) using a simple script. A massive step, paving the way for a future where even support license management can be done fully offline.
🆕 Misc
Even with all these new features, we haven’t forgotten the existing UI — it continues to get lots of polish and improvements. Yep, this release is a big one. And we’re just getting started!
Health view: display snapshots older than 30 days
Snapshots older than 30 days are now displayed in the health view (navigate to Dashboard → Health), for a better overview of your storage usage.
This feature was created in response to user input. It especially targets users who yearned for an easier method of handling old snapshots that might be occupying space unnecessarily.
Now you can easily find and deal with these snapshots in order to keep your system structured and your storage even more efficient, without performing lengthy searches:

Self-service users can now attach disks to their VMs
Users were able to detach disks from their VMs but not attach them before—an annoying restriction. That's changed! If your users have suitable ACLs on an SR, they'll now be able to attach VDIs running on that SR to their VMs.
While we normally recommend keeping self-service and ACLs separate, this can be a handy workaround if you are dedicating an SR to your users and want to give them more freedom while staying within the self-service system.

New XAPI platform flag for nested virtualization
Starting with XCP-ng 8.3, Xen Orchestra now uses platform:nested-virt
instead of platform:exp-nested-hvm
for nested virtualization. This update follows a XAPI fix and ensures everything works smoothly in the future.
You'll find the setting on Advanced page of the VM. If you're running XCP-ng 8.3 or later, XO will automatically read and write the new flag.
NetBox v4.2.x now supported
Xen Orchestra is now completely compatible with NetBox v4.2.x, so you can upgrade without any issues. This release offers better compatibility, so NetBox is easier to integrate into your workflow without unexpected problems. If you've been waiting on an upgrade, you can now do so with confidence.
Performance notifications are now less repetitive
We've fixed a bug in the perf-alert
plugin that was causing it to send duplicate performance alert messages for the same problem even if there was no new event.
This is a user feedback-driven feature where some environments were getting too many notifications—namely database-intensive VMs that will use most of their allocated memory by design.
With this fix, alerts will be fired only when there's an update that's pertinent, reducing noise and making alerts more actionable.
ACL setup when creating VMs
Creating VMs is now more convenient for administrators, with the option to assign Access Control Lists (ACLs) directly within the Advanced tab. This allows for easier setting of user or group permissions on new VMs while creating them.


Improved translations
XO 6 and XO Lite translations are improved. More accurate and improved translations enable easier, intuitive use of the interface with less misunderstanding, especially for non-English users.
Languages which have been updated this month (meaning new words translated or improved): Swedish, Spanish, Czech, Persian and German. Russian and Ukrainian have been added but not finished yet.

If you'd like to help translate Xen Orchestra or fix existing translations, feel free to contribute here.
Thank you to the community for the contributions! The list of contributors can be found in here:
And thanks to Weblate for this fantastic tool!
If you want to discover more about Weblate, take a look on their website.