Postgres
Scope: Namespaced
Version: v1alpha1
-
apiVersionAPIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
-
kindKind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
-
metadata
-
specPostgresSpec defines the desired state of Postgres
-
spec.configurationConfiguration parameters of PostgreSql
-
spec.instanceResources requirements of every generated Pod. Please refer to https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ for more information.
-
spec.instance.cpu
-
spec.instance.cpu.coreFractionCoreFraction is the multiplier for requests of the cores limits
Default:
10
Example:
coreFraction: 50
-
spec.instance.cpu.cores
Default:
1
-
-
spec.instance.memory
-
spec.instance.memory.size
Default:
256Mi
Example:
size: 1Gi
-
-
spec.instance.persistentVolumeClaim
-
spec.instance.persistentVolumeClaim.size
Default:
1Gi
Example:
size: 1Gi
-
spec.instance.persistentVolumeClaim.storageClassNameName of storage class that uses in Kubernetes
Example:
storageClassName: local-path
-
-
-
spec.instancesNumber of instances required in the cluster
Default:
1
-
spec.postgresClassNameName of PostgresClass Kind, that has to be specified for settings validation
Default:
default
Example:
postgresClassName: minimal
-
spec.postgresVersionPostgres version specification
-
spec.postgresVersion.imageOSCodename
Determines the code name of the operating system used in the Docker image for PostgreSQL. The possible values are:
- bookworm: Image is based on the Debian 12 (
bookworm
) release.
Default:
bookworm
Example:
imageOSCodename: bookworm
- bookworm: Image is based on the Debian 12 (
-
spec.postgresVersion.imageType
Defines the type of Docker image for PostgreSQL. The possible values are:
- minimal: A lighter version of the image.
- standard: A standard image version, which included some PG extensions: pgaudit, pgvector, pg-failover-slots.
The default value is
standard
.
Default:
standard
Example:
imageType: standard
-
spec.postgresVersion.versionSpecifies the version of PostgreSQL to be used. Available versions: 16.8, 17.3
Example:
version: "17.3"
-
-
PostgresClass
Scope: Cluster
Version: v1alpha1
-
apiVersionAPIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
-
kindKind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
-
metadata
-
specPostgresClassSpec defines the desired state of PostgresClass
-
spec.configurationnot implemented yet
-
spec.sizingPoliciesPolicy of the resource sizing
-
spec.sizingPolicies.coreFractionCoreFraction is the multiplier for requests of the cores limits
Allowed values:
1 <= X <= 100
-
spec.sizingPolicies.coresCores structure
-
spec.sizingPolicies.cores.maxHigher limit for Cores setting
Example:
max: 6
-
spec.sizingPolicies.cores.minLower limit for Cores setting
Example:
min: 1
-
-
spec.sizingPolicies.memoryMemory structure
-
spec.sizingPolicies.memory.maxHigher limit for Memory setting
Example:
max: 5Gi
-
spec.sizingPolicies.memory.minLower limit for Memory setting
Example:
min: 128Mi
-
spec.sizingPolicies.memory.stepDivider for Memory setting, it must be divisible without remainder
Example:
step: 100Mi
-
-
-
spec.unsafeConfigurationnot implemented yet
-
spec.userAllowedConfigurationArray of the PostgresSql configurations that allowed to be changed by user
-
PostgresDatabase
Scope: Namespaced
Version: v1alpha1
-
apiVersionAPIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
-
kindKind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
-
metadata
-
specPostgresDatabaseSpec defines the desired state of PostgresDatabase
-
spec.clusterThe name of the PostgreSQL cluster hosting the user. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
Example:
name: small
-
spec.cluster.name
-
-
spec.nameThe name of the database to create inside PostgreSQL. This setting cannot be changed.
Example:
name: foo
-
spec.ownerMaps to the
OWNER
parameter ofCREATE DATABASE
. The role name of the user who owns the database inside PostgreSQL.Example:
owner: foo
-
PostgresUser
Scope: Namespaced
Version: v1alpha1
-
apiVersionAPIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
-
kindKind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
-
metadata
-
specPostgresUserSpec defines the desired state of PostgresUser
-
spec.clusterThe name of the PostgreSQL cluster hosting the user. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
Example:
name: small
-
spec.cluster.name
-
-
spec.commentComment string that will be provided into database as a description
Example:
comment: user of the application
-
spec.groupsList of one or more existing roles to which this role will be immediately added as a new member.
Example:
groups: - pg_monitor - pg_signal_backend
-
spec.loginEnable or disable login option for the user
Default:
true
Example:
login: true
-
spec.nameName of the postgresql role Secret will be created in namespace with password and connection string
Example:
name: myuser
-