Klio API reference v0.0.12
Packages
klio.enterprisedb.io/v1alpha1
Package v1alpha1 contains API Schema definitions for the klio v1alpha1 API group.
Resource Types
Cache
Cache defines the configuration for the cache directory.
Appears in:
| Field | Description | Required | Default | Validation |
|---|---|---|---|---|
pvcTemplate PersistentVolumeClaimSpec | True |
Data
Data defines the configuration for the data directory.
Appears in:
| Field | Description | Required | Default | Validation |
|---|---|---|---|---|
pvcTemplate PersistentVolumeClaimSpec | Template to be used to generate the Persistent Volume Claim needed for the data folder, containing base backups and WAL files. | True |
ImageConfiguration
ImageConfiguration contains the information needed to download the Klio image.
Appears in:
| Field | Description | Required | Default | Validation |
|---|---|---|---|---|
image string | Image is the image to be used for the Klio server | True | ||
imagePullPolicy PullPolicy | ImagePullPolicy defines the policy for pulling the image | IfNotPresent | Optional: {} | |
imagePullSecrets LocalObjectReference array | ImagePullSecrets is an optional list of references to secrets in the same namespace to use for pulling any of the images | Optional: {} |
PluginConfiguration
PluginConfiguration is the Schema for the client configuration API.
| Field | Description | Required | Default | Validation |
|---|---|---|---|---|
apiVersion string | klio.enterprisedb.io/v1alpha1 | True | ||
kind string | PluginConfiguration | True | ||
metadata ObjectMeta | Refer to Kubernetes API documentation for fields of metadata. | True | ||
spec PluginConfigurationSpec | True | |||
status PluginConfigurationStatus | Optional: {} |
PluginConfigurationSpec
PluginConfigurationSpec defines the desired state of client configuration.
Appears in:
| Field | Description | Required | Default | Validation |
|---|---|---|---|---|
serverAddress string | ServerAddress is the address of the Klio server | True | MinLength: 1 Required: {} | |
tier1 Tier1PluginConfiguration | Tier1 is the Tier 1 configuration | Optional: {} | ||
tier2 Tier2PluginConfiguration | Tier2 is the Tier 2 configuration | Optional: {} | ||
clientSecretName string | ClientSecretName is the name of the secret containing the client credentials | True | MinLength: 1 Required: {} | |
serverSecretName string | ServerSecretName is the name of the secret containing the server TLS certificate | True | MinLength: 1 Required: {} | |
clusterName string | ClusterName is the name of the PostgreSQL cluster we are connecting to | Optional: {} | ||
pprof boolean | Pprof enables the pprof endpoint for performance profiling | Optional: {} | ||
mode ServerMode | Mode selects the operation mode of the plugin. | True | standard | Enum: [standard read-only] |
containers Container array | Containers allows defining a list of containers that will be merged with the Klio sidecar containers. This enables users to customize the sidecars with additional environment variables, volume mounts, resource limits, and other container settings without polluting the PostgreSQL container environment. Merge behavior: - Containers are matched by name (klio-plugin, klio-wal, klio-restore) - User customizations serve as the base - Klio required values (name, args, CONTAINER_NAME env var) always override user values - User-defined environment variables and volume mounts are preserved - Template defaults are applied only for fields not set by the user or Klio | MaxItems: 3 Optional: {} |
PluginConfigurationStatus
PluginConfigurationStatus defines the observed state of ClientConfig.
Appears in:
Queue
Queue defines the configuration for the directory hosting the task queue.
Appears in:
| Field | Description | Required | Default | Validation |
|---|---|---|---|---|
pvcTemplate PersistentVolumeClaimSpec | PersistentVolumeClaimTemplate is used to generate the configuration for the PVC hosting the work queue. | True |
RetentionPolicy
RetentionPolicy defines how many backups we should keep.
Appears in:
| Field | Description | Required | Default | Validation |
|---|---|---|---|---|
keepLatest integer | KeepLatest is the number of latest backups to keep optional | True | ||
keepAnnual integer | KeepAnnual is the number of annual backups to keep optional | True | ||
keepMonthly integer | KeepMonthly is the number of monthly backups to keep optional | True | ||
keepWeekly integer | KeepWeekly is the number of weekly backups to keep optional | True | ||
keepDaily integer | KeepDaily is the number of daily backups to keep optional | True | ||
keepHourly integer | KeepHourly is the number of hourly backups to keep optional | True |
S3Configuration
S3Configuration is the configuration to a S3 defined tier 2.
Appears in:
| Field | Description | Required | Default | Validation |
|---|---|---|---|---|
bucketName string | BucketName is the name of the bucket | True | ||
prefix string | Prefix is the prefix to be used for the stored files | Optional: {} | ||
endpoint string | Endpoint is the endpoint to be used | Optional: {} | ||
region string | Region is the region to be used | Optional: {} | ||
accessKeyId SecretKeySelector | The S3 access key ID | Optional: {} | ||
secretAccessKey SecretKeySelector | The S3 access key | Optional: {} | ||
sessionToken SecretKeySelector | The S3 session token | Optional: {} | ||
customCaBundle SecretKeySelector | A pointer to a custom CA bundle | Optional: {} |
Server
Server is the Schema for the servers API.
| Field | Description | Required | Default | Validation |
|---|---|---|---|---|
apiVersion string | klio.enterprisedb.io/v1alpha1 | True | ||
kind string | Server | True | ||
metadata ObjectMeta | Refer to Kubernetes API documentation for fields of metadata. | True | ||
spec ServerSpec | True | |||
status ServerStatus | Optional: {} |
ServerMode
Underlying type: string
ServerMode defines the operation mode of the Server.
Appears in:
| Field | Description |
|---|---|
standard | ModeStandard corresponds to server with standard read/write permissions. |
read-only | ModeReadOnly corresponds to a server with read-only permissions. |
ServerSpec
ServerSpec defines the desired state of Server.
Appears in:
| Field | Description | Required | Default | Validation |
|---|---|---|---|---|
image string | Image is the image to be used for the Klio server | True | ||
imagePullPolicy PullPolicy | ImagePullPolicy defines the policy for pulling the image | IfNotPresent | Optional: {} | |
imagePullSecrets LocalObjectReference array | ImagePullSecrets is an optional list of references to secrets in the same namespace to use for pulling any of the images | Optional: {} | ||
tlsSecretName string | TLSSecretName is the name of the Kubernetes secret containing the server-side certificate to be used for the Klio server. | True | ||
caSecretName string | ClientCASecretName is the name of the Kubernetes secret containing the CA certificate to be used by the Klio server to validate the users. | True | ||
mode ServerMode | Mode selects the operation mode of the server. | True | standard | Enum: [standard read-only] |
tier1 Tier1Configuration | Tier1 is the Tier 1 configuration | True | ||
tier2 Tier2Configuration | Tier2 is the Tier 2 configuration | True | ||
queue Queue | Queue is the configuration of the PVC that should host the task queue. | Optional: {} | ||
template PodTemplateSpec | Template to override the default StatefulSet of the Klio server. WARNING: Modifying this template may break the server functionality if not done carefully. This field is primarily intended for advanced configuration such as telemetry setup. Use at your own risk and ensure thorough testing before applying changes. | Optional: {} |
ServerStatus
ServerStatus defines the observed state of Server.
Appears in:
TLSConfiguration
TLSConfiguration contains the information needed to configure the PKI infrastructure of the Klio server.
Appears in:
| Field | Description | Required | Default | Validation |
|---|---|---|---|---|
tlsSecretName string | TLSSecretName is the name of the Kubernetes secret containing the server-side certificate to be used for the Klio server. | True | ||
caSecretName string | ClientCASecretName is the name of the Kubernetes secret containing the CA certificate to be used by the Klio server to validate the users. | True |
Tier1Configuration
Tier1Configuration is the tier 1 configuration.
Appears in:
| Field | Description | Required | Default | Validation |
|---|---|---|---|---|
cache Cache | Cache is the configuration of the PVC that should be used for the cache | True | ||
data Data | Data is the configuration of the PVC that should be used for the base backups | True | ||
encryptionKey SecretKeySelector | EncryptionKey is a reference to a secret containing the Klio password | True |
Tier1PluginConfiguration
Tier1PluginConfiguration configures tier1 backup and recovery settings.
Appears in:
| Field | Description | Required | Default | Validation |
|---|---|---|---|---|
retention RetentionPolicy | RetentionPolicy defines how many backups we should keep | Optional: {} |
Tier2Configuration
Tier2Configuration is the tier 2 configuration.
Appears in:
| Field | Description | Required | Default | Validation |
|---|---|---|---|---|
cache Cache | Cache is the configuration of the PVC that should be used for the cache | True | ||
s3 S3Configuration | S3 contains the configuration parameters for an S3-based tier 2 | True | ||
encryptionKey SecretKeySelector | EncryptionKey is a reference to a secret containing the Klio password | True |
Tier2PluginConfiguration
Tier2PluginConfiguration configures tier2 backup and recovery settings.
Appears in:
| Field | Description | Required | Default | Validation |
|---|---|---|---|---|
enableBackup boolean | EnableBackup controls whether WAL and base backups should be stored in tier2 | Optional: {} | ||
enableRecovery boolean | EnableRecovery controls whether tier2 should be included in the recovery source list | Optional: {} | ||
retention RetentionPolicy | RetentionPolicy defines how many backups we should keep | Optional: {} |