Maintenance Planning and Scheduling Considerations for Self-Hosted Spaces
Last updated: May 21, 2026
Overview
This article outlines recommended maintenance considerations for operators running self-hosted Upbound Spaces deployments. It covers upgrade cadence, backups, certificate management, and operational health checks.
Upgrade Cadence
Keeping Spaces and UXP up to date is the most important maintenance activity. Falling behind on versions increases the risk of running into known issues and makes future upgrades harder.
Spaces: Review release notes with each new release. Plan to upgrade within one to two minor versions of the latest release.
UXP / Crossplane: Upgrade UXP in line with your Spaces upgrade. Each Spaces version ships with a tested UXP version — refer to the compatibility matrix in the release notes.
Providers: Review provider versions regularly. Stale providers are a common source of reconciliation issues and missing features.
Backups and Retention
Configure SharedBackupConfig as well as SpaceBackup to back up control plane state on a regular schedule (e.g. daily).
Define a retention policy that meets your recovery point objectives — avoid indefinite retention as it will accumulate storage costs.
Periodically validate that backups are restorable — a backup that has never been tested is an untested assumption.
Certificate Rotation
Spaces uses cert-manager to manage certificates automatically. By default:
spaces-ca has a 1-year duration
spaces-controller-webhook has a 90-day duration
No manual intervention is required under normal conditions. However:
If you are using a custom CA (e.g. an external PKI or Vault), ensure your CA rotation process also triggers renewal of Spaces certificates that reference it
Monitor certificate expiry via your existing observability tooling
MXP Namespace and Resource Allocation
Periodically review resource requests and limits for control plane pods, particularly as you scale the number of control planes
Ensure your cluster has sufficient node capacity headroom for new control plane provisioning
Review PodDisruptionBudget settings if you perform regular node pool maintenance or upgrades
Control Plane Health
Regularly check that all control planes are in Ready state:
kubectl get controlplane -AInvestigate control planes that have been in a non-ready state for extended periods — this can indicate provisioning failures or resource pressure
Review provider health inside control planes periodically, especially after upgrades
Kubernetes Maintenance
Coordinate host cluster node upgrades with a Spaces maintenance window — node recycling can temporarily impact control plane availability
Ensure the Kubernetes version in use is within the supported range for your Spaces version
Note: Specific upgrade interval recommendations should be confirmed with Upbound — reach out to support for guidance tailored to your environment.