[stable/nats] Add prometheus exporter (#8382)

* [stable/nats] Add prometheus exporter

Signed-off-by: Javier J. Salmeron Garcia <jsalmeron@bitnami.com>

* Fix podannotation

Signed-off-by: Javier J. Salmeron Garcia <jsalmeron@bitnami.com>

* Bump chart again

Signed-off-by: Javier J. Salmeron Garcia <jsalmeron@bitnami.com>
This commit is contained in:
Javier J. Salmerón-García
2018-11-08 04:47:58 -08:00
committed by k8s-ci-robot
parent 632935c2a8
commit 65dffbc95e
6 changed files with 98 additions and 3 deletions
+1 -1
View File
@@ -1,5 +1,5 @@
name: nats
version: 1.1.2
version: 1.2.0
appVersion: 1.3.0
description: An open-source, cloud-native messaging system
keywords:
+9
View File
@@ -118,6 +118,15 @@ The following table lists the configurable parameters of the NATS chart and thei
| `networkPolicy.enabled` | Enable NetworkPolicy | `false` |
| `networkPolicy.allowExternal` | Allow external connections | `true` |
| `sidecars` | Attach additional containers to the pod. | `nil` |
| `metrics.enabled` | Start a side-car prometheus exporter | `false` |
| `metrics.image.registry` | MongoDB exporter image registry | `docker.io` |
| `metrics.image.repository` | MongoDB exporter image name | `appcelerator/prometheus-nats-exporter` |
| `metrics.image.tag` | MongoDB exporter image tag | `0.17.0` |
| `metrics.image.pullPolicy` | Image pull policy | `IfNotPresent` |
| `metrics.image.pullSecrets` | Specify docker-registry secret names as an array | `nil` |
| `metrics.podAnnotations` | Additional annotations for Metrics exporter pod | {} |
| `metrics.resources` | Exporter resource requests/limit | Memory: `256Mi`, CPU: `100m` |
Specify each parameter using the `--set key=value[,key=value]` argument to `helm install`. For example,
+10
View File
@@ -61,3 +61,13 @@ Return the appropriate apiVersion for networkpolicy.
{{- print "networking.k8s.io/v1" -}}
{{- end -}}
{{- end -}}
{{/*
Return the proper image name (for the metrics image)
*/}}
{{- define "metrics.image" -}}
{{- $registryName := .Values.metrics.image.registry -}}
{{- $repositoryName := .Values.metrics.image.repository -}}
{{- $tag := .Values.metrics.image.tag | toString -}}
{{- printf "%s/%s:%s" $registryName $repositoryName $tag -}}
{{- end -}}
+30 -2
View File
@@ -29,10 +29,15 @@ spec:
{{- if .Values.podLabels }}
{{ toYaml .Values.podLabels | indent 8 }}
{{- end }}
{{- if .Values.podAnnotations }}
{{- if or .Values.podAnnotations .Values.metrics.enabled }}
annotations:
{{- if .Values.podAnnotations }}
{{ toYaml .Values.podAnnotations | indent 8 }}
{{- end }}
{{- end }}
{{- if .Values.metrics.podAnnotations }}
{{ toYaml .Values.metrics.podAnnotations | indent 8 }}
{{- end }}
{{- end }}
spec:
{{- if .Values.image.pullSecrets }}
imagePullSecrets:
@@ -122,6 +127,29 @@ spec:
{{- if .Values.sidecars }}
{{ toYaml .Values.sidecars | indent 6 }}
{{- end }}
{{- if .Values.metrics.enabled }}
- name: metrics
image: {{ template "metrics.image" . }}
imagePullPolicy: {{ .Values.metrics.image.pullPolicy | quote }}
command: [ '/prometheus-nats-exporter', '-varz', 'http://localhost:{{ .Values.monitoringService.port }}' ]
ports:
- name: metrics
containerPort: 7777
livenessProbe:
httpGet:
path: /metrics
port: metrics
initialDelaySeconds: 15
timeoutSeconds: 5
readinessProbe:
httpGet:
path: /metrics
port: metrics
initialDelaySeconds: 5
timeoutSeconds: 1
resources:
{{ toYaml .Values.metrics.resources | indent 10 }}
{{- end }}
volumes:
- name: config
configMap:
+24
View File
@@ -255,3 +255,27 @@ sidecars:
# ports:
# - name: portname
# containerPort: 1234
## Prometheus Exporter / Metrics
##
metrics:
enabled: true
image:
registry: docker.io
repository: appcelerator/prometheus-nats-exporter
tag: 0.17.0
pullPolicy: IfNotPresent
## Optionally specify an array of imagePullSecrets.
## Secrets must be manually created in the namespace.
## ref: https://kubernetes.io/docs/tasks/configure-pod-container/pull-image-private-registry/
##
# pullSecrets:
# - myRegistrKeySecretName
## Metrics exporter resource requests and limits
## ref: http://kubernetes.io/docs/user-guide/compute-resources/
##
# resources: {}
## Metrics exporter pod Annotation
podAnnotations:
prometheus.io/scrape: "true"
prometheus.io/port: "7777"
+24
View File
@@ -259,3 +259,27 @@ sidecars:
# ports:
# - name: portname
# containerPort: 1234
## Prometheus Exporter / Metrics
##
metrics:
enabled: false
image:
registry: docker.io
repository: appcelerator/prometheus-nats-exporter
tag: 0.17.0
pullPolicy: IfNotPresent
## Optionally specify an array of imagePullSecrets.
## Secrets must be manually created in the namespace.
## ref: https://kubernetes.io/docs/tasks/configure-pod-container/pull-image-private-registry/
##
# pullSecrets:
# - myRegistrKeySecretName
## Metrics exporter resource requests and limits
## ref: http://kubernetes.io/docs/user-guide/compute-resources/
##
# resources: {}
## Metrics exporter pod Annotation
podAnnotations:
prometheus.io/scrape: "true"
prometheus.io/port: "7777"