Quick Start#
Get the Hibernation Operator running and put your first workload on a sleep schedule in a few minutes.
Prerequisites#
- A Kubernetes cluster (v1.24+) with
kubectlaccess - Helm CLI
- (Optional) cert-manager — required only if you enable the validating webhooks
For OpenShift OperatorHub and detailed options, see Installation.
1. Install the operator#
helm install hibernation-operator \
oci://ghcr.io/stakater/public/charts/hibernation-operator \
--namespace hibernation-operator-system \
--create-namespace
Wait for the pods to become ready:
kubectl get pods -n hibernation-operator-system --watch
2. Create your first schedule#
Create a namespace-scoped ResourceSupervisor that scales the workloads in a
namespace down at night and back up in the morning (UTC):
# my-first-schedule.yaml
apiVersion: hibernation.stakater.com/v1beta1
kind: ResourceSupervisor
metadata:
name: nightly-hibernation
namespace: my-app-staging # must match the target namespace
spec:
schedule:
sleepSchedule: "0 20 * * *" # sleep daily at 20:00 UTC
wakeSchedule: "0 8 * * *" # wake daily at 08:00 UTC
Apply it:
kubectl apply -f my-first-schedule.yaml
3. Verify#
kubectl get resourcesupervisor nightly-hibernation -n my-app-staging \
-o jsonpath='{.status.currentStatus}'
The currentStatus field reports running, sleeping, or error.
Next steps#
- Create a ResourceSupervisor — full namespace-scoped guide
- Create a ClusterResourceSupervisor — cluster-wide, label, and ArgoCD targeting
- Concepts › Architecture — how it works
- Reference › API Reference — every field