From 3cad5374d689bc2780e601cf69a522f2ae3be53c Mon Sep 17 00:00:00 2001 From: Sameer Naik Date: Tue, 28 Jan 2020 21:36:07 +0530 Subject: [PATCH 01/11] [bitnami/postgresql-hq] do not wait for backend nodes in pgpool deployment Fixed liveness probes and remove initContainer to make the chart more resilient to error conditions fixes #1799 --- bitnami/postgresql-ha/Chart.yaml | 2 +- .../templates/pgpool/deployment.yaml | 73 +++---------------- 2 files changed, 12 insertions(+), 63 deletions(-) diff --git a/bitnami/postgresql-ha/Chart.yaml b/bitnami/postgresql-ha/Chart.yaml index 694cb7207..72c09ae46 100644 --- a/bitnami/postgresql-ha/Chart.yaml +++ b/bitnami/postgresql-ha/Chart.yaml @@ -1,6 +1,6 @@ apiVersion: v1 name: postgresql-ha -version: 1.4.0 +version: 1.4.1 appVersion: 11.6.0 description: Chart for PostgreSQL with HA architecture (using Replication Manager (repmgr) and Pgpool). keywords: diff --git a/bitnami/postgresql-ha/templates/pgpool/deployment.yaml b/bitnami/postgresql-ha/templates/pgpool/deployment.yaml index 9ec95eaf6..6040aa3e2 100644 --- a/bitnami/postgresql-ha/templates/pgpool/deployment.yaml +++ b/bitnami/postgresql-ha/templates/pgpool/deployment.yaml @@ -37,49 +37,6 @@ spec: {{- $postgresqlHeadlessServiceName := printf "%s-headless" (include "postgresql-ha.postgresql" .) }} {{- $releaseNamespace := .Release.Namespace }} {{- $clusterDomain:= .Values.clusterDomain }} - initContainers: - - name: wait-for-backend-nodes - image: {{ include "postgresql-ha.volumePermissionsImage" . }} - imagePullPolicy: {{ .Values.volumePermissionsImage.pullPolicy | quote }} - env: - - name: PGPOOL_BACKEND_NODES - value: {{range $e, $i := until $postgresqlReplicaCount }}{{ $i }}:{{ $postgresqlFullname }}-{{ $i }}.{{ $postgresqlHeadlessServiceName }}.{{ $releaseNamespace }}.svc.{{ $clusterDomain }}:5432,{{ end }} - command: - - /bin/bash - - -c - - | - dns_lookup() { - local host="${1:?host is missing}" - getent ahosts "$host" | awk '/STREAM/ {print $1 }' - } - is_hostname_resolved() { - local -r host="${1:?missing value}" - if [[ -n "$(dns_lookup "$host")" ]]; then - true - else - false - fi - } - read -r -a nodes <<< "$(tr ',;' ' ' <<< "${PGPOOL_BACKEND_NODES}")" - declare -i node_counter=0 - for node in "${nodes[@]}"; do - read -r -a fields <<< "$(tr ':' ' ' <<< "${node}")" - host="${fields[1]:?field host is needed}" - for ((i = 1 ; i <= 10 ; i+=1 )); do - is_hostname_resolved "$host" && node_counter+=1 && break - sleep 5 - done - done - if [[ $node_counter -ne ${#nodes[@]} ]]; then - echo "Not enough active backend nodes!" - exit 1 - fi - echo "Every backend node is active!" - exit 0 - {{- if .Values.pgpool.securityContext.enabled }} - securityContext: - runAsUser: {{ .Values.pgpool.securityContext.runAsUser }} - {{- end }} containers: - name: pgpool image: {{ include "postgresql-ha.pgpoolImage" . }} @@ -171,15 +128,16 @@ spec: - bash - -ec - | - if nodes=$(PGPASSWORD=${PGPOOL_POSTGRES_PASSWORD} psql -U {{ (include "postgresql-ha.postgresqlUsername" .) | quote }} {{- if not (empty (include "postgresql-ha.postgresqlDatabase" .)) }} -d {{ (include "postgresql-ha.postgresqlDatabase" .) | quote }}{{- end }} -h 127.0.0.1 -tA -c "show pool_nodes;" | grep "up" | wc -l); then - if [[ $nodes -eq {{ $postgresqlReplicaCount }} ]]; then - true - else - false - fi - else - false - fi + if PGPASSWORD=${PGPOOL_POSTGRES_PASSWORD} psql -U {{ (include "postgresql-ha.postgresqlUsername" .) | quote }} {{- if not (empty (include "postgresql-ha.postgresqlDatabase" .)) }} -d {{ (include "postgresql-ha.postgresqlDatabase" .) | quote }}{{- end }} -h 127.0.0.1 -tA -c "show pool_nodes;"; then + for node in $(PGPASSWORD=${PGPOOL_POSTGRES_PASSWORD} psql -U {{ (include "postgresql-ha.postgresqlUsername" .) | quote }} {{- if not (empty (include "postgresql-ha.postgresqlDatabase" .)) }} -d {{ (include "postgresql-ha.postgresqlDatabase" .) | quote }}{{- end }} -h 127.0.0.1 -tA -c "show pool_nodes;" | grep "down" | cut -d'|' -f2); do + if PGPASSWORD=${PGPOOL_POSTGRES_PASSWORD} psql -U {{ (include "postgresql-ha.postgresqlUsername" .) | quote }} {{- if not (empty (include "postgresql-ha.postgresqlDatabase" .)) }} -d {{ (include "postgresql-ha.postgresqlDatabase" .) | quote }}{{- end }} -h ${node} -tA -c "SELECT 1" >/dev/null; then + false + fi + done + else + false + fi + initialDelaySeconds: {{ .Values.pgpool.livenessProbe.initialDelaySeconds }} periodSeconds: {{ .Values.pgpool.livenessProbe.periodSeconds }} timeoutSeconds: {{ .Values.pgpool.livenessProbe.timeoutSeconds }} @@ -192,16 +150,7 @@ spec: command: - bash - -ec - - | - if nodes=$(PGPASSWORD=${PGPOOL_POSTGRES_PASSWORD} psql -U {{ (include "postgresql-ha.postgresqlUsername" .) | quote }} {{- if not (empty (include "postgresql-ha.postgresqlDatabase" .)) }} -d {{ (include "postgresql-ha.postgresqlDatabase" .) | quote }}{{- end }} -h 127.0.0.1 -tA -c "show pool_nodes;" | wc -l); then - if [[ $nodes -eq {{ $postgresqlReplicaCount }} ]]; then - true - else - false - fi - else - false - fi + - PGPASSWORD=${PGPOOL_POSTGRES_PASSWORD} psql -U {{ (include "postgresql-ha.postgresqlUsername" .) | quote }} {{- if not (empty (include "postgresql-ha.postgresqlDatabase" .)) }} -d {{ (include "postgresql-ha.postgresqlDatabase" .) | quote }}{{- end }} -h 127.0.0.1 -tA -c "SELECT 1" >/dev/null initialDelaySeconds: {{ .Values.pgpool.readinessProbe.initialDelaySeconds }} periodSeconds: {{ .Values.pgpool.readinessProbe.periodSeconds }} timeoutSeconds: {{ .Values.pgpool.readinessProbe.timeoutSeconds }} From e27d28a3945babb39f9846005852ce7aa06e5a48 Mon Sep 17 00:00:00 2001 From: Bitnami Containers Date: Thu, 30 Jan 2020 17:32:23 +0000 Subject: [PATCH 02/11] [bitnami/zookeeper] Release 5.3.5 updating components versions Signed-off-by: Bitnami Containers --- bitnami/zookeeper/Chart.yaml | 2 +- bitnami/zookeeper/values-production.yaml | 4 ++-- bitnami/zookeeper/values.yaml | 4 ++-- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/bitnami/zookeeper/Chart.yaml b/bitnami/zookeeper/Chart.yaml index eac30f8a5..63dcf58bd 100644 --- a/bitnami/zookeeper/Chart.yaml +++ b/bitnami/zookeeper/Chart.yaml @@ -1,6 +1,6 @@ apiVersion: v1 name: zookeeper -version: 5.3.4 +version: 5.3.5 appVersion: 3.5.6 description: A centralized service for maintaining configuration information, naming, providing distributed synchronization, and providing group services for distributed applications. keywords: diff --git a/bitnami/zookeeper/values-production.yaml b/bitnami/zookeeper/values-production.yaml index c9d496a3d..e274515bd 100644 --- a/bitnami/zookeeper/values-production.yaml +++ b/bitnami/zookeeper/values-production.yaml @@ -14,7 +14,7 @@ image: registry: docker.io repository: bitnami/zookeeper - tag: 3.5.6-debian-10-r0 + tag: 3.5.6-debian-10-r6 ## Specify a imagePullPolicy ## Defaults to 'Always' if image tag is 'latest', else set to 'IfNotPresent' ## ref: http://kubernetes.io/docs/user-guide/images/#pre-pulling-images @@ -237,7 +237,7 @@ metrics: image: registry: docker.io repository: bitnami/zookeeper-exporter - tag: 0.1.3-debian-10-r0 + tag: 0.1.3-debian-10-r5 pullPolicy: IfNotPresent ## Optionally specify an array of imagePullSecrets. ## Secrets must be manually created in the namespace. diff --git a/bitnami/zookeeper/values.yaml b/bitnami/zookeeper/values.yaml index bbae127cf..3c2aa39b9 100644 --- a/bitnami/zookeeper/values.yaml +++ b/bitnami/zookeeper/values.yaml @@ -14,7 +14,7 @@ image: registry: docker.io repository: bitnami/zookeeper - tag: 3.5.6-debian-10-r0 + tag: 3.5.6-debian-10-r6 ## Specify a imagePullPolicy ## Defaults to 'Always' if image tag is 'latest', else set to 'IfNotPresent' ## ref: http://kubernetes.io/docs/user-guide/images/#pre-pulling-images @@ -237,7 +237,7 @@ metrics: image: registry: docker.io repository: bitnami/zookeeper-exporter - tag: 0.1.3-debian-10-r0 + tag: 0.1.3-debian-10-r5 pullPolicy: IfNotPresent ## Optionally specify an array of imagePullSecrets. ## Secrets must be manually created in the namespace. From 948683ba4f7f186d3ff8cabacd626d588474a3f8 Mon Sep 17 00:00:00 2001 From: Bitnami Containers Date: Thu, 30 Jan 2020 22:57:39 +0000 Subject: [PATCH 03/11] [bitnami/consul] Release 6.0.15 updating components versions Signed-off-by: Bitnami Containers --- bitnami/consul/Chart.yaml | 4 ++-- bitnami/consul/values-production.yaml | 4 ++-- bitnami/consul/values.yaml | 4 ++-- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/bitnami/consul/Chart.yaml b/bitnami/consul/Chart.yaml index 52919289a..889abc00f 100644 --- a/bitnami/consul/Chart.yaml +++ b/bitnami/consul/Chart.yaml @@ -1,7 +1,7 @@ apiVersion: v1 name: consul -version: 6.0.14 -appVersion: 1.6.2 +version: 6.0.15 +appVersion: 1.6.3 description: Highly available and distributed service discovery and key-value store designed with support for the modern data center to make distributed systems and configuration easy. home: https://www.consul.io/ sources: diff --git a/bitnami/consul/values-production.yaml b/bitnami/consul/values-production.yaml index 29b1cd0c5..42c1eae9f 100644 --- a/bitnami/consul/values-production.yaml +++ b/bitnami/consul/values-production.yaml @@ -14,7 +14,7 @@ image: registry: docker.io repository: bitnami/consul - tag: 1.6.2-debian-10-r0 + tag: 1.6.3-debian-10-r0 ## Specify a imagePullPolicy ## Defaults to 'Always' if image tag is 'latest', else set to 'IfNotPresent' ## ref: http://kubernetes.io/docs/user-guide/images/#pre-pulling-images @@ -330,7 +330,7 @@ metrics: image: registry: docker.io repository: bitnami/consul-exporter - tag: 0.6.0-debian-10-r0 + tag: 0.6.0-debian-10-r5 pullPolicy: IfNotPresent ## Optionally specify an array of imagePullSecrets. ## Secrets must be manually created in the namespace. diff --git a/bitnami/consul/values.yaml b/bitnami/consul/values.yaml index e1b58a04b..ee9383efd 100644 --- a/bitnami/consul/values.yaml +++ b/bitnami/consul/values.yaml @@ -14,7 +14,7 @@ image: registry: docker.io repository: bitnami/consul - tag: 1.6.2-debian-10-r0 + tag: 1.6.3-debian-10-r0 ## Specify a imagePullPolicy ## Defaults to 'Always' if image tag is 'latest', else set to 'IfNotPresent' ## ref: http://kubernetes.io/docs/user-guide/images/#pre-pulling-images @@ -330,7 +330,7 @@ metrics: image: registry: docker.io repository: bitnami/consul-exporter - tag: 0.6.0-debian-10-r0 + tag: 0.6.0-debian-10-r5 pullPolicy: IfNotPresent ## Optionally specify an array of imagePullSecrets. ## Secrets must be manually created in the namespace. From 30ae3e6539ced4c7ea84b0cba71eea097f07cb66 Mon Sep 17 00:00:00 2001 From: bitnami-bot Date: Fri, 31 Jan 2020 08:35:05 +0000 Subject: [PATCH 04/11] Synchronize upstreamed folder to 35660cbc6 --- upstreamed/nats/Chart.yaml | 4 ++-- upstreamed/nats/values-production.yaml | 4 ++-- upstreamed/nats/values.yaml | 4 ++-- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/upstreamed/nats/Chart.yaml b/upstreamed/nats/Chart.yaml index 289c505a6..e72a2c1e6 100644 --- a/upstreamed/nats/Chart.yaml +++ b/upstreamed/nats/Chart.yaml @@ -1,7 +1,7 @@ apiVersion: v1 name: nats -version: 4.2.11 -appVersion: 2.1.2 +version: 4.2.12 +appVersion: 2.1.4 description: An open-source, cloud-native messaging system keywords: - nats diff --git a/upstreamed/nats/values-production.yaml b/upstreamed/nats/values-production.yaml index b2f9e1086..2ed9c7e31 100644 --- a/upstreamed/nats/values-production.yaml +++ b/upstreamed/nats/values-production.yaml @@ -13,7 +13,7 @@ image: registry: docker.io repository: bitnami/nats - tag: 2.1.2-debian-10-r0 + tag: 2.1.4-debian-10-r0 ## Specify a imagePullPolicy ## Defaults to 'Always' if image tag is 'latest', else set to 'IfNotPresent' ## ref: http://kubernetes.io/docs/user-guide/images/#pre-pulling-images @@ -302,7 +302,7 @@ metrics: image: registry: docker.io repository: bitnami/nats-exporter - tag: 0.6.0-debian-10-r0 + tag: 0.6.0-debian-10-r5 pullPolicy: IfNotPresent ## Optionally specify an array of imagePullSecrets. ## Secrets must be manually created in the namespace. diff --git a/upstreamed/nats/values.yaml b/upstreamed/nats/values.yaml index a92e17e94..735cf64b4 100644 --- a/upstreamed/nats/values.yaml +++ b/upstreamed/nats/values.yaml @@ -13,7 +13,7 @@ image: registry: docker.io repository: bitnami/nats - tag: 2.1.2-debian-10-r0 + tag: 2.1.4-debian-10-r0 ## Specify a imagePullPolicy ## Defaults to 'Always' if image tag is 'latest', else set to 'IfNotPresent' ## ref: http://kubernetes.io/docs/user-guide/images/#pre-pulling-images @@ -302,7 +302,7 @@ metrics: image: registry: docker.io repository: bitnami/nats-exporter - tag: 0.6.0-debian-10-r0 + tag: 0.6.0-debian-10-r5 pullPolicy: IfNotPresent ## Optionally specify an array of imagePullSecrets. ## Secrets must be manually created in the namespace. From 9d58496b1b0608c42f1878b0e3dee86ace7bb777 Mon Sep 17 00:00:00 2001 From: bitnami-bot Date: Fri, 31 Jan 2020 09:35:07 +0000 Subject: [PATCH 05/11] Synchronize upstreamed folder to efc9c66c3 --- upstreamed/dokuwiki/Chart.yaml | 2 +- upstreamed/dokuwiki/values.yaml | 4 ++-- upstreamed/external-dns/Chart.yaml | 2 +- upstreamed/external-dns/README.md | 2 +- upstreamed/external-dns/templates/deployment.yaml | 6 +++--- 5 files changed, 8 insertions(+), 8 deletions(-) diff --git a/upstreamed/dokuwiki/Chart.yaml b/upstreamed/dokuwiki/Chart.yaml index 7e659b039..ed6e9b38c 100644 --- a/upstreamed/dokuwiki/Chart.yaml +++ b/upstreamed/dokuwiki/Chart.yaml @@ -1,6 +1,6 @@ apiVersion: v1 name: dokuwiki -version: 6.0.5 +version: 6.0.6 appVersion: 0.20180422.201901061035 description: DokuWiki is a standards-compliant, simple to use wiki optimized for creating documentation. It is targeted at developer teams, workgroups, and small companies. diff --git a/upstreamed/dokuwiki/values.yaml b/upstreamed/dokuwiki/values.yaml index 95475e9ab..cbc605415 100644 --- a/upstreamed/dokuwiki/values.yaml +++ b/upstreamed/dokuwiki/values.yaml @@ -14,7 +14,7 @@ image: registry: docker.io repository: bitnami/dokuwiki - tag: 0.20180422.201901061035-debian-10-r0 + tag: 0.20180422.201901061035-debian-10-r6 ## Specify a imagePullPolicy ## Defaults to 'Always' if image tag is 'latest', else set to 'IfNotPresent' ## ref: http://kubernetes.io/docs/user-guide/images/#pre-pulling-images @@ -193,7 +193,7 @@ metrics: image: registry: docker.io repository: bitnami/apache-exporter - tag: 0.7.0-debian-10-r0 + tag: 0.7.0-debian-10-r5 pullPolicy: IfNotPresent ## Optionally specify an array of imagePullSecrets. ## Secrets must be manually created in the namespace. diff --git a/upstreamed/external-dns/Chart.yaml b/upstreamed/external-dns/Chart.yaml index 0b86bcad2..c9662cad8 100644 --- a/upstreamed/external-dns/Chart.yaml +++ b/upstreamed/external-dns/Chart.yaml @@ -1,6 +1,6 @@ apiVersion: v1 name: external-dns -version: 2.16.0 +version: 2.16.1 appVersion: 0.5.18 description: ExternalDNS is a Kubernetes addon that configures public DNS servers with information about exposed Kubernetes services to make them discoverable. keywords: diff --git a/upstreamed/external-dns/README.md b/upstreamed/external-dns/README.md index 9343da21b..65be95e14 100755 --- a/upstreamed/external-dns/README.md +++ b/upstreamed/external-dns/README.md @@ -75,7 +75,7 @@ The following table lists the configurable parameters of the external-dns chart | `aws.batchChangeSize` | When using the AWS provider, set the maximum number of changes that will be applied in each batch | `1000` | | `aws.zoneTags` | When using the AWS provider, filter for zones with these tags | `[]` | | `aws.preferCNAME` | When using the AWS provider, replaces Alias recors with CNAME (options: true, false) | `[]` | -| `aws.evaluateTargetHealth | When using the AWS provider, sets the evaluate target health flag (options: true, false) | `[true, false]` | +| `aws.evaluateTargetHealth` | When using the AWS provider, sets the evaluate target health flag (options: true, false) | `[true, false]` | | `azure.secretName` | When using the Azure provider, set the secret containing the `azure.json` file | `""` | | `azure.cloud` | When using the Azure provider, set the Azure Clound | `""` | | `azure.resourceGroup` | When using the Azure provider, set the Azure Resource Group | `""` | diff --git a/upstreamed/external-dns/templates/deployment.yaml b/upstreamed/external-dns/templates/deployment.yaml index 5c8d6d053..25bd1514d 100755 --- a/upstreamed/external-dns/templates/deployment.yaml +++ b/upstreamed/external-dns/templates/deployment.yaml @@ -129,9 +129,9 @@ spec: {{- if .Values.aws.preferCNAME }} - --aws-prefer-cname {{- end }} - {{- if .Values.aws.evaluateTargetHealth }} - - --aws-evaluate-target-health={{ . }} - {{- end }} + {{- if and (kindIs "bool" .Values.aws.evaluateTargetHealth) (not .Values.aws.evaluateTargetHealth) }} + - --no-aws-evaluate-target-health + {{- end }} # Azure Arguments {{- if or (eq .Values.provider "azure") (eq .Values.provider "azure-private-dns") }} {{- if .Values.azure.resourceGroup }} From df9db779a81c3187fb3c01bd8a6060f168765e62 Mon Sep 17 00:00:00 2001 From: Sameer Naik Date: Fri, 31 Jan 2020 12:38:51 +0530 Subject: [PATCH 06/11] [bitnami/postgresql] moved liveness probe command to `healthcheck.sh` script --- .../postgresql-ha/templates/pgpool/deployment.yaml | 14 +------------- bitnami/postgresql-ha/values-production.yaml | 2 +- bitnami/postgresql-ha/values.yaml | 2 +- 3 files changed, 3 insertions(+), 15 deletions(-) diff --git a/bitnami/postgresql-ha/templates/pgpool/deployment.yaml b/bitnami/postgresql-ha/templates/pgpool/deployment.yaml index 6040aa3e2..ec66d363a 100644 --- a/bitnami/postgresql-ha/templates/pgpool/deployment.yaml +++ b/bitnami/postgresql-ha/templates/pgpool/deployment.yaml @@ -125,19 +125,7 @@ spec: livenessProbe: exec: command: - - bash - - -ec - - | - if PGPASSWORD=${PGPOOL_POSTGRES_PASSWORD} psql -U {{ (include "postgresql-ha.postgresqlUsername" .) | quote }} {{- if not (empty (include "postgresql-ha.postgresqlDatabase" .)) }} -d {{ (include "postgresql-ha.postgresqlDatabase" .) | quote }}{{- end }} -h 127.0.0.1 -tA -c "show pool_nodes;"; then - for node in $(PGPASSWORD=${PGPOOL_POSTGRES_PASSWORD} psql -U {{ (include "postgresql-ha.postgresqlUsername" .) | quote }} {{- if not (empty (include "postgresql-ha.postgresqlDatabase" .)) }} -d {{ (include "postgresql-ha.postgresqlDatabase" .) | quote }}{{- end }} -h 127.0.0.1 -tA -c "show pool_nodes;" | grep "down" | cut -d'|' -f2); do - if PGPASSWORD=${PGPOOL_POSTGRES_PASSWORD} psql -U {{ (include "postgresql-ha.postgresqlUsername" .) | quote }} {{- if not (empty (include "postgresql-ha.postgresqlDatabase" .)) }} -d {{ (include "postgresql-ha.postgresqlDatabase" .) | quote }}{{- end }} -h ${node} -tA -c "SELECT 1" >/dev/null; then - false - fi - done - else - false - fi - + - /healthcheck.sh initialDelaySeconds: {{ .Values.pgpool.livenessProbe.initialDelaySeconds }} periodSeconds: {{ .Values.pgpool.livenessProbe.periodSeconds }} timeoutSeconds: {{ .Values.pgpool.livenessProbe.timeoutSeconds }} diff --git a/bitnami/postgresql-ha/values-production.yaml b/bitnami/postgresql-ha/values-production.yaml index a0d87b9f7..dbca63067 100644 --- a/bitnami/postgresql-ha/values-production.yaml +++ b/bitnami/postgresql-ha/values-production.yaml @@ -51,7 +51,7 @@ postgresqlImage: pgpoolImage: registry: docker.io repository: bitnami/pgpool - tag: 4.1.0-debian-10-r2 + tag: 4.1.0-debian-10-r7 ## Specify a imagePullPolicy. Defaults to 'Always' if image tag is 'latest', else set to 'IfNotPresent' ## ref: http://kubernetes.io/docs/user-guide/images/#pre-pulling-images ## diff --git a/bitnami/postgresql-ha/values.yaml b/bitnami/postgresql-ha/values.yaml index 00d3874c2..18b3ee10f 100644 --- a/bitnami/postgresql-ha/values.yaml +++ b/bitnami/postgresql-ha/values.yaml @@ -51,7 +51,7 @@ postgresqlImage: pgpoolImage: registry: docker.io repository: bitnami/pgpool - tag: 4.1.0-debian-10-r2 + tag: 4.1.0-debian-10-r7 ## Specify a imagePullPolicy. Defaults to 'Always' if image tag is 'latest', else set to 'IfNotPresent' ## ref: http://kubernetes.io/docs/user-guide/images/#pre-pulling-images ## From 856f2a9017126a63963d1562a946c4a430c57db6 Mon Sep 17 00:00:00 2001 From: bitnami-bot Date: Fri, 31 Jan 2020 10:35:11 +0000 Subject: [PATCH 07/11] Synchronize upstreamed folder to fb3558b0f --- upstreamed/redis/Chart.yaml | 2 +- upstreamed/redis/README.md | 10 +++-- .../redis/templates/prometheusrule.yaml | 23 +++++++++++ upstreamed/redis/values-production.yaml | 39 ++++++++++++++++++ upstreamed/redis/values.yaml | 40 +++++++++++++++++++ 5 files changed, 110 insertions(+), 4 deletions(-) create mode 100644 upstreamed/redis/templates/prometheusrule.yaml diff --git a/upstreamed/redis/Chart.yaml b/upstreamed/redis/Chart.yaml index 53a9d369d..db94d8742 100644 --- a/upstreamed/redis/Chart.yaml +++ b/upstreamed/redis/Chart.yaml @@ -1,6 +1,6 @@ apiVersion: v1 name: redis -version: 10.3.5 +version: 10.4.0 appVersion: 5.0.7 description: Open source, advanced key-value store. It is often referred to as a data structure server since keys can contain strings, hashes, lists, sets and sorted sets. keywords: diff --git a/upstreamed/redis/README.md b/upstreamed/redis/README.md index 3e0b8b7b2..a36b9fce6 100644 --- a/upstreamed/redis/README.md +++ b/upstreamed/redis/README.md @@ -78,8 +78,8 @@ The following table lists the configurable parameters of the Redis chart and the | `clusterDomain` | Kubernetes DNS Domain name to use | `cluster.local` | | `networkPolicy.enabled` | Enable NetworkPolicy | `false` | | `networkPolicy.allowExternal` | Don't require client label for connections | `true` | -| `networkPolicy.ingressNSMatchLabels` | Allow connections from other namespaces | `{}` | -| `networkPolicy.ingressNSPodMatchLabels` | For other namespaces match by pod labels and namespace labels | `{}` | +| `networkPolicy.ingressNSMatchLabels` | Allow connections from other namespaces | `{}` | +| `networkPolicy.ingressNSPodMatchLabels` | For other namespaces match by pod labels and namespace labels | `{}` | | `securityContext.enabled` | Enable security context (both redis master and slave pods) | `true` | | `securityContext.fsGroup` | Group ID for the container (both redis master and slave pods) | `1001` | | `securityContext.runAsUser` | User ID for the container (both redis master and slave pods) | `1001` | @@ -107,6 +107,10 @@ The following table lists the configurable parameters of the Redis chart and the | `metrics.service.labels` | Additional labels for the metrics service | {} | | `metrics.service.loadBalancerIP` | loadBalancerIP if redis metrics service type is `LoadBalancer` | `nil` | | `metrics.priorityClassName` | Metrics exporter pod priorityClassName | {} | +| `metrics.prometheusRule.enabled` | Set this to true to create prometheusRules for Prometheus operator | `false` | +| `metrics.prometheusRule.additionalLabels` | Additional labels that can be used so prometheusRules will be discovered by Prometheus | `{}` | +| `metrics.prometheusRule.namespace` | namespace where prometheusRules resource should be created | Same namespace as redis | +| `metrics.prometheusRule.rules` | [rules](https://prometheus.io/docs/prometheus/latest/configuration/alerting_rules/) to be created, check values for an example. | `[]` | | `persistence.existingClaim` | Provide an existing PersistentVolumeClaim | `nil` | | `master.persistence.enabled` | Use a PVC to persist data (master node) | `true` | | `master.persistence.path` | Path to mount the volume at, to use other images | `/data` | @@ -390,7 +394,7 @@ With NetworkPolicy enabled, only pods with the generated client label will be able to connect to Redis. This label will be displayed in the output after a successful install. -With `networkPolicy.ingressNSMatchLabels` pods from other namespaces can connect to redis. Set `networkPolicy.ingressNSPodMatchLabels` to match pod labels in matched namespace. For example, for a namespace labeled `redis=external` and pods in that namespace labeled `redis-client=true` the fields should be set: +With `networkPolicy.ingressNSMatchLabels` pods from other namespaces can connect to redis. Set `networkPolicy.ingressNSPodMatchLabels` to match pod labels in matched namespace. For example, for a namespace labeled `redis=external` and pods in that namespace labeled `redis-client=true` the fields should be set: ``` networkPolicy: diff --git a/upstreamed/redis/templates/prometheusrule.yaml b/upstreamed/redis/templates/prometheusrule.yaml new file mode 100644 index 000000000..500c3b37e --- /dev/null +++ b/upstreamed/redis/templates/prometheusrule.yaml @@ -0,0 +1,23 @@ +{{- if and .Values.metrics.enabled .Values.metrics.prometheusRule.enabled }} +apiVersion: monitoring.coreos.com/v1 +kind: PrometheusRule +metadata: + name: {{ template "redis.fullname" . }} +{{- with .Values.metrics.prometheusRule.namespace }} + namespace: {{ . }} +{{- end }} + labels: + app: {{ template "redis.name" . }} + chart: {{ template "redis.chart" . }} + release: {{ .Release.Name | quote }} + heritage: {{ .Release.Service | quote }} +{{- with .Values.metrics.prometheusRule.additionalLabels }} +{{ toYaml . | indent 4 }} +{{- end }} +spec: +{{- with .Values.metrics.prometheusRule.rules }} + groups: + - name: {{ template "redis.name" $ }} + rules: {{ tpl (toYaml .) $ | nindent 8 }} +{{- end }} +{{- end }} diff --git a/upstreamed/redis/values-production.yaml b/upstreamed/redis/values-production.yaml index 9e8522f3c..7e99f5fde 100644 --- a/upstreamed/redis/values-production.yaml +++ b/upstreamed/redis/values-production.yaml @@ -520,6 +520,45 @@ metrics: annotations: {} labels: {} + ## Custom PrometheusRule to be defined + ## The value is evaluated as a template, so, for example, the value can depend on .Release or .Chart + ## ref: https://github.com/coreos/prometheus-operator#customresourcedefinitions + prometheusRule: + enabled: false + additionalLabels: {} + namespace: "" + rules: [] + ## These are just examples rules, please adapt them to your needs. + ## Make sure to constraint the rules to the current postgresql service. + # - alert: RedisDown + # expr: redis_up{service="{{ template "redis.fullname" . }}-metrics"} == 0 + # for: 2m + # labels: + # severity: error + # annotations: + # summary: Redis instance {{ "{{ $instance }}" }} down + # description: Redis instance {{ "{{ $instance }}" }} is down. + # - alert: RedisMemoryHigh + # expr: > + # redis_memory_used_bytes{service="{{ template "redis.fullname" . }}-metrics"} * 100 + # / + # redis_memory_max_bytes{service="{{ template "redis.fullname" . }}-metrics"} + # > 90 =< 100 + # for: 2m + # labels: + # severity: error + # annotations: + # summary: Redis instance {{ "{{ $instance }}" }} is using too much memory + # description: Redis instance {{ "{{ $instance }}" }} is using {{ "{{ $value }}" }}% of its available memory. + # - alert: RedisKeyEviction + # expr: increase(redis_evicted_keys_total{service="{{ template "redis.fullname" . }}-metrics"}[5m]) > 0 + # for: 1s + # labels: + # severity: error + # annotations: + # summary: Redis instance {{ "{{ $instance }}" }} has evicted keys + # description: Redis instance {{ "{{ $instance }}" }} has evicted {{ "{{ $value }}" }} keys in the last 5 minutes. + ## ## Init containers parameters: ## volumePermissions: Change the owner of the persist volume mountpoint to RunAsUser:fsGroup diff --git a/upstreamed/redis/values.yaml b/upstreamed/redis/values.yaml index 2e3614e66..5ef8218ee 100644 --- a/upstreamed/redis/values.yaml +++ b/upstreamed/redis/values.yaml @@ -510,6 +510,46 @@ metrics: selector: prometheus: kube-prometheus + ## Custom PrometheusRule to be defined + ## The value is evaluated as a template, so, for example, the value can depend on .Release or .Chart + ## ref: https://github.com/coreos/prometheus-operator#customresourcedefinitions + prometheusRule: + enabled: false + additionalLabels: {} + namespace: "" + rules: [] + ## These are just examples rules, please adapt them to your needs. + ## Make sure to constraint the rules to the current postgresql service. + # - alert: RedisDown + # expr: redis_up{service="{{ template "redis.fullname" . }}-metrics"} == 0 + # for: 2m + # labels: + # severity: error + # annotations: + # summary: Redis instance {{ "{{ $instance }}" }} down + # description: Redis instance {{ "{{ $instance }}" }} is down. + # - alert: RedisMemoryHigh + # expr: > + # redis_memory_used_bytes{service="{{ template "redis.fullname" . }}-metrics"} * 100 + # / + # redis_memory_max_bytes{service="{{ template "redis.fullname" . }}-metrics"} + # > 90 =< 100 + # for: 2m + # labels: + # severity: error + # annotations: + # summary: Redis instance {{ "{{ $instance }}" }} is using too much memory + # description: Redis instance {{ "{{ $instance }}" }} is using {{ "{{ $value }}" }}% of its available memory. + # - alert: RedisKeyEviction + # expr: increase(redis_evicted_keys_total{service="{{ template "redis.fullname" . }}-metrics"}[5m]) > 0 + # for: 1s + # labels: + # severity: error + # annotations: + # summary: Redis instance {{ "{{ $instance }}" }} has evicted keys + # description: Redis instance {{ "{{ $instance }}" }} has evicted {{ "{{ $value }}" }} keys in the last 5 minutes. + + ## Metrics exporter pod priorityClassName # priorityClassName: {} service: From c897bb6411255e7cc77493fddcff1becbcba7ac9 Mon Sep 17 00:00:00 2001 From: bitnami-bot Date: Fri, 31 Jan 2020 11:35:02 +0000 Subject: [PATCH 08/11] Synchronize upstreamed folder to 53b93166f --- upstreamed/odoo/Chart.yaml | 2 +- upstreamed/odoo/requirements.lock | 6 +++--- upstreamed/odoo/requirements.yaml | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/upstreamed/odoo/Chart.yaml b/upstreamed/odoo/Chart.yaml index 46f5e2cb2..b2cd77d2f 100644 --- a/upstreamed/odoo/Chart.yaml +++ b/upstreamed/odoo/Chart.yaml @@ -1,6 +1,6 @@ apiVersion: v1 name: odoo -version: 12.0.6 +version: 13.0.0 appVersion: 12.0.20191215 description: A suite of web based open source business apps. home: https://www.odoo.com/ diff --git a/upstreamed/odoo/requirements.lock b/upstreamed/odoo/requirements.lock index c6b038cb9..553d864e7 100644 --- a/upstreamed/odoo/requirements.lock +++ b/upstreamed/odoo/requirements.lock @@ -1,6 +1,6 @@ dependencies: - name: postgresql repository: https://kubernetes-charts.storage.googleapis.com/ - version: 7.7.3 -digest: sha256:e7c3fc1c0606c69cfd4240a86f1ada88086f7b37b51d16a4ce56cf48314065e3 -generated: 2019-12-15T07:35:34.562674804Z + version: 8.2.1 +digest: sha256:ab0947bfeb757eaf0dc8fdf51a5a4aeb6f6ca33d55e3a5a91b00cfefd65288e2 +generated: 2020-01-31T10:40:11.837607+01:00 diff --git a/upstreamed/odoo/requirements.yaml b/upstreamed/odoo/requirements.yaml index 4ead27b14..2408f3065 100644 --- a/upstreamed/odoo/requirements.yaml +++ b/upstreamed/odoo/requirements.yaml @@ -1,5 +1,5 @@ dependencies: - name: postgresql condition: postgresql.enabled - version: 7.x.x + version: 8.x.x repository: https://kubernetes-charts.storage.googleapis.com/ From 7ab8e1fc6c415cce28ed0548850eadf01c530db9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andr=C3=A9s=20Bono?= Date: Fri, 31 Jan 2020 18:13:59 +0100 Subject: [PATCH 09/11] [bitnami/elasticsearch] Deploy master pods in parallel (#1875) * Bump major version * Add README indications to do the manual upgrade --- bitnami/elasticsearch/Chart.yaml | 2 +- bitnami/elasticsearch/README.md | 11 +++++++++++ .../elasticsearch/templates/master-statefulset.yaml | 1 + 3 files changed, 13 insertions(+), 1 deletion(-) diff --git a/bitnami/elasticsearch/Chart.yaml b/bitnami/elasticsearch/Chart.yaml index 7c3d64d4c..9f7dc3a4c 100644 --- a/bitnami/elasticsearch/Chart.yaml +++ b/bitnami/elasticsearch/Chart.yaml @@ -1,6 +1,6 @@ apiVersion: v1 name: elasticsearch -version: 10.3.6 +version: 11.0.0 appVersion: 7.5.2 description: A highly scalable open-source full-text search and analytics engine keywords: diff --git a/bitnami/elasticsearch/README.md b/bitnami/elasticsearch/README.md index 8a4470019..09c8a5079 100644 --- a/bitnami/elasticsearch/README.md +++ b/bitnami/elasticsearch/README.md @@ -477,6 +477,17 @@ You can enable this initContainer by setting `volumePermissions.enabled` to `tru ## Notable changes +### 11.0.0 + +Elasticsearch master pods are now deployed in parallel in order to bootstrap de cluster and be discovered. + +The field `podManagementPolicy` can't be updated in a StatefulSet, so you need to destroy it before you upgrade the chart to this version. + +```console +$ kubectl delete statefulset elasticsearch-master +$ helm upgrade bitnami/elasticsearch +``` + ### 10.0.0 In this version, Kibana was added as dependant chart. More info about how to enable and work with this bundled Kibana in the ["Enable bundled Kibana"](#enable-bundled-kibana) section. diff --git a/bitnami/elasticsearch/templates/master-statefulset.yaml b/bitnami/elasticsearch/templates/master-statefulset.yaml index 953e65e16..974261f3f 100644 --- a/bitnami/elasticsearch/templates/master-statefulset.yaml +++ b/bitnami/elasticsearch/templates/master-statefulset.yaml @@ -14,6 +14,7 @@ spec: matchLabels: {{- include "elasticsearch.matchLabels" . | nindent 6 }} role: master serviceName: {{ template "elasticsearch.master.fullname" . }} + podManagementPolicy: Parallel replicas: {{ .Values.master.replicas }} template: metadata: From 9b4ab0cd21d47e2b3491b3f993d2bd612c7c99c4 Mon Sep 17 00:00:00 2001 From: Bitnami Containers Date: Sat, 1 Feb 2020 02:12:05 +0000 Subject: [PATCH 10/11] [bitnami/fluentd] Release 0.4.10 updating components versions Signed-off-by: Bitnami Containers --- bitnami/fluentd/Chart.yaml | 4 ++-- bitnami/fluentd/values-production.yaml | 2 +- bitnami/fluentd/values.yaml | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/bitnami/fluentd/Chart.yaml b/bitnami/fluentd/Chart.yaml index 1ead5a9f8..4f051d808 100644 --- a/bitnami/fluentd/Chart.yaml +++ b/bitnami/fluentd/Chart.yaml @@ -1,7 +1,7 @@ apiVersion: v1 name: fluentd -version: 0.4.9 -appVersion: 1.9.0 +version: 0.4.10 +appVersion: 1.9.1 description: Fluentd is an open source data collector for unified logging layer keywords: - fluentd diff --git a/bitnami/fluentd/values-production.yaml b/bitnami/fluentd/values-production.yaml index a9c5fd9aa..9cb586f9a 100644 --- a/bitnami/fluentd/values-production.yaml +++ b/bitnami/fluentd/values-production.yaml @@ -13,7 +13,7 @@ global: {} image: registry: docker.io repository: bitnami/fluentd - tag: 1.9.0-debian-10-r0 + tag: 1.9.1-debian-10-r0 ## Specify a imagePullPolicy ## Defaults to 'Always' if image tag is 'latest', else set to 'IfNotPresent' ## ref: http://kubernetes.io/docs/user-guide/images/#pre-pulling-images diff --git a/bitnami/fluentd/values.yaml b/bitnami/fluentd/values.yaml index 7d82ab218..a9c3eba70 100644 --- a/bitnami/fluentd/values.yaml +++ b/bitnami/fluentd/values.yaml @@ -13,7 +13,7 @@ global: {} image: registry: docker.io repository: bitnami/fluentd - tag: 1.9.0-debian-10-r0 + tag: 1.9.1-debian-10-r0 ## Specify a imagePullPolicy ## Defaults to 'Always' if image tag is 'latest', else set to 'IfNotPresent' ## ref: http://kubernetes.io/docs/user-guide/images/#pre-pulling-images From 4247a4803961e8ac840a312fc32b6afdda3f530a Mon Sep 17 00:00:00 2001 From: Bitnami Containers Date: Sun, 2 Feb 2020 08:03:37 +0000 Subject: [PATCH 11/11] [bitnami/memcached] Release 4.2.3 updating components versions Signed-off-by: Bitnami Containers --- bitnami/memcached/Chart.yaml | 4 ++-- bitnami/memcached/values-production.yaml | 4 ++-- bitnami/memcached/values.yaml | 4 ++-- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/bitnami/memcached/Chart.yaml b/bitnami/memcached/Chart.yaml index 94ca95ff0..d7dc5f57e 100644 --- a/bitnami/memcached/Chart.yaml +++ b/bitnami/memcached/Chart.yaml @@ -1,7 +1,7 @@ apiVersion: v1 name: memcached -version: 4.2.2 -appVersion: 1.5.21 +version: 4.2.3 +appVersion: 1.5.22 description: Chart for Memcached keywords: - memcached diff --git a/bitnami/memcached/values-production.yaml b/bitnami/memcached/values-production.yaml index 5ca50d7fb..a0c756754 100644 --- a/bitnami/memcached/values-production.yaml +++ b/bitnami/memcached/values-production.yaml @@ -13,7 +13,7 @@ image: registry: docker.io repository: bitnami/memcached - tag: 1.5.21-debian-10-r0 + tag: 1.5.22-debian-10-r0 ## Specify a imagePullPolicy ## Defaults to 'Always' if image tag is 'latest', else set to 'IfNotPresent' ## ref: http://kubernetes.io/docs/user-guide/images/#pre-pulling-images @@ -170,7 +170,7 @@ metrics: image: registry: docker.io repository: bitnami/memcached-exporter - tag: 0.6.0-debian-10-r0 + tag: 0.6.0-debian-10-r7 pullPolicy: IfNotPresent ## Optionally specify an array of imagePullSecrets. ## Secrets must be manually created in the namespace. diff --git a/bitnami/memcached/values.yaml b/bitnami/memcached/values.yaml index 7e72a3c67..b7ec7cd2c 100644 --- a/bitnami/memcached/values.yaml +++ b/bitnami/memcached/values.yaml @@ -13,7 +13,7 @@ image: registry: docker.io repository: bitnami/memcached - tag: 1.5.21-debian-10-r0 + tag: 1.5.22-debian-10-r0 ## Specify a imagePullPolicy ## Defaults to 'Always' if image tag is 'latest', else set to 'IfNotPresent' ## ref: http://kubernetes.io/docs/user-guide/images/#pre-pulling-images @@ -170,7 +170,7 @@ metrics: image: registry: docker.io repository: bitnami/memcached-exporter - tag: 0.6.0-debian-10-r0 + tag: 0.6.0-debian-10-r7 pullPolicy: IfNotPresent ## Optionally specify an array of imagePullSecrets. ## Secrets must be manually created in the namespace.