This topic describes the fields available to configure HiberScale protections.
Top-level fields
| Field | Type | Required | Default | Format / Units | Description | Observable signals | Dependencies | 
| apiVersion | string | Yes | None | String | API version of the custom resource. For  | N/A | Must match Kompass API version installed in the cluster. | 
| kind | string | Yes | None | String | Object type. For HiberScale, this is always  | N/A | N/A | 
| metadata.name | string | Yes | None | String | Name of the  | 
 | Must be unique within the namespace. | 
| metadata.namespace | string | Yes | None | String | Namespace in which the  | kubectl  | Must match the namespace of the workload. | 
| spec | object | Yes | None | Object | Specification of workload reference, protection options, and resources. | N/A | N/A | 
spec.workloadReference
| Field | Type | Required | Default | Format / Units | Description | Observable signals | Dependencies | 
| apiVersion | string | Yes | None | String | API version of the workload (for example,  | N/A | Must correspond to an existing workload type in the cluster. | 
| kind | string | Yes | None | String | Workload type (for example,  | N/A | Must be a supported workload type. | 
| name | string | Yes | None | String | Name of the workload that HiberScale protects. | 
 | Must reference an existing workload in the same namespace. | 
spec.protection.spike
| Field | Type | Required | Default | Format / Units | Description | Observable signals | Dependencies | 
| active | boolean | No | false | true / false | Determines whether Kompass resumes hibernated nodes when Pods are unschedulable. | 
 | Requires hibernated node pool ( | 
| threshold | string | No | None | Percentage string (e.g., '10%') | Minimum percentage of Pods that must be unschedulable before Kompass resumes hibernated nodes. Ignored if  | When threshold is exceeded,  | Applies only if  | 
| strategy | string | No | manual | Enum: manual, default, conservative | Defines how Kompass manages the HPA minReplicas. 
 | HPA changes visible with  | Requires an HPA on the workload. If no HPA exists, strategy must remain manual. | 
spec.protection.spot
| Field | Type | Required | Default | Format / Units | Description | Observable signals | Dependencies | 
| active | boolean | No | false | true / false | Determines whether Kompass resumes hibernated nodes in response to Spot interruption notices. | When Spot interruptions occur,  | Requires provider Spot interruption support (e.g., AWS two-minute warning). Requires nodes tagged with  | 
spec.resources
| Field | Type | Required | Default | Format / Units | Description | Observable signals | Dependencies | 
| cpu | string | No | None | Kubernetes CPU quantity (for example,  | Amount of vCPU allocated to hibernated nodes that protect the workload. | 
 | Must match supported instance sizing for the nodepool. | 
| memory | string | No | None | Kubernetes memory quantity (for example,  | Amount of memory allocated to hibernated nodes that protect the workload. | 
 | Must match supported instance sizing for the nodepool. |