diff --git a/ingress/templates/service-ingress-metrics-exporter.yaml b/ingress/templates/service-ingress-metrics-exporter.yaml new file mode 100644 index 0000000000..3637e13b9d --- /dev/null +++ b/ingress/templates/service-ingress-metrics-exporter.yaml @@ -0,0 +1,38 @@ +{{/* +Copyright 2017 The Openstack-Helm Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/}} + +{{- if .Values.manifests.monitoring.prometheus.service_exporter }} +{{- if .Values.monitoring.prometheus.enabled }} +{{- $envAll := . }} +{{- $prometheus_annotations := $envAll.Values.monitoring.prometheus.ingress_exporter }} +--- +apiVersion: v1 +kind: Service +metadata: + name: {{ tuple "ingress_exporter" "internal" . | include "helm-toolkit.endpoints.hostname_short_endpoint_lookup" }} + labels: +{{ tuple $envAll "ingress_exporter" "metrics" | include "helm-toolkit.snippets.kubernetes_metadata_labels" | indent 4 }} + annotations: +{{- if .Values.monitoring.prometheus.enabled }} +{{ tuple $prometheus_annotations | include "helm-toolkit.snippets.prometheus_service_annotations" | indent 4 }} +{{- end }} +spec: + ports: + - name: metrics + port: {{ .Values.endpoints.ingress_exporter.port.metrics.default }} + selector: +{{ tuple $envAll "ingress" "server" | include "helm-toolkit.snippets.kubernetes_metadata_labels" | indent 4 }}{{- end }} +{{- end }} \ No newline at end of file diff --git a/ingress/values.yaml b/ingress/values.yaml index 5e4e469ec6..b427440ed2 100644 --- a/ingress/values.yaml +++ b/ingress/values.yaml @@ -96,6 +96,12 @@ dependencies: ingress: jobs: null +monitoring: + prometheus: + enabled: true + ingress_exporter: + scrape: true + endpoints: cluster_domain_suffix: cluster.local ingress: @@ -109,6 +115,19 @@ endpoints: default: 80 https: default: 443 + ingress_exporter: + namespace: null + hosts: + default: ingress-exporter + host_fqdn_override: + default: null + path: + default: null + scheme: + default: 'http' + port: + metrics: + default: 10254 conf: controller: @@ -139,3 +158,6 @@ manifests: ingress: true service_error: true service_ingress: true + monitoring: + prometheus: + service_exporter: true