[bitnami/sealed-secrets] fix: 🐛 ServiceMonitor endpoint (#24653)

* [bitnami/postgresql] Release 15.1.4 updating components versions (#24641)

Signed-off-by: Bitnami Containers <bitnami-bot@vmware.com>
Signed-off-by: AneurinPrice <adp@nyeprice.space>

* Squash Commits

Signed-off-by: AneurinPrice <adp@nyeprice.space>

* Revert zookeeper and conform to bitnami standards

Signed-off-by: AneurinPrice <adp@nyeprice.space>

* Update README.md with readme-generator-for-helm

Signed-off-by: Bitnami Containers <bitnami-bot@vmware.com>
Signed-off-by: AneurinPrice <adp@nyeprice.space>

* reset zookeeper

Signed-off-by: AneurinPrice <adp@nyeprice.space>

* and readme

Signed-off-by: AneurinPrice <adp@nyeprice.space>

* and readme

Signed-off-by: AneurinPrice <adp@nyeprice.space>

* fix comments

Signed-off-by: AneurinPrice <adp@nyeprice.space>

* enable -> enabled

Signed-off-by: AneurinPrice <adp@nyeprice.space>

* Update README.md with readme-generator-for-helm

Signed-off-by: Bitnami Containers <bitnami-bot@vmware.com>
Signed-off-by: AneurinPrice <adp@nyeprice.space>

* Update values.yaml

Signed-off-by: Aneurin Price <adp@nyeprice.space>

* Update Chart.yaml

Signed-off-by: Aneurin Price <adp@nyeprice.space>

* Update README.md with readme-generator-for-helm

Signed-off-by: Bitnami Containers <bitnami-bot@vmware.com>

* Bump chart version

Signed-off-by: Miguel Ruiz <miruiz@vmware.com>

Signed-off-by: Miguel Ruiz <miruiz@vmware.com>

---------

Signed-off-by: Bitnami Containers <bitnami-bot@vmware.com>
Signed-off-by: AneurinPrice <adp@nyeprice.space>
Signed-off-by: Aneurin Price <adp@nyeprice.space>
Signed-off-by: Miguel Ruiz <miruiz@vmware.com>
Co-authored-by: Bitnami Bot <bitnami-bot@vmware.com>
Co-authored-by: Miguel Ruiz <miruiz@vmware.com>
This commit is contained in:
Aneurin Price
2024-05-07 12:00:11 +01:00
committed by GitHub
parent f618f36a82
commit b00508c381
7 changed files with 118 additions and 15 deletions

View File

@@ -29,4 +29,4 @@ name: sealed-secrets
sources:
- https://github.com/bitnami/charts/tree/main/bitnami/sealed-secrets
- https://github.com/bitnami-labs/sealed-secrets
version: 2.0.2
version: 2.1.0

View File

@@ -218,6 +218,7 @@ As an alternative, use one of the preset configurations for pod affinity, pod an
| `privateKeyLabels` | Map of labels to be set on the sealing keypairs | `{}` |
| `logInfoStdout` | Specifies whether the Sealed Secrets controller will log info to stdout | `false` |
| `containerPorts.http` | Controller HTTP container port to open | `8080` |
| `containerPorts.metrics` | Controller metrics container port | `8081` |
| `resourcesPreset` | Set container resources according to one common preset (allowed values: none, nano, micro, small, medium, large, xlarge, 2xlarge). This is ignored if resources is set (resources is recommended for production). | `nano` |
| `resources` | Set container requests and limits for different resources like CPU or memory (essential for production workloads) | `{}` |
| `livenessProbe.enabled` | Enable livenessProbe on Sealed Secret containers | `true` |
@@ -338,19 +339,29 @@ As an alternative, use one of the preset configurations for pod affinity, pod an
### Metrics parameters
| Name | Description | Value |
| ------------------------------------------ | -------------------------------------------------------------------------------- | ------- |
| `metrics.serviceMonitor.enabled` | Specify if a ServiceMonitor will be deployed for Prometheus Operator | `false` |
| `metrics.serviceMonitor.namespace` | Namespace in which Prometheus is running | `""` |
| `metrics.serviceMonitor.labels` | Extra labels for the ServiceMonitor | `{}` |
| `metrics.serviceMonitor.annotations` | Additional ServiceMonitor annotations (evaluated as a template) | `{}` |
| `metrics.serviceMonitor.jobLabel` | The name of the label on the target service to use as the job name in Prometheus | `""` |
| `metrics.serviceMonitor.honorLabels` | honorLabels chooses the metric's labels on collisions with target labels | `false` |
| `metrics.serviceMonitor.interval` | Interval at which metrics should be scraped. | `""` |
| `metrics.serviceMonitor.scrapeTimeout` | Timeout after which the scrape is ended | `""` |
| `metrics.serviceMonitor.metricRelabelings` | Specify additional relabeling of metrics | `[]` |
| `metrics.serviceMonitor.relabelings` | Specify general relabeling | `[]` |
| `metrics.serviceMonitor.selector` | Prometheus instance selector labels | `{}` |
| Name | Description | Value |
| ------------------------------------------ | -------------------------------------------------------------------------------- | ----------- |
| `metrics.enabled` | Sealed Secrets toggle metrics service definition | `false` |
| `metrics.service.type` | Sealed Secrets metrics service type | `ClusterIP` |
| `metrics.service.ports.metrics` | Sealed Secrets metrics service port | `8081` |
| `metrics.service.externalTrafficPolicy` | Sealed Secrets metrics service external traffic policy | `Cluster` |
| `metrics.service.extraPorts` | Extra ports to expose (normally used with the `sidecar` value) | `[]` |
| `metrics.service.loadBalancerIP` | Sealed Secrets metrics service Load Balancer IP | `""` |
| `metrics.service.loadBalancerSourceRanges` | Sealed Secrets metrics service Load Balancer sources | `[]` |
| `metrics.service.annotations` | Additional custom annotations for Sealed Secrets metrics service | `{}` |
| `metrics.serviceMonitor.enabled` | Specify if a ServiceMonitor will be deployed for Prometheus Operator | `false` |
| `metrics.serviceMonitor.namespace` | Namespace in which Prometheus is running | `""` |
| `metrics.serviceMonitor.port.number` | Port number for the serviceMonitor | `8081` |
| `metrics.serviceMonitor.port.name` | Port name for the serviceMonitor | `metrics` |
| `metrics.serviceMonitor.labels` | Extra labels for the ServiceMonitor | `{}` |
| `metrics.serviceMonitor.annotations` | Additional ServiceMonitor annotations (evaluated as a template) | `{}` |
| `metrics.serviceMonitor.jobLabel` | The name of the label on the target service to use as the job name in Prometheus | `""` |
| `metrics.serviceMonitor.honorLabels` | honorLabels chooses the metric's labels on collisions with target labels | `false` |
| `metrics.serviceMonitor.interval` | Interval at which metrics should be scraped. | `""` |
| `metrics.serviceMonitor.scrapeTimeout` | Timeout after which the scrape is ended | `""` |
| `metrics.serviceMonitor.metricRelabelings` | Specify additional relabeling of metrics | `[]` |
| `metrics.serviceMonitor.relabelings` | Specify general relabeling | `[]` |
| `metrics.serviceMonitor.selector` | Prometheus instance selector labels | `{}` |
Specify each parameter using the `--set key=value[,key=value]` argument to `helm install`. For example,

View File

@@ -161,6 +161,11 @@ spec:
- name: http
containerPort: {{ .Values.containerPorts.http }}
protocol: TCP
{{- if .Values.metrics.enabled }}
- name: metrics
containerPort: {{ .Values.containerPorts.metrics }}
protocol: TCP
{{- end }}
{{- if .Values.resources }}
resources: {{- toYaml .Values.resources | nindent 12 }}
{{- else if ne .Values.resourcesPreset "none" }}

View File

@@ -0,0 +1,40 @@
{{- /*
Copyright VMware, Inc.
SPDX-License-Identifier: APACHE-2.0
*/}}
{{- if .Values.metrics.enabled }}
apiVersion: v1
kind: Service
metadata:
name: {{ printf "%s-metrics" (include "common.names.fullname" .) | trunc 63 | trimSuffix "-" }}
namespace: {{ .Release.Namespace | quote }}
labels: {{- include "common.labels.standard" ( dict "customLabels" .Values.commonLabels "context" $ ) | nindent 4 }}
app.kubernetes.io/component: metrics
{{- if or .Values.metrics.service.annotations .Values.commonAnnotations }}
{{- $annotations := include "common.tplvalues.merge" ( dict "values" ( list .Values.metrics.service.annotations .Values.commonAnnotations ) "context" . ) }}
annotations: {{- include "common.tplvalues.render" ( dict "value" $annotations "context" $) | nindent 4 }}
{{- end }}
spec:
type: {{ .Values.metrics.service.type }}
{{- if eq .Values.metrics.service.type "LoadBalancer" }}
externalTrafficPolicy: {{ .Values.metrics.service.externalTrafficPolicy }}
{{- end }}
{{- if and (eq .Values.metrics.service.type "LoadBalancer") .Values.metrics.service.loadBalancerIP }}
loadBalancerIP: {{ .Values.metrics.service.loadBalancerIP }}
{{- end }}
{{- if and (eq .Values.metrics.service.type "LoadBalancer") .Values.metrics.service.loadBalancerSourceRanges }}
loadBalancerSourceRanges: {{- toYaml .Values.metrics.service.loadBalancerSourceRanges | nindent 4 }}
{{- end }}
ports:
- name: metrics
port: {{ .Values.metrics.service.ports.metrics }}
protocol: TCP
targetPort: metrics
{{- if .Values.metrics.service.extraPorts }}
{{- include "common.tplvalues.render" (dict "value" .Values.metrics.service.extraPorts "context" $) | nindent 4 }}
{{- end }}
{{- $podLabels := include "common.tplvalues.merge" ( dict "values" ( list .Values.podLabels .Values.commonLabels ) "context" . ) }}
selector: {{- include "common.labels.matchLabels" ( dict "customLabels" $podLabels "context" $ ) | nindent 4 }}
{{- end }}

View File

@@ -43,6 +43,11 @@ spec:
{{- else if eq .Values.service.type "ClusterIP" }}
nodePort: null
{{- end }}
{{- if .Values.metrics.serviceMonitor.enabled }}
- port: {{ .Values.metrics.serviceMonitor.port.number }}
name: {{ .Values.metrics.serviceMonitor.port.name }}
targetPort: 8081
{{- end }}
{{- if .Values.service.extraPorts }}
{{- include "common.tplvalues.render" (dict "value" .Values.service.extraPorts "context" $) | nindent 4 }}
{{- end }}

View File

@@ -23,7 +23,7 @@ spec:
{{- include "common.tplvalues.render" (dict "value" .Values.metrics.serviceMonitor.selector "context" $) | nindent 6 }}
{{- end }}
endpoints:
- port: {{ .Values.service.ports.name }}
- port: {{ .Values.metrics.serviceMonitor.port.name }}
{{- if .Values.metrics.serviceMonitor.interval }}
interval: {{ .Values.metrics.serviceMonitor.interval }}
{{- end }}

View File

@@ -138,9 +138,11 @@ privateKeyLabels: {}
##
logInfoStdout: false
## @param containerPorts.http Controller HTTP container port to open
## @param containerPorts.metrics Controller metrics container port
##
containerPorts:
http: 8080
metrics: 8081
## Sealed Secret resource requests and limits
## ref: http://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/
## @param resourcesPreset Set container resources according to one common preset (allowed values: none, nano, micro, small, medium, large, xlarge, 2xlarge). This is ignored if resources is set (resources is recommended for production).
@@ -614,6 +616,41 @@ pdb:
## @section Metrics parameters
##
metrics:
## @param metrics.enabled Sealed Secrets toggle metrics service definition
enabled: false
service:
## @param metrics.service.type Sealed Secrets metrics service type
##
type: ClusterIP
## @param metrics.service.ports.metrics Sealed Secrets metrics service port
##
ports:
metrics: 8081
## @param metrics.service.externalTrafficPolicy Sealed Secrets metrics service external traffic policy
## ref: https://kubernetes.io/docs/tasks/access-application-cluster/create-external-load-balancer/#preserving-the-client-source-ip
##
externalTrafficPolicy: Cluster
## @param metrics.service.extraPorts Extra ports to expose (normally used with the `sidecar` value)
##
extraPorts: []
## @param metrics.service.loadBalancerIP Sealed Secrets metrics service Load Balancer IP
## ref: https://kubernetes.io/docs/concepts/services-networking/service/#internal-load-balancer
##
loadBalancerIP: ""
## @param metrics.service.loadBalancerSourceRanges Sealed Secrets metrics service Load Balancer sources
## https://kubernetes.io/docs/tasks/access-application-cluster/configure-cloud-provider-firewall/#restrict-access-for-loadbalancer-service
## e.g.
## loadBalancerSourceRanges:
## - 10.10.10.0/24
##
loadBalancerSourceRanges: []
## @param metrics.service.annotations Additional custom annotations for Sealed Secrets metrics service
##
annotations: {}
## Prometheus Service Monitor
## ref: https://github.com/coreos/prometheus-operator
## https://github.com/coreos/prometheus-operator/blob/master/Documentation/api.md#endpoint
##
serviceMonitor:
## @param metrics.serviceMonitor.enabled Specify if a ServiceMonitor will be deployed for Prometheus Operator
##
@@ -621,6 +658,11 @@ metrics:
## @param metrics.serviceMonitor.namespace Namespace in which Prometheus is running
##
namespace: ""
port:
## @param metrics.serviceMonitor.port.number Port number for the serviceMonitor
name: "metrics"
## @param metrics.serviceMonitor.port.name Port name for the serviceMonitor
number: 8081
## @param metrics.serviceMonitor.labels Extra labels for the ServiceMonitor
##
labels: {}