add database management
This commit is contained in:
@@ -1,6 +1,6 @@
|
|||||||
apiVersion: v2
|
apiVersion: v2
|
||||||
name: postgres-cluster
|
name: postgres-cluster
|
||||||
version: 6.18.0
|
version: 6.19.0
|
||||||
description: Cloudnative-pg Cluster
|
description: Cloudnative-pg Cluster
|
||||||
keywords:
|
keywords:
|
||||||
- database
|
- database
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
# postgres-cluster
|
# postgres-cluster
|
||||||
|
|
||||||
 
|
 
|
||||||
|
|
||||||
Cloudnative-pg Cluster
|
Cloudnative-pg Cluster
|
||||||
|
|
||||||
@@ -58,6 +58,7 @@ Cloudnative-pg Cluster
|
|||||||
| cluster.serviceAccountTemplate | object | `{}` | Configure the metadata of the generated service account |
|
| cluster.serviceAccountTemplate | object | `{}` | Configure the metadata of the generated service account |
|
||||||
| cluster.services | object | `{}` | Customization of service definitions. Please refer to https://cloudnative-pg.io/documentation/current/service_management/ |
|
| cluster.services | object | `{}` | Customization of service definitions. Please refer to https://cloudnative-pg.io/documentation/current/service_management/ |
|
||||||
| cluster.storage | object | `{"size":"10Gi","storageClass":""}` | Default storage size |
|
| cluster.storage | object | `{"size":"10Gi","storageClass":""}` | Default storage size |
|
||||||
|
| databases | list | `[]` | Database management configuration |
|
||||||
| mode | string | `"standalone"` | Cluster mode of operation. Available modes: * `standalone` - Default mode. Creates new or updates an existing CNPG cluster. * `recovery` - Same as standalone but creates a cluster from a backup, object store or via pg_basebackup |
|
| mode | string | `"standalone"` | Cluster mode of operation. Available modes: * `standalone` - Default mode. Creates new or updates an existing CNPG cluster. * `recovery` - Same as standalone but creates a cluster from a backup, object store or via pg_basebackup |
|
||||||
| nameOverride | string | `""` | Override the name of the cluster |
|
| nameOverride | string | `""` | Override the name of the cluster |
|
||||||
| namespaceOverride | string | `""` | Override the namespace of the chart |
|
| namespaceOverride | string | `""` | Override the namespace of the chart |
|
||||||
|
|||||||
76
charts/postgres-cluster/templates/databases.yaml
Normal file
76
charts/postgres-cluster/templates/databases.yaml
Normal file
@@ -0,0 +1,76 @@
|
|||||||
|
{{- range .Values.databases }}
|
||||||
|
---
|
||||||
|
apiVersion: postgresql.cnpg.io/v1
|
||||||
|
kind: Database
|
||||||
|
metadata:
|
||||||
|
name: {{ include "cluster.name" $ }}-database-{{ .name | replace "_" "-" }}
|
||||||
|
namespace: {{ include "cluster.namespace" $ }}
|
||||||
|
labels:
|
||||||
|
{{- include "cluster.labels" $ | nindent 4 }}
|
||||||
|
spec:
|
||||||
|
name: {{ .name }}
|
||||||
|
cluster:
|
||||||
|
name: {{ include "cluster.name" $ }}
|
||||||
|
ensure: {{ .ensure | default "present" }}
|
||||||
|
owner: {{ .owner }}
|
||||||
|
template: {{ .template | default "template1" }}
|
||||||
|
encoding: {{ .encoding | default "UTF8" }}
|
||||||
|
databaseReclaimPolicy: {{ .databaseReclaimPolicy | default "retain" }}
|
||||||
|
{{- with .isTemplate }}
|
||||||
|
isTemplate: {{ . }}
|
||||||
|
{{- end }}
|
||||||
|
{{- with .allowConnections }}
|
||||||
|
allowConnections: {{ . }}
|
||||||
|
{{- end }}
|
||||||
|
{{- with .connectionLimit }}
|
||||||
|
connectionLimit: {{ . }}
|
||||||
|
{{- end }}
|
||||||
|
{{- with .tablespace }}
|
||||||
|
tablespace: {{ . }}
|
||||||
|
{{- end }}
|
||||||
|
{{- with .locale }}
|
||||||
|
locale: {{ . }}
|
||||||
|
{{- end }}
|
||||||
|
{{- with .localeProvider }}
|
||||||
|
localeProvider: {{ . }}
|
||||||
|
{{- end }}
|
||||||
|
{{- with .localeCollate }}
|
||||||
|
localeCollate: {{ . }}
|
||||||
|
{{- end }}
|
||||||
|
{{- with .localeCType }}
|
||||||
|
localeCType: {{ . }}
|
||||||
|
{{- end }}
|
||||||
|
{{- with .icuLocale }}
|
||||||
|
icuLocale: {{ . }}
|
||||||
|
{{- end }}
|
||||||
|
{{- with .icuRules }}
|
||||||
|
icuRules: {{ . }}
|
||||||
|
{{- end }}
|
||||||
|
{{- with .builtinLocale }}
|
||||||
|
builtinLocale: {{ . }}
|
||||||
|
{{- end }}
|
||||||
|
{{- with .collationVersion }}
|
||||||
|
collationVersion: {{ . | quote }}
|
||||||
|
{{- end }}
|
||||||
|
{{- with .schemas }}
|
||||||
|
schemas:
|
||||||
|
{{- range . }}
|
||||||
|
- name: {{ .name }}
|
||||||
|
owner: {{ .owner }}
|
||||||
|
ensure: {{ .ensure | default "present" }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
|
{{- with .extensions }}
|
||||||
|
extensions:
|
||||||
|
{{- range . }}
|
||||||
|
- name: {{ .name }}
|
||||||
|
{{- with .version }}
|
||||||
|
version: {{ . }}
|
||||||
|
{{- end }}
|
||||||
|
{{- with .schema }}
|
||||||
|
schema: {{ . }}
|
||||||
|
{{- end }}
|
||||||
|
ensure: {{ .ensure | default "present" }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
@@ -3,7 +3,7 @@
|
|||||||
apiVersion: postgresql.cnpg.io/v1
|
apiVersion: postgresql.cnpg.io/v1
|
||||||
kind: Pooler
|
kind: Pooler
|
||||||
metadata:
|
metadata:
|
||||||
name: {{ include "cluster.name" $ }}-pooler-{{ .name }}
|
name: {{ include "cluster.name" $ }}-pooler-{{ .name }}
|
||||||
namespace: {{ include "cluster.namespace" $ }}
|
namespace: {{ include "cluster.namespace" $ }}
|
||||||
labels:
|
labels:
|
||||||
{{- include "cluster.labels" $ | nindent 4 }}
|
{{- include "cluster.labels" $ | nindent 4 }}
|
||||||
|
|||||||
@@ -507,6 +507,35 @@ backup:
|
|||||||
# # -- Name of backup target
|
# # -- Name of backup target
|
||||||
# backupName: external
|
# backupName: external
|
||||||
|
|
||||||
|
# -- Database management configuration
|
||||||
|
databases: []
|
||||||
|
# - name: app # -- Name of the database to be created.
|
||||||
|
# ensure: present # -- Ensure the PostgreSQL database is present or absent - defaults to "present".
|
||||||
|
# owner: app # -- Owner of the database, defaults to the value of the `name` key.
|
||||||
|
# template: template1 # -- Maps to the TEMPLATE parameter.
|
||||||
|
# encoding: UTF8 # -- Maps to the ENCODING parameter.
|
||||||
|
# connectionLimit: -1 # -- Maps to the CONNECTION LIMIT parameter. -1 (the default) means no limit.
|
||||||
|
# tablespace: "" # -- Maps to the TABLESPACE parameter and ALTER DATABASE.
|
||||||
|
# databaseReclaimPolicy: retain # -- One of: retain / delete (retain by default).
|
||||||
|
# schemas: [] # -- List of schemas to be created in the database.
|
||||||
|
# # - name: myschema
|
||||||
|
# # owner: app # -- Owner of the schema, defaults to the database owner.
|
||||||
|
# # ensure: present # -- Ensure the PostgreSQL schema is present or absent - defaults to "present".
|
||||||
|
# extensions: [] # -- List of extensions to be created in the database.
|
||||||
|
# # - name: pg_search
|
||||||
|
# # ensure: present # -- Ensure the PostgreSQL extension is present or absent - defaults to "present".
|
||||||
|
# # version: "0.15.21" # -- Version of the extension to be installed, if not specified the latest version will be used.
|
||||||
|
# # schema: "" # -- Schema where the extension will be installed, if not specified the extensions or current default object creation schema will be used.
|
||||||
|
# isTemplate: false # -- Maps to the IS_TEMPLATE parameter. If true, the database is considered a template for new databases.
|
||||||
|
# locale: "" # -- Maps to the LC_COLLATE and LC_CTYPE parameters
|
||||||
|
# localeProvider: "" # -- Maps to the LOCALE_PROVIDER parameter. Available from PostgreSQL 16.
|
||||||
|
# localeCollate: "" # -- Maps to the LC_COLLATE parameter
|
||||||
|
# localeCType: "" # -- Maps to the LC_CTYPE parameter
|
||||||
|
# icuLocale: "" # -- Maps to the ICU_LOCALE parameter. Available from PostgreSQL 15.
|
||||||
|
# icuRules: "" # -- Maps to the ICU_RULES parameter. Available from PostgreSQL 16.
|
||||||
|
# builtinLocale: "" # -- Maps to the BUILTIN_LOCALE parameter. Available from PostgreSQL 17.
|
||||||
|
# collationVersion: "" # -- Maps to the COLLATION_VERSION parameter.
|
||||||
|
|
||||||
# -- List of PgBouncer poolers
|
# -- List of PgBouncer poolers
|
||||||
poolers: []
|
poolers: []
|
||||||
# -
|
# -
|
||||||
|
|||||||
Reference in New Issue
Block a user