Skip to content

Commit d43e49c

Browse files
Merge branch 'main' into APICP_20251017
2 parents 31f320b + 23735b2 commit d43e49c

File tree

7 files changed

+16
-4
lines changed

7 files changed

+16
-4
lines changed

apigateway/helm/Chart.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@ type: application
3333
# This is the chart version. This version number should be incremented each time you make changes
3434
# to the chart and its templates, including the app version.
3535
# Versions are expected to follow Semantic Versioning (https://semver.org/)
36-
version: 3.3.1
36+
version: 3.4.0
3737

3838
# This is the version number of the application being deployed. This version number should be
3939
# incremented each time you make changes to the application. Versions are not expected to

apigateway/helm/README.md

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -180,6 +180,7 @@ Sub-folder `examples` contains some *values* examples for more use-cases. To use
180180
| `3.2.0` | Added minor changes and example values for API Gateway 11.1 |
181181
| `3.3.0` | Install Elasticsearch Plugins behind a Proxy. See `extraCmdPluginInstaller` |
182182
| `3.3.1` | Setting of environment variable in Job template fixed. |
183+
| `3.4.0` | The Service Monitor supports the setting of `fallbackScrapeProtocol`. This allows newer Prometheus server versions 3.x to scrape metrics from API Gateway. See [Prometheus configuration](https://prometheus.io/docs/prometheus/latest/configuration/configuration/#scrape_config) for more information. Set the port `apigw.adminPort` to empty value if you don't want to expose the administration port as a service.|
183184

184185
## Chart Version `3.0.0`
185186

@@ -215,7 +216,7 @@ kubectl delete deployment <Helm-release-name>-prometheus-elasticsearch-exporter
215216
| Key | Type | Default | Description |
216217
|-----|------|---------|-------------|
217218
| affinity | object | `{}` | Set Pod (anti-) affinity for APIGW. You can use templates inside because `tpl` function is called for rendering. |
218-
| apigw.adminPort | int | `5555` | The default administration port. Note in a default installation this port will also be used for runtime traffic. |
219+
| apigw.adminPort | int | `5555` | The default administration port. Note in a default installation this port will also be used for runtime traffic. Set the port to empty value if you don't want to expose the administration port as a service. |
219220
| apigw.adminSecretKey | string | `""` | The key that holds the admin secret key; defauls to "password" |
220221
| apigw.adminSecretName | string | `""` | The secret that holds the admin password Depends on secrets.genereateAdminSecret; if true the setting will be ignored. |
221222
| apigw.apigwAdminService | string | `"apigw-admin-svc"` | |
@@ -430,13 +431,14 @@ kubectl delete deployment <Helm-release-name>-prometheus-elasticsearch-exporter
430431
| podDisruptionBudget | object | `{"enabled":false}` | Create a PodDisruptionBudget for API Gateway |
431432
| podSecurityContext | object | `{}` | |
432433
| priorityClassName | string | `""` | Set APIGW and Nginx Pods' Priority Class Name ref: https://kubernetes.io/docs/concepts/configuration/pod-priority-preemption/ |
433-
| prometheus | object | `{"interval":"10s","path":"/metrics","port":"5555","scheme":"http","scrape":"true","scrapeTimeout":"10s"}` | Define values for Prometheus Operator to scrap metrics via annotation or ServiceMonitor. |
434+
| prometheus | object | `{"fallbackScrapeProtocol":null,"interval":"10s","path":"/metrics","port":"5555","scheme":"http","scrape":"true","scrapeTimeout":"10s"}` | Define values for Prometheus Operator to scrap metrics via annotation or ServiceMonitor. |
434435
| prometheus-elasticsearch-exporter | object | `{"enabled":true,"es":{"uri":"http://$(ES_USER):$(ES_PASSWORD)@{{ printf \"%s\" .Release.Name }}-apigateway-es-http:9200"},"extraEnvSecrets":{"ES_PASSWORD":{"key":"password","secret":"{{ printf \"%s-apigateway-sag-user-es\" .Release.Name }}"},"ES_USER":{"key":"username","secret":"{{ printf \"%s-apigateway-sag-user-es\" .Release.Name }}"}},"podAnnotations":{"prometheus.io/path":"/metrics","prometheus.io/port":"9108","prometheus.io/scheme":"http","prometheus.io/scrape":"true"},"podSecurityContext":{"runAsNonRoot":true,"runAsUser":1000730001},"revisionHistoryLimit":10,"serviceAccount":{"name":""},"serviceMonitor":{"enabled":false}}` | Elasticsearch exporter settings. See https://github.com/prometheus-community/elasticsearch_exporter for details. |
435436
| prometheus-elasticsearch-exporter.enabled | bool | `true` | Deploy the prometheus exporter for elasticsearch |
436437
| prometheus-elasticsearch-exporter.es.uri | string | `"http://$(ES_USER):$(ES_PASSWORD)@{{ printf \"%s\" .Release.Name }}-apigateway-es-http:9200"` | The uri of the elasticsearch service. By default this is null and the environment variable ES_URI is used instead. Overwrite this if you are using an external Elasticsearch instance |
437438
| prometheus-elasticsearch-exporter.extraEnvSecrets | object | `{"ES_PASSWORD":{"key":"password","secret":"{{ printf \"%s-apigateway-sag-user-es\" .Release.Name }}"},"ES_USER":{"key":"username","secret":"{{ printf \"%s-apigateway-sag-user-es\" .Release.Name }}"}}` | secret for elasticsearch user. Will need to adjust the secret's name. By default the secret name is <releasename>-apigateway-sag-user-es. Adjust accordingly if your release name is different. |
438439
| prometheus-elasticsearch-exporter.podSecurityContext.runAsUser | int | `1000730001` | Enter value {1000770001} from UID range of an OpenShift Project. |
439440
| prometheus-elasticsearch-exporter.revisionHistoryLimit | int | `10` | The number of old ReplicaSets to retain to allow rollback. |
441+
| prometheus.fallbackScrapeProtocol | string | `nil` | Setup Prometheus scrape protocol. Set value `PrometheusText0.0.4` here if you are using Prometheus server version 3.x. See [Prometheus configuration](https://prometheus.io/docs/prometheus/latest/configuration/configuration/#scrape_config). |
440442
| replicaCount | int | `1` | |
441443
| resources.apigwContainer.limits.cpu | int | `8` | |
442444
| resources.apigwContainer.limits.memory | string | `"8Gi"` | |

apigateway/helm/README.md.gotmpl

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -180,6 +180,7 @@ Sub-folder `examples` contains some *values* examples for more use-cases. To use
180180
| `3.2.0` | Added minor changes and example values for API Gateway 11.1 |
181181
| `3.3.0` | Install Elasticsearch Plugins behind a Proxy. See `extraCmdPluginInstaller` |
182182
| `3.3.1` | Setting of environment variable in Job template fixed. |
183+
| `3.4.0` | The Service Monitor supports the setting of `fallbackScrapeProtocol`. This allows newer Prometheus server versions 3.x to scrape metrics from API Gateway. See [Prometheus configuration](https://prometheus.io/docs/prometheus/latest/configuration/configuration/#scrape_config) for more information. Set the port `apigw.adminPort` to empty value if you don't want to expose the administration port as a service.|
183184

184185
## Chart Version `3.0.0`
185186

apigateway/helm/templates/deployment.yaml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -174,9 +174,11 @@ spec:
174174
- containerPort: {{ int .Values.apigw.uiPort }}
175175
name: ui-http
176176
protocol: TCP
177+
{{- if .Values.apigw.adminPort }}
177178
- containerPort: {{ int .Values.apigw.adminPort }}
178179
name: admin-http
179180
protocol: TCP
181+
{{- end }}
180182
- containerPort: {{ int .Values.apigw.runtimeExternalPort }}
181183
name: external-http
182184
protocol: TCP

apigateway/helm/templates/service.yaml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -39,6 +39,7 @@ spec:
3939
{{- end }}
4040
selector:
4141
{{- include "common.labels.matchLabels" . | nindent 4}}
42+
{{- if .Values.apigw.adminPort }}
4243
---
4344
apiVersion: v1
4445
kind: Service
@@ -62,6 +63,7 @@ spec:
6263
{{- end }}
6364
selector:
6465
{{- include "common.labels.matchLabels" . | nindent 4}}
66+
{{- end }}
6567
---
6668
apiVersion: v1
6769
kind: Service

apigateway/helm/templates/servicemonitor.yaml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,9 @@ spec:
3535
scrapeTimeout: {{ .Values.prometheus.scrapeTimeout }}
3636
tlsConfig:
3737
insecureSkipVerify: true
38+
{{- if .Values.prometheus.fallbackScrapeProtocol }}
39+
fallbackScrapeProtocol: {{ .Values.prometheus.fallbackScrapeProtocol }}
40+
{{- end }}
3841
jobLabel: {{ .Release.Name }}
3942
namespaceSelector:
4043
matchNames:

apigateway/helm/values.yaml

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -343,7 +343,7 @@ apigw:
343343
diagPort: 9999
344344
# -- The default API Administration UI port
345345
uiPort: 9072
346-
# -- The default administration port. Note in a default installation this port will also be used for runtime traffic.
346+
# -- The default administration port. Note in a default installation this port will also be used for runtime traffic. Set the port to empty value if you don't want to expose the administration port as a service.
347347
adminPort: 5555
348348
# -- External Runtime Port for Reverse Invoke Setups. This port must be manually setup after API Gateway was initizalized.
349349
runtimeExternalPort: 6555
@@ -503,6 +503,8 @@ prometheus:
503503
interval: 10s
504504
## -- Only used on ServiceMonitor
505505
scrapeTimeout: 10s
506+
# -- Setup Prometheus scrape protocol. Set value `PrometheusText0.0.4` here if you are using Prometheus server version 3.x. See [Prometheus configuration](https://prometheus.io/docs/prometheus/latest/configuration/configuration/#scrape_config).
507+
fallbackScrapeProtocol:
506508

507509
serviceMonitor:
508510
# -- Create and enable CRD ServiceMonitor. The default is `false`.

0 commit comments

Comments
 (0)