Cockpit Release Notes
This log tracks updates, new features, and bug fixes added to the Cockpit dashboard.
Version 3.2.0 (September 2026)
Cockpit can now recover a whole site at its surviving partner, restart a failed host's VMs only after fencing it, and hold a migrated guest's disks in a folder of their own. Kubernetes clusters gain multiple worker pools and storage that actually comes up.
New Features:
- Two-site disaster recovery: A workload recovers at the surviving site under the identity it already had — its libvirt UUID travels with it, so the recovery plan finds the same VM rather than a copy of it. Site pairing takes an API access token ID and secret.
- Cluster HA that fences first: A failed host's VMs are restarted only after the source has been fenced, and the evidence of that fencing is recorded. Restarts keep the guest's own specification, map disks to VMs explicitly instead of matching filenames, and are placed through resource scheduling. The HA scheduler only acts on the control plane that holds leadership.
- A guest's disks in a folder of their own: A datastore can place a migrated guest's disks in a directory named after it, follow that download by its job — a file in a directory appears in no pool listing, so nothing else could report it finished — and delete it again where it actually landed.
- Forward the caller's certificate authority: A download the fleet relays carries the caller's own certificate authority through to the host, so a source with a private certificate needs nothing installed anywhere.
- Adopt existing cluster networks as distributed: Networks already present on the hosts can be taken over as distributed networks rather than rebuilt.
- Kubernetes node pools: Multiple worker pools, per-pool CPU configuration, labels and taints, a table view with add and remove, and prefill from wherever the wizard was launched.
- Per-node upgrade visibility: A cluster's Tasks tab shows each node's upgrade job and its logs.
- Interface type on migration mappings: A VM's network mapping can name a bridge or direct target, not only a virtual network.
Enhancements:
- Longhorn is configured by replica count, validated against the node pool size, instead of a datastore picker that could ask for more replicas than there were nodes.
- Node lists and cluster detail keep up with what is happening rather than needing a reload.
Fixes:
- Longhorn works. Node prerequisites are installed, the health check has a realistic window and no longer passes before storage is ready, there is a single default storage class, replicas stay off control-plane nodes, and replicas are evicted before a node is removed instead of being stranded by a timed-out eviction.
- A failed-over VM's inventory entry flips when the failover is confirmed, not when it is dispatched.
- A migration certificate that does not name the host's address is caught before the transfer, not during it.
- An explicit CPU topology is sent with
max_vcpus, so it actually applies. - Deleting a Kubernetes cluster no longer orphans VMs that were still being provisioned.
- An upgrade's progress is read from pod counts correctly rather than failed-first, and the control plane is upgraded properly.
- The NFS CSI tier reports its own installation failures instead of being assumed present, and its inputs no longer reach a shell.
- Empty lists are sent as JSON arrays rather than null, which used to crash the UI.
- More than one component can listen to the same channel, and a newly created object appears in the list without a reload.
Version 3.1.0 (August 2026)
Cockpit gains a scheduler that keeps a cluster balanced on its own, a wizard for moving VMs between hosts and datacenters, and a search box that finds anything in the inventory.
New Features:
- Distributed resource scheduling: Keep a cluster balanced with affinity and anti-affinity rules, recommendations you can review before applying, and host evacuation for maintenance. When the scheduler is not acting, it now says why instead of reporting the cluster as balanced.
- Migration wizard: Move a running or stopped VM to another host, with a compatibility check before it starts, a bandwidth cap, and the option to cancel while it runs. A migration that crosses a datacenter boundary is shown as such, and the storage rule for it is enforced.
- Search the whole inventory: One box in the header finds any VM, host, or cluster — including by the UUID from a log or a ticket — and opens each result wherever it lives.
- Rename a VM: Rename a stopped VM from the inventory. The action stays unavailable while the VM is running.
- Asynchronous failover: A failover returns straight away and its progress is polled, so a long recovery no longer ties up the console.
- Kubernetes node metrics: The node list shows vCPU, memory, and live CPU and memory usage, and cluster detail updates as it happens.
Enhancements:
- Tasks and events are attached to the object they concern, so a VM's own page shows what happened to it, and cluster-level Kubernetes tasks appear on the cluster page.
- A running template job can be cancelled, and a cancelled job is reported as finished instead of processing forever.
- Add a member node to a shared storage group across hosts, and see whether each node's kernel is in sync.
- The VM list shows each VM's host, operating system, and IP address.
- Exporting a VM list to CSV carries each VM's host, operating system, and IP address.
- The task and event lists can be filtered from each column's own header.
- Replication is configured in a dialog, with a note about the guest agent a quiesced copy needs.
Fixes:
- Cockpit no longer reports "Up to date" when an update is available.
- An unplanned failover could be routed to the wrong host, and a second failback cycle could send a VM back to a site already running it.
- Enrolling a VM in replication did not start its first baseline copy.
- A VM's total disk size counted CD-ROMs, read-only disks, and attached ISOs.
- Cloning a VM ignored the storage pool and full-clone options that had been asked for.
- Each host now shows its own backups rather than those of the host opened last.
Version 3.0.2 (August 2026)
Cockpit now drives disaster recovery across sites from one console: choose what is protected and where it goes, watch it replicate, and run the failover when you need it.
New Features:
- Disaster recovery across sites: Choose which VMs replicate to which site, follow their progress, and run a planned failover that shuts the source down cleanly, ships the final changes, and boots the VM at the recovery site.
- Reprotect: One action turns a recovered VM back into a protected source, replicating in the opposite direction.
- Replication settings on the VM: Set how often recovery points are taken and how long they are kept, choose which disks are included, request a quiesced copy, and pause or resume protection.
- Backup and restore over the oVirt-compatible API: Backup tools that speak oVirt can now run backups and restores against Awanio, and read a VM's console and network devices.
- Update from a direct download: Point Cockpit at a binary URL and its checksum when it cannot reach the update service.
Enhancements:
- Replication runs a limited number of transfers at a time, so protecting a large group does not saturate the link.
- Replication history records the bytes actually transferred.
Security:
- The oVirt-compatible API did not verify the credentials on incoming requests, and did not slow down repeated failed logins. Versions 3.0.0 and 3.0.1 are affected; upgrade to 3.0.2.
Fixes:
- A planned failover no longer risks running the same VM at both sites. Cockpit confirms the source is down before booting at the recovery site, and stops with a clear error rather than proceeding when it cannot.
- Cancelling a planned failover after the source had already stopped used to leave it down; it now rolls back and starts the source again.
- A VM could be enrolled in replication more than once.
- Replication status was read from the wrong layer of the response and could appear unavailable.
- An update check could fail to find the version that had been published.
Version 3.0.1 (July 2026)
Adds warm migration support for Cockpit-managed hosts.
New Features:
- Warm migration target: A Cockpit-managed host can now be the destination for a live, minimal-downtime migration of a running VM — the guest stays online during the transfer. Together with Condensa and Vapor, this brings running Proxmox VMs into Awanio.
Version 3.0.0 (July 2026)
A major release focused on fleet-scale automation and a hardened, fail-closed security posture. It adds Kubernetes cluster provisioning, automated load balancing and failover (DRS/HA), clustered shared storage, and one-click import from other virtualization platforms.
Breaking change — action required
This release fails closed: Cockpit will not start or authenticate without a configured signing secret, and every change now goes through default-deny permission checks. Set your JWT secret and review role assignments before upgrading.
New Features:
- Kubernetes Provisioner: Build and manage whole Kubernetes clusters from Cockpit. Nodes are placed with awareness of each host's spare capacity, scaled up or down safely (with automatic drain and cordon), and given either fixed (static) or automatic (DHCP) addresses. Cluster bootstrap now runs through the guest agent instead of SSH, and node VMs are protected from accidental deletion.
- Automatic Load Balancing & Failover (DRS/HA): Cockpit can keep VMs and their affinity rules balanced across hosts, honor per-VM placement overrides, and follow VMs as they move between hosts.
- Clustered Shared Storage (OCFS2): A guided Shared Group workflow sets up and operates an O2CB cluster — heartbeat modes, maintenance mode with safety pre-checks, and cross-host drift detection — so several hosts can safely share the same datastore. Large datastore builds now run in the background with progress in the Tasks panel.
- Import from Other Platforms: Warm and cold disk imports (VDDK) are surfaced in the Tasks panel, with Veeam and Vinchin integration through the oVirt compatibility shim.
- Differential Backups: Choose a parent backup to build space-efficient differential chains, with storage-pool targeting.
- Signed In-Place Updates: Cockpit can update its own binary from a signed release channel.
Enhancements:
- Consistent VM deletion: Deleting a VM from the inventory tree now behaves exactly like the VM tab — it powers off first when needed, optionally removes disks, and actually deletes the VM on the host.
- Friendlier error handling: Blocking browser pop-ups have been replaced with inline messages and non-blocking toast notifications throughout inventory management.
- Identity-preserving migration: When a VM moves hosts, its inventory record (and the permissions attached to it) is relocated in place instead of deleted and recreated. "Undefine source" is the default, with a clear risk acknowledgement.
- Safer VM specs: CPU topology is validated against the maximum vCPU count, and disk sizing is available when cloning.
- Lighter footprint: Per-VM metric updates are scoped to reduce load, and host heartbeats retry faster to avoid lease expiry.
Security:
- Fail-closed authentication with algorithm pinning, authenticated console sessions, and CORS/path hardening.
- Default-deny permissions that correctly honor object-scoped (inherited) admin grants.
- Encrypted control channel between Cockpit and hosts with certificate pinning, plus rate-limiting on login endpoints.
- Password policy enforcement and self-service password change.
- Kubernetes join-token seed files are removed from storage after bootstrap.
Bug Fixes:
- Permission checks now honor object-scoped admin grants.
- Cloud-init seed removal is reboot-safe, and Kubernetes nodes boot reliably on physical hardware.
- Kubernetes cluster view shows human-readable network names.
- OCFS2 cluster reuse retries robustly with an extended timeout.
- Datastore wizard preserves storage fields and filters LUN eligibility correctly.
- VM backups resolve the correct disk identity, with longer timeouts for large jobs.
Version 1.2.0 (May 2026)
New Features:
- Shared Storage Support (Clustered Storage): You can now connect your servers to shared network hard drives (using NFS, iSCSI, or Fibre Channel). This allows multiple physical servers to read and write to the same storage space.
- Shared File Systems (OCFS2 & o2cb): Added tools to configure OCFS2 (Oracle Cluster File System). This acts like a shared Google Doc, allowing multiple servers to edit files on the same hard drive at the same time without overwriting each other's data.
- Smart Migration Checks: Cockpit now automatically detects if a virtual machine's disk is on a shared network drive. If it is, Cockpit speeds up the live migration process by only copying the VM's active memory, skipping the long disk-copy phase.
Bug Fixes:
- Fixed intermittent security certificate errors that occurred when migrating VMs between servers.
- Optimized the background host claimant system to reduce database load.
Version 1.1.0 (March 2026)
New Features:
- Single Sign-On (SSO): Added support for logging into Cockpit using your company's central account systems, including Active Directory (AD), LDAP, and SAML 2.0 (like Okta or Azure AD). You can also configure passwordless login for Windows computers (Kerberos).
- High Availability Database: Validated that Cockpit runs smoothly with Patroni PostgreSQL databases. This ensures that if your main database server crashes, a backup database takes over instantly without interrupting Cockpit.
- Centralized Log Archiving: Added support for streaming Cockpit's audit logs to external security monitoring systems (using the standard RFC 5424 Syslog format).
Bug Fixes:
- Fixed a memory leak in the WebSocket Event Hub that occurred when users closed their browser tabs quickly.