diff --git a/postgresql/templates/statefulset.yaml b/postgresql/templates/statefulset.yaml index 7472cf4de7..2c69e2d25e 100644 --- a/postgresql/templates/statefulset.yaml +++ b/postgresql/templates/statefulset.yaml @@ -279,10 +279,15 @@ spec: - name: postgresql-data hostPath: path: {{ .Values.storage.host.host_path }} + type: DirectoryOrCreate +{{- if eq .Values.conf.postgresql.archive_mode "on" }} + - name: postgresql-archive + hostPath: + path: {{ .Values.storage.host.archive_host_path }} + type: DirectoryOrCreate {{- end }} -{{- if or (eq .Values.conf.postgresql.archive_mode "on" ) (eq .Values.storage.pvc.enabled true) }} +{{- else }} volumeClaimTemplates: -{{- if .Values.storage.pvc.enabled }} - metadata: name: postgresql-data annotations: @@ -292,7 +297,6 @@ spec: resources: requests: storage: {{ .Values.storage.pvc.size }} -{{- end }} {{- if eq .Values.conf.postgresql.archive_mode "on" }} - metadata: name: postgresql-archive diff --git a/postgresql/values.yaml b/postgresql/values.yaml index f6b5756f22..7befdd76b0 100644 --- a/postgresql/values.yaml +++ b/postgresql/values.yaml @@ -181,6 +181,7 @@ storage: class_path: volume.beta.kubernetes.io/storage-class host: host_path: /data/openstack-helm/postgresql + archive_host_path: /data/openstack-helm/postgresql-archive mount: path: /var/lib/postgresql subpath: . diff --git a/releasenotes/notes/postgresql-e1a02dbbe6601b0f.yaml b/releasenotes/notes/postgresql-e1a02dbbe6601b0f.yaml new file mode 100644 index 0000000000..e08ebf970d --- /dev/null +++ b/releasenotes/notes/postgresql-e1a02dbbe6601b0f.yaml @@ -0,0 +1,5 @@ +--- +postgresql: + - Add support of hostPath volume for archive mode + - Use DirectoryOrCreate type for hostPath volumes +... diff --git a/tools/deployment/db/postgresql.sh b/tools/deployment/db/postgresql.sh index 70c3d623ef..6962aef1e0 100755 --- a/tools/deployment/db/postgresql.sh +++ b/tools/deployment/db/postgresql.sh @@ -19,15 +19,15 @@ set -xe : ${OSH_VALUES_OVERRIDES_PATH:="../openstack-helm/values_overrides"} : ${OSH_EXTRA_HELM_ARGS:=""} : ${OSH_EXTRA_HELM_ARGS_POSTGRESQL:="$(helm osh get-values-overrides -p ${OSH_VALUES_OVERRIDES_PATH} -c postgresql ${FEATURES})"} +: ${NAMESPACE:=openstack} helm upgrade --install postgresql ${OSH_HELM_REPO}/postgresql \ - --namespace=osh-infra \ - --set monitoring.prometheus.enabled=true \ - --set storage.pvc.size=1Gi \ - --set storage.pvc.enabled=true \ + --namespace=${NAMESPACE} \ + ${MONITORING_HELM_ARGS:="--set monitoring.prometheus.enabled=true"} \ --set pod.replicas.server=1 \ + ${VOLUME_HELM_ARGS:="--set storage.pvc.enabled=false --set storage.host.host_path=/tmp/postgresql-data --set conf.postgresql.archive_mode=off"} \ ${OSH_EXTRA_HELM_ARGS} \ ${OSH_EXTRA_HELM_ARGS_POSTGRESQL} #NOTE: Wait for deploy -helm osh wait-for-pods osh-infra +helm osh wait-for-pods ${NAMESPACE}