Skip to content
This repository has been archived by the owner on Jul 11, 2023. It is now read-only.

Commit

Permalink
parameterize all images used in helm charts
Browse files Browse the repository at this point in the history
Update all the images used in the helm charts to be parameterized via
the values.yaml.

Fixes #4315

Signed-off-by: Sneha Chhabria <[email protected]>
  • Loading branch information
snehachhabria committed Oct 27, 2021
1 parent 30a2f05 commit 1dfa5ec
Show file tree
Hide file tree
Showing 9 changed files with 78 additions and 11 deletions.
5 changes: 5 additions & 0 deletions charts/osm/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -69,6 +69,7 @@ The following table lists the configurable parameters of the osm chart and their
| OpenServiceMesh.configResyncInterval | string | `"0s"` | Sets the resync interval for regular proxy broadcast updates, set to 0s to not enforce any resync |
| OpenServiceMesh.controlPlaneTolerations | list | `[]` | Node tolerations applied to control plane pods. The specified tolerations allow pods to schedule onto nodes with matching taints. |
| OpenServiceMesh.controllerLogLevel | string | `"info"` | Controller log verbosity |
| OpenServiceMesh.curlImage | string | `"curlimages/curl"` | Curl image for control plane init container |
| OpenServiceMesh.deployGrafana | bool | `false` | Deploy Grafana with OSM installation |
| OpenServiceMesh.deployJaeger | bool | `false` | Deploy Jaeger during OSM installation |
| OpenServiceMesh.deployPrometheus | bool | `false` | Deploy Prometheus with OSM installation |
Expand Down Expand Up @@ -99,7 +100,9 @@ The following table lists the configurable parameters of the osm chart and their
| OpenServiceMesh.fluentBit.tag | string | `"1.6.4"` | Fluent Bit sidecar image tag |
| OpenServiceMesh.fluentBit.workspaceId | string | `""` | WorkspaceId for Fluent Bit output plugin to Log Analytics |
| OpenServiceMesh.grafana.enableRemoteRendering | bool | `false` | Enable Remote Rendering in Grafana |
| OpenServiceMesh.grafana.image | string | `"grafana/grafana:7.0.1"` | Image used for Grafana |
| OpenServiceMesh.grafana.port | int | `3000` | Grafana service's port |
| OpenServiceMesh.grafana.rendererImage | string | `"grafana/grafana-image-renderer:2.0.0-beta1"` | Image used for Grafana Renderer |
| OpenServiceMesh.image.digest | object | `{"osmBootstrap":"","osmCRDs":"","osmController":"","osmInjector":"","osmSidecarInit":""}` | Image digest (defaults to latest compatible tag) |
| OpenServiceMesh.image.digest.osmBootstrap | string | `""` | osm-boostrap's image digest |
| OpenServiceMesh.image.digest.osmCRDs | string | `""` | osm-crds' image digest |
Expand Down Expand Up @@ -140,6 +143,7 @@ The following table lists the configurable parameters of the osm chart and their
| OpenServiceMesh.osmNamespace | string | `""` | Namespace to deploy OSM in. If not specified, the Helm release namespace is used. |
| OpenServiceMesh.outboundIPRangeExclusionList | list | `[]` | Specifies a global list of IP ranges to exclude from outbound traffic interception by the sidecar proxy. If specified, must be a list of IP ranges of the form a.b.c.d/x. |
| OpenServiceMesh.outboundPortExclusionList | list | `[]` | Specifies a global list of ports to exclude from outbound traffic interception by the sidecar proxy. If specified, must be a list of positive integers. |
| OpenServiceMesh.prometheus.image | string | `"prom/prometheus:v2.18.1"` | Image used for Prometheus |
| OpenServiceMesh.prometheus.port | int | `7070` | Prometheus service's port |
| OpenServiceMesh.prometheus.resources | object | `{"limits":{"cpu":"1","memory":"2G"},"requests":{"cpu":"0.5","memory":"512M"}}` | Prometheus's container resource parameters |
| OpenServiceMesh.prometheus.retention | object | `{"time":"15d"}` | Prometheus data rentention configuration |
Expand All @@ -149,6 +153,7 @@ The following table lists the configurable parameters of the osm chart and their
| OpenServiceMesh.tracing.address | string | `""` | Address of the tracing collector service (must contain the namespace). When left empty, this is computed in helper template to "jaeger.<osm-namespace>.svc.cluster.local". Please override for BYO-tracing as documented in tracing.md |
| OpenServiceMesh.tracing.enable | bool | `false` | Toggles Envoy's tracing functionality on/off for all sidecar proxies in the mesh |
| OpenServiceMesh.tracing.endpoint | string | `"/api/v2/spans"` | Tracing collector's API path where the spans will be sent to |
| OpenServiceMesh.tracing.image | string | `"jaegertracing/all-in-one"` | Image used for tracing |
| OpenServiceMesh.tracing.port | int | `9411` | Port of the tracing collector service |
| OpenServiceMesh.validatorWebhook.webhookConfigurationName | string | `""` | Name of the ValidatingWebhookConfiguration |
| OpenServiceMesh.vault.host | string | `""` | Hashicorp Vault host/service - where Vault is installed |
Expand Down
4 changes: 2 additions & 2 deletions charts/osm/templates/grafana-deployment.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@ spec:
kubernetes.io/os: linux
containers:
- name: grafana
image: "grafana/grafana:7.0.1"
image: {{.Values.OpenServiceMesh.grafana.image}}
imagePullPolicy: IfNotPresent
resources:
limits:
Expand Down Expand Up @@ -67,7 +67,7 @@ spec:
- name: GF_LOG_FILTERS
value: "rendering:debug"
- name: renderer
image: grafana/grafana-image-renderer:2.0.0-beta1
image: {{.Values.OpenServiceMesh.grafana.rendererImage}}
imagePullPolicy: IfNotPresent
resources:
limits:
Expand Down
2 changes: 1 addition & 1 deletion charts/osm/templates/jaeger-deployment.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ spec:
kubernetes.io/os: linux
containers:
- name: jaeger
image: jaegertracing/all-in-one
image: {{ .Values.OpenServiceMesh.tracing.image }}
args:
- --collector.zipkin.host-port={{ .Values.OpenServiceMesh.tracing.port }}
imagePullPolicy: IfNotPresent
Expand Down
2 changes: 1 addition & 1 deletion charts/osm/templates/osm-deployment.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,7 @@ spec:
kubernetes.io/os: linux
initContainers:
- name: init-osm-controller
image: curlimages/curl
image: {{ .Values.OpenServiceMesh.curlImage }}
args:
- /bin/sh
- -c
Expand Down
2 changes: 1 addition & 1 deletion charts/osm/templates/osm-injector-deployment.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@ spec:
kubernetes.io/os: linux
initContainers:
- name: init-osm-injector
image: curlimages/curl
image: {{ .Values.OpenServiceMesh.curlImage }}
args:
- /bin/sh
- -c
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ spec:
kubernetes.io/os: linux
initContainers:
- name: osm-multicluster-gateway-init
image: curlimages/curl
image: {{ .Values.OpenServiceMesh.curlImage }}
args:
- /bin/sh
- -c
Expand Down
2 changes: 1 addition & 1 deletion charts/osm/templates/prometheus-deployment.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@ spec:
- --storage.tsdb.path=/prometheus/
- --storage.tsdb.retention.time={{.Values.OpenServiceMesh.prometheus.retention.time}}
- --web.listen-address=:{{.Values.OpenServiceMesh.prometheus.port}}
image: prom/prometheus:v2.18.1
image: {{.Values.OpenServiceMesh.prometheus.image}}
imagePullPolicy: IfNotPresent
resources:
limits:
Expand Down
60 changes: 56 additions & 4 deletions charts/osm/values.schema.json
Original file line number Diff line number Diff line change
Expand Up @@ -133,6 +133,7 @@
"required": [
"image",
"sidecarImage",
"curlImage",
"caBundleSecretName",
"enableDebugServer",
"enablePermissiveTrafficPolicy",
Expand Down Expand Up @@ -304,6 +305,15 @@
"envoyproxy/envoy-alpine@sha256:6502a637c6c5fba4d03d0672d878d12da4bcc7a0d0fb3f1d506982dde0039abd"
]
},
"curlImage": {
"$id": "#/properties/OpenServiceMesh/properties/curlImage",
"type": "string",
"title": "The curlImage schema",
"description": "The curl image for control plane init containers.",
"examples": [
"curlimages/curl"
]
},
"sidecarWindowsImage": {
"$id": "#/properties/OpenServiceMesh/properties/sidecarWindowsImage",
"type": "string",
Expand Down Expand Up @@ -624,7 +634,8 @@
"enable",
"address",
"port",
"endpoint"
"endpoint",
"image"
],
"properties": {
"enable": {
Expand Down Expand Up @@ -664,6 +675,15 @@
"examples": [
"/api/v2/spans"
]
},
"image": {
"$id": "#/properties/OpenServiceMesh/properties/tracing/properties/image",
"type": "string",
"title": "Jaeger's image schema",
"description": "Image used for jaeger",
"examples": [
"jaegertracing/all-in-one"
]
}
},
"additionalProperties": false
Expand Down Expand Up @@ -983,7 +1003,9 @@
"description": "Grafana configuration parameters",
"required": [
"port",
"enableRemoteRendering"
"enableRemoteRendering",
"image",
"rendererImage"
],
"properties": {
"port": {
Expand All @@ -1005,12 +1027,32 @@
"examples": [
true
]
},
"image": {
"$id": "#/properties/OpenServiceMesh/properties/grafana/properties/image",
"type": "string",
"title": "Grafana's image schema",
"description": "Image used for Grafana",
"examples": [
"grafana/grafana:7.0.1"
]
},
"rendererImage": {
"$id": "#/properties/OpenServiceMesh/properties/grafana/properties/rendererImage",
"type": "string",
"title": "Grafana's rendererImage schema",
"description": "Renderer image used for Grafana",
"examples": [
"grafana/grafana-image-renderer:2.0.0-beta1"
]
}
},
"examples": [
{
"port": 3000,
"enableRemoteRendering": true
"enableRemoteRendering": true,
"image": "grafana/grafana:7.0.1",
"rendererImage": "grafana/grafana-image-renderer:2.0.0-beta1"
}
],
"additionalProperties": false
Expand Down Expand Up @@ -1112,7 +1154,8 @@
"required": [
"resources",
"port",
"retention"
"retention",
"image"
],
"properties": {
"resources": {
Expand Down Expand Up @@ -1148,6 +1191,15 @@
]
}
}
},
"image": {
"$id": "#/properties/OpenServiceMesh/properties/prometheus/properties/image",
"type": "string",
"title": "Prometheus's image schema",
"description": "Image used for Prometheus",
"examples": [
"prom/prometheus:v2.18.1"
]
}
},
"additionalProperties": false
Expand Down
10 changes: 10 additions & 0 deletions charts/osm/values.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -33,6 +33,8 @@ OpenServiceMesh:
sidecarImage: envoyproxy/envoy-alpine@sha256:6502a637c6c5fba4d03d0672d878d12da4bcc7a0d0fb3f1d506982dde0039abd
# -- Envoy sidecar image for Windows workloads (v1.19.1)
sidecarWindowsImage: envoyproxy/envoy-windows@sha256:c904fda95891ebbccb9b1f24c1a9482c8d01cbca215dd081fc8c8db36db85f85
# -- Curl image for control plane init container
curlImage: curlimages/curl

#
# -- OSM controller parameters
Expand Down Expand Up @@ -79,6 +81,8 @@ OpenServiceMesh:
retention:
# -- Prometheus data retention time
time: 15d
# -- Image used for Prometheus
image: prom/prometheus:v2.18.1

certificateProvider:
# -- The Certificate manager type: `tresor`, `vault` or `cert-manager`
Expand Down Expand Up @@ -120,6 +124,10 @@ OpenServiceMesh:
port: 3000
# -- Enable Remote Rendering in Grafana
enableRemoteRendering: false
# -- Image used for Grafana
image: grafana/grafana:7.0.1
# -- Image used for Grafana Renderer
rendererImage: grafana/grafana-image-renderer:2.0.0-beta1

# -- Enable the debug HTTP server on OSM controller
enableDebugServer: false
Expand Down Expand Up @@ -208,6 +216,8 @@ OpenServiceMesh:
port: 9411
# -- Tracing collector's API path where the spans will be sent to
endpoint: "/api/v2/spans"
# -- Image used for tracing
image: jaegertracing/all-in-one

# -- Specifies a global list of IP ranges to exclude from outbound traffic interception by the sidecar proxy.
# If specified, must be a list of IP ranges of the form a.b.c.d/x.
Expand Down

0 comments on commit 1dfa5ec

Please sign in to comment.