Postgres

Scope: Namespaced
Version: v1alpha1

Postgres is the Schema for the postgres API
  • apiVersion
    string
    APIVersion 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
  • kind
    string
    Kind 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
    object
  • spec
    object
    PostgresSpec defines the desired state of Postgres
    • spec.configuration
      object
      Configuration parameters of PostgreSql
    • spec.instance
      object
      Resources requirements of every generated Pod. Please refer to https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ for more information.
      • spec.instance.cpu
        object
        • spec.instance.cpu.coreFraction
          integer
          CoreFraction is the multiplier for requests of the cores limits

          Default: 10

          Example:

          coreFraction: 50
          
        • spec.instance.cpu.cores
          integer

          Default: 1

      • spec.instance.memory
        object
        • spec.instance.memory.size
          string

          Default: 256Mi

          Example:

          size: 1Gi
          
      • spec.instance.persistentVolumeClaim
        object
        • spec.instance.persistentVolumeClaim.size
          string

          Default: 1Gi

          Example:

          size: 1Gi
          
        • spec.instance.persistentVolumeClaim.storageClassName
          string
          Name of storage class that uses in Kubernetes

          Example:

          storageClassName: local-path
          
    • spec.instances
      integer
      Number of instances required in the cluster

      Default: 1

    • spec.postgresClassName
      string
      Name of PostgresClass Kind, that has to be specified for settings validation

      Default: default

      Example:

      postgresClassName: minimal
      
    • spec.postgresVersion
      object
      Postgres version specification
      • spec.postgresVersion.imageOSCodename
        string

        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
        
      • spec.postgresVersion.imageType
        string

        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.version
        string
        Specifies the version of PostgreSQL to be used. Available versions: 16.8, 17.3

        Example:

        version: "17.3"
        

PostgresClass

Scope: Cluster
Version: v1alpha1

PostgresClass is the Schema for the postgresclasses API
  • apiVersion
    string
    APIVersion 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
  • kind
    string
    Kind 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
    object
  • spec
    object
    PostgresClassSpec defines the desired state of PostgresClass
    • spec.configuration
      object
      not implemented yet
    • spec.sizingPolicies
      object
      Policy of the resource sizing
      • spec.sizingPolicies.coreFraction
        integer
        CoreFraction is the multiplier for requests of the cores limits

        Allowed values: 1 <= X <= 100

      • spec.sizingPolicies.cores
        object
        Cores structure
        • spec.sizingPolicies.cores.max
          integer
          Higher limit for Cores setting

          Example:

          max: 6
          
        • spec.sizingPolicies.cores.min
          integer
          Lower limit for Cores setting

          Example:

          min: 1
          
      • spec.sizingPolicies.memory
        object
        Memory structure
        • spec.sizingPolicies.memory.max
          string
          Higher limit for Memory setting

          Example:

          max: 5Gi
          
        • spec.sizingPolicies.memory.min
          string
          Lower limit for Memory setting

          Example:

          min: 128Mi
          
        • spec.sizingPolicies.memory.step
          string
          Divider for Memory setting, it must be divisible without remainder

          Example:

          step: 100Mi
          
    • spec.unsafeConfiguration
      object
      not implemented yet
    • spec.userAllowedConfiguration
      array of strings
      Array of the PostgresSql configurations that allowed to be changed by user

PostgresDatabase

Scope: Namespaced
Version: v1alpha1

PostgresDatabase is the Schema for the postgresdatabases API

PostgresUser

Scope: Namespaced
Version: v1alpha1

PostgresUser is the Schema for the postgresusers API
  • apiVersion
    string
    APIVersion 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
  • kind
    string
    Kind 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
    object
  • spec
    object
    PostgresUserSpec defines the desired state of PostgresUser
    • spec.cluster
      object
      The 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
        string
    • spec.comment
      string
      Comment string that will be provided into database as a description

      Example:

      comment: user of the application
      
    • spec.groups
      array of strings
      List 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.login
      boolean
      Enable or disable login option for the user

      Default: true

      Example:

      login: true
      
    • spec.name
      string
      Name of the postgresql role Secret will be created in namespace with password and connection string

      Example:

      name: myuser