Ephemeral environments, unlike traditional persistent staging or production environments, are created on-demand and are intended to be short-lived, existing only as long as they are needed. Some example use cases for ephemeral environments include:
- Individual developer environments
- Feature branch environments
- Pull request environments
- Testing environments
- Debugging / hotfix environments
- Release candidate environments
- Staging environments
In addition to their ephemeral nature, they are also provide isolation from other ephemeral development and test environments, making them a perfect companion to IDPs.
Uffizzi currently supports three types of ephemeral environments: virtual clusters, dev clusters, and compose environments.
Virtual Clusters are Kubernetes-based environments built from a Kubernetes specification—typically Helm Charts (opens in a new tab), kustomizations (opens in a new tab), or standard manifests applied by kubectl (opens in a new tab). Virtual clusters are fully functional Kubernetes clusters that run in isolation on top of a host cluster. Once you've created these clusters with the Uffizzi CLI, Dashboard or from your CI pipeline, you can use standard Kubernetes tools like
helm to manage them and their configurations.
Dev Clusters are virtual clusters intended to be used for interactive cloud-based development on Kubernetes. By shifting the compute from your local machine to a remote server environment, Uffizzi dev environments great for resource-intensive applications or for standardizing your development configuration for every member of your team.