|
1 | | -{{- $databaseConfig := default (dict) .Values.controller.database -}} |
2 | | -{{- $superuserUsername := default "postgres" $databaseConfig.username -}} |
3 | | -{{- $superuserPassword := default "example123456" $databaseConfig.password -}} |
4 | | -apiVersion: v1 |
5 | | -kind: Secret |
| 1 | +apiVersion: stackgres.io/v1 |
| 2 | +kind: SGInstanceProfile |
6 | 3 | metadata: |
7 | | - name: database |
8 | | - labels: |
9 | | - app.kubernetes.io/name: database |
10 | | - app.kubernetes.io/instance: {{ .Release.Name }} |
11 | | -type: Opaque |
12 | | -data: |
13 | | - superuser-username: {{ $superuserUsername | b64enc | quote }} |
14 | | - superuser-password: {{ $superuserPassword | b64enc | quote }} |
15 | | ---- |
16 | | -apiVersion: v1 |
17 | | -kind: ConfigMap |
18 | | -metadata: |
19 | | - name: database-init-scripts |
20 | | - labels: |
21 | | - app.kubernetes.io/name: database |
22 | | - app.kubernetes.io/instance: {{ .Release.Name }} |
23 | | -data: |
24 | | - 01-wal-level.sql: | |
25 | | - ALTER SYSTEM SET wal_level = 'logical'; |
26 | | - SELECT pg_reload_conf(); |
27 | | ---- |
28 | | -apiVersion: v1 |
29 | | -kind: Service |
30 | | -metadata: |
31 | | - name: database |
32 | | - labels: |
33 | | - app.kubernetes.io/name: database |
34 | | - app.kubernetes.io/instance: {{ .Release.Name }} |
| 4 | + name: profile |
35 | 5 | spec: |
36 | | - clusterIP: None |
37 | | - ports: |
38 | | - - name: postgres |
39 | | - port: 5432 |
40 | | - targetPort: 5432 |
41 | | - protocol: TCP |
42 | | - selector: |
43 | | - app.kubernetes.io/name: database |
44 | | - app.kubernetes.io/instance: {{ .Release.Name }} |
| 6 | + cpu: "1" |
| 7 | + memory: "1Gi" |
| 8 | + |
45 | 9 | --- |
46 | | -apiVersion: apps/v1 |
47 | | -kind: StatefulSet |
| 10 | +apiVersion: stackgres.io/v1 |
| 11 | +kind: SGCluster |
48 | 12 | metadata: |
49 | 13 | name: database |
50 | 14 | labels: |
51 | | - app.kubernetes.io/name: database |
52 | | - app.kubernetes.io/instance: {{ .Release.Name }} |
| 15 | + app.kubernetes.io/name: vela-db |
| 16 | + app.kubernetes.io/instance: vela |
| 17 | + annotations: |
| 18 | + # Protects DB from being deleted on helm uninstall |
| 19 | + "helm.sh/resource-policy": keep |
53 | 20 | spec: |
54 | | - serviceName: database |
55 | | - replicas: 1 |
56 | | - selector: |
57 | | - matchLabels: |
58 | | - app.kubernetes.io/name: database |
59 | | - app.kubernetes.io/instance: {{ .Release.Name }} |
60 | | - template: |
61 | | - metadata: |
62 | | - labels: |
63 | | - app.kubernetes.io/name: database |
64 | | - app.kubernetes.io/instance: {{ .Release.Name }} |
65 | | - spec: |
66 | | - containers: |
67 | | - - name: postgres |
68 | | - image: "postgres:{{ .Values.postgresVersion }}" |
69 | | - imagePullPolicy: IfNotPresent |
70 | | - ports: |
71 | | - - name: postgres |
72 | | - containerPort: 5432 |
73 | | - protocol: TCP |
74 | | - env: |
75 | | - - name: POSTGRES_USER |
76 | | - valueFrom: |
77 | | - secretKeyRef: |
78 | | - name: database |
79 | | - key: superuser-username |
80 | | - - name: POSTGRES_PASSWORD |
81 | | - valueFrom: |
82 | | - secretKeyRef: |
83 | | - name: database |
84 | | - key: superuser-password |
85 | | - - name: PGDATA |
86 | | - value: /var/lib/postgresql/data/pgdata |
87 | | - volumeMounts: |
88 | | - - name: data |
89 | | - mountPath: /var/lib/postgresql/data |
90 | | - - name: database-init-scripts |
91 | | - mountPath: /docker-entrypoint-initdb.d |
92 | | - args: |
93 | | - - "-c" |
94 | | - - "wal_level=logical" |
95 | | - volumes: |
96 | | - - name: database-init-scripts |
97 | | - configMap: |
98 | | - name: database-init-scripts |
99 | | - volumeClaimTemplates: |
100 | | - - metadata: |
101 | | - name: data |
102 | | - labels: |
103 | | - app.kubernetes.io/name: database |
104 | | - app.kubernetes.io/instance: {{ .Release.Name }} |
105 | | - spec: |
106 | | - accessModes: ["ReadWriteOnce"] |
107 | | - storageClassName: simplyblock-csi-sc |
108 | | - resources: |
109 | | - requests: |
110 | | - storage: 20Gi |
| 21 | + instances: 1 |
| 22 | + postgres: |
| 23 | + version: {{ .Values.postgresVersion }} |
| 24 | + pods: |
| 25 | + persistentVolume: |
| 26 | + size: '20Gi' |
| 27 | + sgInstanceProfile: 'profile' |
0 commit comments