Incus Cluster results in massive performance degradation resulting in incus VM Crashes

I created an incus cluster for testing with two nodes this weekend. i did this by converting a standalone node running a half dozen containers to a cluster. Then I installed incus on a new machine and joined it to the cluster. I was able to examine and add containers from either cluster member and everything worked.

However, when I did an “incus console” for the GUI of a VM it was a bit laggy as compared with how fast the same operation was as a standalone node. The other thing I noticed was that when I had a “console” (virt-viewer) and I tried to install any program from the CLI in a terminal, the incus VM would reboot immediately EVERY time.

I created more than one incus VM to test this behavior. It happened on an Ubuntu 22.04 Desktop and on an Ubuntu 24.04 desktop incus vm.

I removed the second cluster member leaving only the original node as a single member cluster. The problem still exists. Is there a way to convert the single node cluster member back to a standalone node again? As a single node (non-cluster) performance was fast and programs on VM’s could install just fine.

1 Like

Did you try restarting Incus or the server in question?

In general Incus always uses the cluster logic even in single-node operations, so it’s very unlikely that the clustering is the source of the issue here.

Very useful! So, clustering doesn’t really add to the overhead is what you are saying? That tells me that a single node cluster and a standalone node are the same in terms of performance. I am thinking that I have an underlying server issue here then. Thx again.

Yep, the only difference is that when clustering is enabled, a specific IP address has to be associated with the system so when other servers then join in they know how to reach it, but that’s the only difference.

Excellent. So, I had issues with the clustering at first because the dns name I was trying to use was not being translated despite the fact the I could look up the address from the CLI on the Incus server. Ultimately, I put the address in the host table and everything worked perfectly.

By the way, is there an incus CLI command to determine if an incus server is standalone or a cluster member?

Hello Scott,

I bieleve running “incus cluster list” on a non-clustered node, will return “Clustering is not enabled…” or something alike :slight_smile: