[bitnami/jaeger] Major release: Jaeger v2 (#35352)

* [bitnami/jaeger] Release 5.1.25 updating components versions

Signed-off-by: Bitnami Bot <bitnami.bot@broadcom.com>

* [bitnami/jaeger] Major release: Jaeger v2

Signed-off-by: Miguel Ruiz <miguel.ruiz@broadcom.com>

* Fix Markdown lint

Signed-off-by: Miguel Ruiz <miguel.ruiz@broadcom.com>

* Fix values metadata

Signed-off-by: Miguel Ruiz <miguel.ruiz@broadcom.com>

* Update CHANGELOG.md

Signed-off-by: Bitnami Bot <bitnami.bot@broadcom.com>

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

Signed-off-by: Bitnami Bot <bitnami.bot@broadcom.com>

* Fix cypress endpoint port

Signed-off-by: Miguel Ruiz <miguel.ruiz@broadcom.com>

* Apply suggestions

Signed-off-by: Miguel Ruiz <miguel.ruiz@broadcom.com>

* Update CHANGELOG.md

Signed-off-by: Bitnami Bot <bitnami.bot@broadcom.com>

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

Signed-off-by: Bitnami Bot <bitnami.bot@broadcom.com>

* Add configmap checksum annotation

Signed-off-by: Miguel Ruiz <miguel.ruiz@broadcom.com>

* Add note on external cassandra keyspace

Signed-off-by: Miguel Ruiz <miguel.ruiz@broadcom.com>

* Fix helper descriptions and empty lines

Signed-off-by: Miguel Ruiz <miguel.ruiz@broadcom.com>

* Move helpers to the configmap templates

Signed-off-by: Miguel Ruiz <miguel.ruiz@broadcom.com>

* Remove 'command' default

Signed-off-by: Miguel Ruiz <miguel.ruiz@broadcom.com>

* Update helpers.tpl

Signed-off-by: Miguel Ruiz <miguel.ruiz@broadcom.com>

* Add checksum annotation conditional

Signed-off-by: Miguel Ruiz <miguel.ruiz@broadcom.com>

---------

Signed-off-by: Bitnami Bot <bitnami.bot@broadcom.com>
Signed-off-by: Miguel Ruiz <miguel.ruiz@broadcom.com>
Co-authored-by: Bitnami Bot <bitnami.bot@broadcom.com>
This commit is contained in:
Miguel Ruiz
2025-08-01 13:30:23 +02:00
committed by GitHub
parent ffd3f99eb1
commit 60e46acccc
17 changed files with 698 additions and 496 deletions

View File

@@ -2,16 +2,18 @@
# SPDX-License-Identifier: APACHE-2.0 # SPDX-License-Identifier: APACHE-2.0
http: http:
http://jaeger-collector:{{ .Vars.collector.service.ports.admin }}/: http://jaeger-collector:{{ .Vars.collector.service.ports.otlp.http }}/v1/traces:
status: 405
body:
- method not allowed
http://jaeger-query:{{ .Vars.query.service.ports.http }}/:
status: 200 status: 200
body: body:
- Server available - Jaeger UI
http://jaeger-query:{{ .Vars.query.service.ports.admin }}/: http://localhost:{{ .Vars.collector.containerPorts.otlp.http }}/v1/traces:
status: 200 status: 405
body: body:
- Server available - method not allowed
http://localhost:{{ .Vars.collector.containerPorts.admin }}/:
status: 200
command: command:
check-cassandra-auth: check-cassandra-auth:
exec: \[ $CASSANDRA_USERNAME = {{ .Vars.cassandra.dbUser.user }} ] && [ $CASSANDRA_PASSWORD = {{ .Vars.cassandra.dbUser.password }} ] && [ $CASSANDRA_KEYSPACE = {{ .Vars.cassandra.keyspace }} ]; exec: \[ $CASSANDRA_USERNAME = {{ .Vars.cassandra.dbUser.user }} ] && [ $CASSANDRA_PASSWORD = {{ .Vars.cassandra.dbUser.password }} ] && [ $CASSANDRA_KEYSPACE = {{ .Vars.cassandra.keyspace }} ];

View File

@@ -5,7 +5,7 @@ query:
args: ['all'] args: ['all']
env: env:
- name: OTEL_EXPORTER_OTLP_ENDPOINT - name: OTEL_EXPORTER_OTLP_ENDPOINT
value: http://jaeger-collector:4318 value: http://jaeger-collector:14318
securityContext: securityContext:
runAsNonRoot: true runAsNonRoot: true
privileged: false privileged: false
@@ -40,14 +40,16 @@ query:
service: service:
type: LoadBalancer type: LoadBalancer
ports: ports:
admin: 16688 grpc: 16688
api: 80 http: 80
collector: collector:
service: service:
ports: ports:
admin: 14270 otlp:
http: 14318
containerPorts: containerPorts:
admin: 14771 otlp:
http: 14318
podSecurityContext: podSecurityContext:
enabled: true enabled: true
fsGroup: 1002 fsGroup: 1002

View File

@@ -61,7 +61,7 @@
"resources": { "resources": {
"path": "/.vib/jaeger/cypress" "path": "/.vib/jaeger/cypress"
}, },
"endpoint": "lb-jaeger-query-api", "endpoint": "lb-jaeger-query-http",
"app_protocol": "HTTP" "app_protocol": "HTTP"
} }
}, },

View File

@@ -1,8 +1,12 @@
# Changelog # Changelog
## 5.1.24 (2025-07-09) ## 6.0.0 (2025-08-01)
* [bitnami/jaeger] :zap: :arrow_up: Update dependency references ([#34908](https://github.com/bitnami/charts/pull/34908)) * [bitnami/jaeger] Major release: Jaeger v2 ([#35352](https://github.com/bitnami/charts/pull/35352))
## <small>5.1.24 (2025-07-09)</small>
* [bitnami/jaeger] :zap: :arrow_up: Update dependency references (#34908) ([d016eb3](https://github.com/bitnami/charts/commit/d016eb3d2d5f905a778ed57e4557569abc649e2f)), closes [#34908](https://github.com/bitnami/charts/issues/34908)
## <small>5.1.23 (2025-07-05)</small> ## <small>5.1.23 (2025-07-05)</small>

View File

@@ -5,9 +5,9 @@ annotations:
category: Infrastructure category: Infrastructure
images: | images: |
- name: cassandra - name: cassandra
image: docker.io/bitnami/cassandra:5.0.4-debian-12-r6 image: docker.io/bitnami/cassandra:5.0.4-debian-12-r7
- name: jaeger - name: jaeger
image: docker.io/bitnami/jaeger:2.8.0-debian-12-r2 image: docker.io/bitnami/jaeger:2.8.0-debian-12-r4
licenses: Apache-2.0 licenses: Apache-2.0
tanzuCategory: clusterUtility tanzuCategory: clusterUtility
apiVersion: v2 apiVersion: v2
@@ -36,4 +36,4 @@ maintainers:
name: jaeger name: jaeger
sources: sources:
- https://github.com/bitnami/charts/tree/main/bitnami/jaeger - https://github.com/bitnami/charts/tree/main/bitnami/jaeger
version: 5.1.24 version: 6.0.0

View File

@@ -86,6 +86,8 @@ externalDatabase.host=myexternalhost
externalDatabase.port=9042 externalDatabase.port=9042
``` ```
The Jaeger keyspace needs to be created in the external Cassandra database prior to the deployment, otherwise Jaeger won't be able to initialise.
### Additional environment variables ### Additional environment variables
In case you want to add extra environment variables (useful for advanced operations like custom init scripts), you can use the `extraEnvVars` property inside each of the subsections: `collector`, `query`. In case you want to add extra environment variables (useful for advanced operations like custom init scripts), you can use the `extraEnvVars` property inside each of the subsections: `collector`, `query`.
@@ -231,14 +233,20 @@ The [Bitnami jaeger](https://github.com/bitnami/containers/tree/main/bitnami/jae
| `query.resourcesPreset` | Set container resources according to one common preset (allowed values: none, nano, micro, small, medium, large, xlarge, 2xlarge). This is ignored if query.resources is set (query.resources is recommended for production). | `small` | | `query.resourcesPreset` | Set container resources according to one common preset (allowed values: none, nano, micro, small, medium, large, xlarge, 2xlarge). This is ignored if query.resources is set (query.resources is recommended for production). | `small` |
| `query.resources` | Set container requests and limits for different resources like CPU or memory (essential for production workloads) | `{}` | | `query.resources` | Set container requests and limits for different resources like CPU or memory (essential for production workloads) | `{}` |
| `query.extraVolumeMounts` | Optionally specify extra list of additional volumeMounts for jaeger container | `[]` | | `query.extraVolumeMounts` | Optionally specify extra list of additional volumeMounts for jaeger container | `[]` |
| `query.containerPorts.grpc` | Port for GRPC | `16685` | | `query.configuration` | Specify content for Jaeger collector configuration (auto-generated based on other values otherwise) | `{}` |
| `query.containerPorts.api` | Port for API | `16686` | | `query.overrideConfiguration` | Jaeger query common configuration override. Values defined here takes precedence over the ones defined at `query.configuration` | `{}` |
| `query.containerPorts.admin` | Port for admin | `16687` | | `query.existingConfigmap` | The name of an existing ConfigMap with your custom configuration for Jaeger collector | `""` |
| `query.containerPorts.grpc` | Port for GRPC API | `16685` |
| `query.containerPorts.http` | Port for HTTP API | `16686` |
| `query.containerPorts.metrics` | Jaeger query prometheus metrics port | `8888` |
| `query.containerPorts.healthcheck` | Jaeger query healthcheck port | `13133` |
| `query.service.type` | Jaeger service type | `ClusterIP` | | `query.service.type` | Jaeger service type | `ClusterIP` |
| `query.service.ports.api` | Port for API | `16686` | | `query.service.ports.grpc` | Port for gRPC API | `16685` |
| `query.service.ports.admin` | Port for admin | `16687` | | `query.service.ports.http` | Port for API | `16686` |
| `query.service.nodePorts.api` | Node port for API | `""` | | `query.service.ports.metrics` | Jaeger query prometheus metrics port | `8888` |
| `query.service.nodePorts.admin` | Node port for admin | `""` | | `query.service.nodePorts.grpc` | Port for gRPC API | `""` |
| `query.service.nodePorts.http` | Node port for API | `""` |
| `query.service.nodePorts.metrics` | Jaeger query prometheus metrics port | `""` |
| `query.service.extraPorts` | Extra ports to expose in the service (normally used with the `sidecar` value) | `[]` | | `query.service.extraPorts` | Extra ports to expose in the service (normally used with the `sidecar` value) | `[]` |
| `query.service.loadBalancerIP` | LoadBalancerIP if service type is `LoadBalancer` | `""` | | `query.service.loadBalancerIP` | LoadBalancerIP if service type is `LoadBalancer` | `""` |
| `query.service.loadBalancerSourceRanges` | Service Load Balancer sources | `[]` | | `query.service.loadBalancerSourceRanges` | Service Load Balancer sources | `[]` |
@@ -298,150 +306,155 @@ The [Bitnami jaeger](https://github.com/bitnami/containers/tree/main/bitnami/jae
### Collector deployment parameters ### Collector deployment parameters
| Name | Description | Value | | Name | Description | Value |
| ------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------- | | ------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------- |
| `collector.command` | Command for running the container (set to default if not set). Use array form | `[]` | | `collector.command` | Command for running the container (set to default if not set). Use array form | `[]` |
| `collector.args` | Args for running the container (set to default if not set). Use array form | `[]` | | `collector.args` | Args for running the container (set to default if not set). Use array form | `[]` |
| `collector.automountServiceAccountToken` | Mount Service Account token in pod | `false` | | `collector.automountServiceAccountToken` | Mount Service Account token in pod | `false` |
| `collector.hostAliases` | Set pod host aliases | `[]` | | `collector.hostAliases` | Set pod host aliases | `[]` |
| `collector.lifecycleHooks` | Override default etcd container hooks | `{}` | | `collector.lifecycleHooks` | Override default etcd container hooks | `{}` |
| `collector.extraEnvVars` | Extra environment variables to be set on jaeger container | `[]` | | `collector.extraEnvVars` | Extra environment variables to be set on jaeger container | `[]` |
| `collector.extraEnvVarsCM` | Name of existing ConfigMap containing extra env vars | `""` | | `collector.extraEnvVarsCM` | Name of existing ConfigMap containing extra env vars | `""` |
| `collector.extraEnvVarsSecret` | Name of existing Secret containing extra env vars | `""` | | `collector.extraEnvVarsSecret` | Name of existing Secret containing extra env vars | `""` |
| `collector.replicaCount` | Number of Jaeger replicas | `1` | | `collector.replicaCount` | Number of Jaeger replicas | `1` |
| `collector.livenessProbe.enabled` | Enable livenessProbe on collector nodes | `true` | | `collector.livenessProbe.enabled` | Enable livenessProbe on collector nodes | `true` |
| `collector.livenessProbe.initialDelaySeconds` | Initial delay seconds for livenessProbe | `10` | | `collector.livenessProbe.initialDelaySeconds` | Initial delay seconds for livenessProbe | `10` |
| `collector.livenessProbe.periodSeconds` | Period seconds for livenessProbe | `10` | | `collector.livenessProbe.periodSeconds` | Period seconds for livenessProbe | `10` |
| `collector.livenessProbe.timeoutSeconds` | Timeout seconds for livenessProbe | `1` | | `collector.livenessProbe.timeoutSeconds` | Timeout seconds for livenessProbe | `1` |
| `collector.livenessProbe.failureThreshold` | Failure threshold for livenessProbe | `3` | | `collector.livenessProbe.failureThreshold` | Failure threshold for livenessProbe | `3` |
| `collector.livenessProbe.successThreshold` | Success threshold for livenessProbe | `1` | | `collector.livenessProbe.successThreshold` | Success threshold for livenessProbe | `1` |
| `collector.startupProbe.enabled` | Enable startupProbe on collector containers | `false` | | `collector.startupProbe.enabled` | Enable startupProbe on collector containers | `false` |
| `collector.startupProbe.initialDelaySeconds` | Initial delay seconds for startupProbe | `10` | | `collector.startupProbe.initialDelaySeconds` | Initial delay seconds for startupProbe | `10` |
| `collector.startupProbe.periodSeconds` | Period seconds for startupProbe | `10` | | `collector.startupProbe.periodSeconds` | Period seconds for startupProbe | `10` |
| `collector.startupProbe.timeoutSeconds` | Timeout seconds for startupProbe | `1` | | `collector.startupProbe.timeoutSeconds` | Timeout seconds for startupProbe | `1` |
| `collector.startupProbe.failureThreshold` | Failure threshold for startupProbe | `15` | | `collector.startupProbe.failureThreshold` | Failure threshold for startupProbe | `15` |
| `collector.startupProbe.successThreshold` | Success threshold for startupProbe | `1` | | `collector.startupProbe.successThreshold` | Success threshold for startupProbe | `1` |
| `collector.readinessProbe.enabled` | Enable readinessProbe | `true` | | `collector.readinessProbe.enabled` | Enable readinessProbe | `true` |
| `collector.readinessProbe.initialDelaySeconds` | Initial delay seconds for readinessProbe | `10` | | `collector.readinessProbe.initialDelaySeconds` | Initial delay seconds for readinessProbe | `10` |
| `collector.readinessProbe.periodSeconds` | Period seconds for readinessProbe | `10` | | `collector.readinessProbe.periodSeconds` | Period seconds for readinessProbe | `10` |
| `collector.readinessProbe.timeoutSeconds` | Timeout seconds for readinessProbe | `1` | | `collector.readinessProbe.timeoutSeconds` | Timeout seconds for readinessProbe | `1` |
| `collector.readinessProbe.failureThreshold` | Failure threshold for readinessProbe | `15` | | `collector.readinessProbe.failureThreshold` | Failure threshold for readinessProbe | `15` |
| `collector.readinessProbe.successThreshold` | Success threshold for readinessProbe | `1` | | `collector.readinessProbe.successThreshold` | Success threshold for readinessProbe | `1` |
| `collector.customLivenessProbe` | Custom livenessProbe that overrides the default one | `{}` | | `collector.customLivenessProbe` | Custom livenessProbe that overrides the default one | `{}` |
| `collector.customStartupProbe` | Override default startup probe | `{}` | | `collector.customStartupProbe` | Override default startup probe | `{}` |
| `collector.customReadinessProbe` | Override default readiness probe | `{}` | | `collector.customReadinessProbe` | Override default readiness probe | `{}` |
| `collector.resourcesPreset` | Set container resources according to one common preset (allowed values: none, nano, micro, small, medium, large, xlarge, 2xlarge). This is ignored if collector.resources is set (collector.resources is recommended for production). | `small` | | `collector.resourcesPreset` | Set container resources according to one common preset (allowed values: none, nano, micro, small, medium, large, xlarge, 2xlarge). This is ignored if collector.resources is set (collector.resources is recommended for production). | `small` |
| `collector.resources` | Set container requests and limits for different resources like CPU or memory (essential for production workloads) | `{}` | | `collector.resources` | Set container requests and limits for different resources like CPU or memory (essential for production workloads) | `{}` |
| `collector.extraVolumeMounts` | Optionally specify extra list of additional volumeMounts for jaeger container | `[]` | | `collector.extraVolumeMounts` | Optionally specify extra list of additional volumeMounts for jaeger container | `[]` |
| `collector.containerPorts.zipkin` | can accept Zipkin spans in Thrift, JSON and Proto (disabled by default) | `9411` | | `collector.configuration` | Specify content for Jaeger collector configuration (auto-generated based on other values otherwise) | `{}` |
| `collector.containerPorts.grpc` | used by jaeger-collector to send spans in model.proto format | `14250` | | `collector.overrideConfiguration` | Jaeger collector common configuration override. Values defined here takes precedence over the ones defined at `query.configuration` | `{}` |
| `collector.containerPorts.binary` | can accept spans directly from clients in jaeger.thrift format over binary thrift protocol | `14268` | | `collector.existingConfigmap` | The name of an existing ConfigMap with your custom configuration for Jaeger collector | `""` |
| `collector.containerPorts.admin` | Admin port: health check at / and metrics at /metrics | `14269` | | `collector.receivers` | Sets the jaeger collector receivers that will be enabled | `["otlp","jaeger","zipkin"]` |
| `collector.containerPorts.otlp.grpc` | Accepts traces in OpenTelemetry OTLP format over gRPC | `4317` | | `collector.containerPorts.otlp.grpc` | Accepts traces in OpenTelemetry OTLP format over gRPC | `4317` |
| `collector.containerPorts.otlp.http` | Accepts traces in OpenTelemetry OTLP format over HTTP | `4318` | | `collector.containerPorts.otlp.http` | Accepts traces in OpenTelemetry OTLP format over HTTP | `4318` |
| `collector.service.type` | Jaeger service type | `ClusterIP` | | `collector.containerPorts.jaeger.grpc` | Legacy Jaeger protobuf via gRPC API port | `14250` |
| `collector.service.ports.zipkin` | can accept Zipkin spans in Thrift, JSON and Proto (disabled by default) | `9411` | | `collector.containerPorts.jaeger.thrift_http` | Legacy Jaeger Thrift over HTTP API port | `14268` |
| `collector.service.ports.grpc` | used by jaeger-collector to send spans in model.proto format | `14250` | | `collector.containerPorts.zipkin` | can accept Zipkin spans in Thrift, JSON and Proto (disabled by default) | `9411` |
| `collector.service.ports.binary` | can accept spans directly from clients in jaeger.thrift format over binary thrift protocol | `14268` | | `collector.containerPorts.metrics` | Jaeger collector prometheus metrics port | `8888` |
| `collector.service.ports.admin` | Admin port: health check at / and metrics at /metrics | `14269` | | `collector.containerPorts.healthcheck` | Jaeger collector healthcheck port | `13133` |
| `collector.service.ports.otlp.grpc` | Accepts traces in OpenTelemetry OTLP format over gRPC | `4317` | | `collector.service.type` | Jaeger service type | `ClusterIP` |
| `collector.service.ports.otlp.http` | Accepts traces in OpenTelemetry OTLP format over HTTP | `4318` | | `collector.service.ports.otlp.grpc` | Accepts traces in OpenTelemetry OTLP format over gRPC | `4317` |
| `collector.service.nodePorts.zipkin` | can accept Zipkin spans in Thrift, JSON and Proto (disabled by default) | `""` | | `collector.service.ports.otlp.http` | Accepts traces in OpenTelemetry OTLP format over HTTP | `4318` |
| `collector.service.nodePorts.grpc` | used by jaeger-collector to send spans in model.proto format | `""` | | `collector.service.ports.jaeger.grpc` | Legacy Jaeger protobuf via gRPC API port | `14250` |
| `collector.service.nodePorts.binary` | can accept spans directly from clients in jaeger.thrift format over binary thrift protocol | `""` | | `collector.service.ports.jaeger.thrift_http` | Legacy Jaeger Thrift over HTTP API port | `14268` |
| `collector.service.nodePorts.admin` | Admin port: health check at / and metrics at /metrics | `""` | | `collector.service.ports.zipkin` | can accept Zipkin spans in Thrift, JSON and Proto (disabled by default) | `9411` |
| `collector.service.nodePorts.otlp.grpc` | Accepts traces in OpenTelemetry OTLP format over gRPC | `""` | | `collector.service.ports.metrics` | Jaeger collector prometheus metrics port | `8888` |
| `collector.service.nodePorts.otlp.http` | Accepts traces in OpenTelemetry OTLP format over HTTP | `""` | | `collector.service.nodePorts.otlp.grpc` | Accepts traces in OpenTelemetry OTLP format over gRPC | `""` |
| `collector.service.extraPorts` | Extra ports to expose in the service (normally used with the `sidecar` value) | `[]` | | `collector.service.nodePorts.otlp.http` | Accepts traces in OpenTelemetry OTLP format over HTTP | `""` |
| `collector.service.loadBalancerIP` | LoadBalancerIP if service type is `LoadBalancer` | `""` | | `collector.service.nodePorts.jaeger.grpc` | Legacy Jaeger protobuf via gRPC API port | `""` |
| `collector.service.loadBalancerSourceRanges` | Service Load Balancer sources | `[]` | | `collector.service.nodePorts.jaeger.thrift_http` | Legacy Jaeger Thrift over HTTP API port | `""` |
| `collector.service.clusterIP` | Service Cluster IP | `""` | | `collector.service.nodePorts.zipkin` | can accept Zipkin spans in Thrift, JSON and Proto (disabled by default) | `""` |
| `collector.service.externalTrafficPolicy` | Service external traffic policy | `Cluster` | | `collector.service.nodePorts.metrics` | Jaeger collector prometheus metrics port | `""` |
| `collector.service.annotations` | Provide any additional annotations which may be required. | `{}` | | `collector.service.extraPorts` | Extra ports to expose in the service (normally used with the `sidecar` value) | `[]` |
| `collector.service.sessionAffinity` | Session Affinity for Kubernetes service, can be "None" or "ClientIP" | `None` | | `collector.service.loadBalancerIP` | LoadBalancerIP if service type is `LoadBalancer` | `""` |
| `collector.service.sessionAffinityConfig` | Additional settings for the sessionAffinity | `{}` | | `collector.service.loadBalancerSourceRanges` | Service Load Balancer sources | `[]` |
| `collector.service.metrics.annotations` | Annotations for Prometheus metrics | `{}` | | `collector.service.clusterIP` | Service Cluster IP | `""` |
| `collector.networkPolicy.enabled` | Specifies whether a NetworkPolicy should be created | `true` | | `collector.service.externalTrafficPolicy` | Service external traffic policy | `Cluster` |
| `collector.networkPolicy.allowExternal` | Don't require server label for connections | `true` | | `collector.service.annotations` | Provide any additional annotations which may be required. | `{}` |
| `collector.networkPolicy.allowExternalEgress` | Allow the pod to access any range of port and all destinations. | `true` | | `collector.service.sessionAffinity` | Session Affinity for Kubernetes service, can be "None" or "ClientIP" | `None` |
| `collector.networkPolicy.extraIngress` | Add extra ingress rules to the NetworkPolicy | `[]` | | `collector.service.sessionAffinityConfig` | Additional settings for the sessionAffinity | `{}` |
| `collector.networkPolicy.extraEgress` | Add extra ingress rules to the NetworkPolicy | `[]` | | `collector.service.metrics.annotations` | Annotations for Prometheus metrics | `{}` |
| `collector.networkPolicy.ingressNSMatchLabels` | Labels to match to allow traffic from other namespaces | `{}` | | `collector.networkPolicy.enabled` | Specifies whether a NetworkPolicy should be created | `true` |
| `collector.networkPolicy.ingressNSPodMatchLabels` | Pod labels to match to allow traffic from other namespaces | `{}` | | `collector.networkPolicy.allowExternal` | Don't require server label for connections | `true` |
| `collector.serviceAccount.create` | Enables ServiceAccount | `true` | | `collector.networkPolicy.allowExternalEgress` | Allow the pod to access any range of port and all destinations. | `true` |
| `collector.serviceAccount.name` | ServiceAccount name | `""` | | `collector.networkPolicy.extraIngress` | Add extra ingress rules to the NetworkPolicy | `[]` |
| `collector.serviceAccount.annotations` | Annotations to add to all deployed objects | `{}` | | `collector.networkPolicy.extraEgress` | Add extra ingress rules to the NetworkPolicy | `[]` |
| `collector.serviceAccount.automountServiceAccountToken` | Automount API credentials for a service account. | `false` | | `collector.networkPolicy.ingressNSMatchLabels` | Labels to match to allow traffic from other namespaces | `{}` |
| `collector.podSecurityContext.enabled` | Enabled Jaeger pods' Security Context | `true` | | `collector.networkPolicy.ingressNSPodMatchLabels` | Pod labels to match to allow traffic from other namespaces | `{}` |
| `collector.podSecurityContext.fsGroupChangePolicy` | Set filesystem group change policy | `Always` | | `collector.serviceAccount.create` | Enables ServiceAccount | `true` |
| `collector.podSecurityContext.sysctls` | Set kernel settings using the sysctl interface | `[]` | | `collector.serviceAccount.name` | ServiceAccount name | `""` |
| `collector.podSecurityContext.supplementalGroups` | Set filesystem extra groups | `[]` | | `collector.serviceAccount.annotations` | Annotations to add to all deployed objects | `{}` |
| `collector.podSecurityContext.fsGroup` | Set Jaeger pod's Security Context fsGroup | `1001` | | `collector.serviceAccount.automountServiceAccountToken` | Automount API credentials for a service account. | `false` |
| `collector.containerSecurityContext.enabled` | Enabled containers' Security Context | `true` | | `collector.podSecurityContext.enabled` | Enabled Jaeger pods' Security Context | `true` |
| `collector.containerSecurityContext.seLinuxOptions` | Set SELinux options in container | `{}` | | `collector.podSecurityContext.fsGroupChangePolicy` | Set filesystem group change policy | `Always` |
| `collector.containerSecurityContext.runAsUser` | Set containers' Security Context runAsUser | `1001` | | `collector.podSecurityContext.sysctls` | Set kernel settings using the sysctl interface | `[]` |
| `collector.containerSecurityContext.runAsGroup` | Set containers' Security Context runAsGroup | `1001` | | `collector.podSecurityContext.supplementalGroups` | Set filesystem extra groups | `[]` |
| `collector.containerSecurityContext.runAsNonRoot` | Set container's Security Context runAsNonRoot | `true` | | `collector.podSecurityContext.fsGroup` | Set Jaeger pod's Security Context fsGroup | `1001` |
| `collector.containerSecurityContext.privileged` | Set container's Security Context privileged | `false` | | `collector.containerSecurityContext.enabled` | Enabled containers' Security Context | `true` |
| `collector.containerSecurityContext.readOnlyRootFilesystem` | Set container's Security Context readOnlyRootFilesystem | `true` | | `collector.containerSecurityContext.seLinuxOptions` | Set SELinux options in container | `{}` |
| `collector.containerSecurityContext.allowPrivilegeEscalation` | Set container's Security Context allowPrivilegeEscalation | `false` | | `collector.containerSecurityContext.runAsUser` | Set containers' Security Context runAsUser | `1001` |
| `collector.containerSecurityContext.capabilities.drop` | List of capabilities to be dropped | `["ALL"]` | | `collector.containerSecurityContext.runAsGroup` | Set containers' Security Context runAsGroup | `1001` |
| `collector.containerSecurityContext.seccompProfile.type` | Set container's Security Context seccomp profile | `RuntimeDefault` | | `collector.containerSecurityContext.runAsNonRoot` | Set container's Security Context runAsNonRoot | `true` |
| `collector.podAnnotations` | Additional pod annotations | `{}` | | `collector.containerSecurityContext.privileged` | Set container's Security Context privileged | `false` |
| `collector.podLabels` | Additional pod labels | `{}` | | `collector.containerSecurityContext.readOnlyRootFilesystem` | Set container's Security Context readOnlyRootFilesystem | `true` |
| `collector.podAffinityPreset` | Pod affinity preset. Ignored if `affinity` is set. Allowed values: `soft` or `hard` | `""` | | `collector.containerSecurityContext.allowPrivilegeEscalation` | Set container's Security Context allowPrivilegeEscalation | `false` |
| `collector.podAntiAffinityPreset` | Pod anti-affinity preset. Ignored if `affinity` is set. Allowed values: `soft` or `hard` | `soft` | | `collector.containerSecurityContext.capabilities.drop` | List of capabilities to be dropped | `["ALL"]` |
| `collector.nodeAffinityPreset.type` | Node affinity preset type. Ignored if `affinity` is set. Allowed values: `soft` or `hard` | `""` | | `collector.containerSecurityContext.seccompProfile.type` | Set container's Security Context seccomp profile | `RuntimeDefault` |
| `collector.nodeAffinityPreset.key` | Node label key to match. Ignored if `affinity` is set | `""` | | `collector.podAnnotations` | Additional pod annotations | `{}` |
| `collector.nodeAffinityPreset.values` | Node label values to match. Ignored if `affinity` is set | `[]` | | `collector.podLabels` | Additional pod labels | `{}` |
| `collector.priorityClassName` | Server priorityClassName | `""` | | `collector.podAffinityPreset` | Pod affinity preset. Ignored if `affinity` is set. Allowed values: `soft` or `hard` | `""` |
| `collector.affinity` | Affinity for pod assignment | `{}` | | `collector.podAntiAffinityPreset` | Pod anti-affinity preset. Ignored if `affinity` is set. Allowed values: `soft` or `hard` | `soft` |
| `collector.nodeSelector` | Node labels for pod assignment | `{}` | | `collector.nodeAffinityPreset.type` | Node affinity preset type. Ignored if `affinity` is set. Allowed values: `soft` or `hard` | `""` |
| `collector.tolerations` | Tolerations for pod assignment | `[]` | | `collector.nodeAffinityPreset.key` | Node label key to match. Ignored if `affinity` is set | `""` |
| `collector.topologySpreadConstraints` | Topology Spread Constraints for pod assignment | `[]` | | `collector.nodeAffinityPreset.values` | Node label values to match. Ignored if `affinity` is set | `[]` |
| `collector.schedulerName` | Alternative scheduler | `""` | | `collector.priorityClassName` | Server priorityClassName | `""` |
| `collector.updateStrategy.type` | Jaeger collector deployment strategy type | `RollingUpdate` | | `collector.affinity` | Affinity for pod assignment | `{}` |
| `collector.updateStrategy.rollingUpdate` | Jaeger collector deployment rolling update configuration parameters | `{}` | | `collector.nodeSelector` | Node labels for pod assignment | `{}` |
| `collector.extraVolumes` | Optionally specify extra list of additional volumes for jaeger container | `[]` | | `collector.tolerations` | Tolerations for pod assignment | `[]` |
| `collector.initContainers` | Add additional init containers to the jaeger pods | `[]` | | `collector.topologySpreadConstraints` | Topology Spread Constraints for pod assignment | `[]` |
| `collector.pdb.create` | Enable/disable a Pod Disruption Budget creation | `true` | | `collector.schedulerName` | Alternative scheduler | `""` |
| `collector.pdb.minAvailable` | Minimum number/percentage of pods that should remain scheduled | `""` | | `collector.updateStrategy.type` | Jaeger collector deployment strategy type | `RollingUpdate` |
| `collector.pdb.maxUnavailable` | Maximum number/percentage of pods that may be made unavailable. Defaults to `1` if both `collector.pdb.minAvailable` and `collector.pdb.maxUnavailable` are empty. | `""` | | `collector.updateStrategy.rollingUpdate` | Jaeger collector deployment rolling update configuration parameters | `{}` |
| `collector.sidecars` | Add additional sidecar containers to the jaeger pods | `[]` | | `collector.extraVolumes` | Optionally specify extra list of additional volumes for jaeger container | `[]` |
| `migration.podLabels` | Additional pod labels | `{}` | | `collector.initContainers` | Add additional init containers to the jaeger pods | `[]` |
| `migration.podAnnotations` | Additional pod annotations | `{}` | | `collector.pdb.create` | Enable/disable a Pod Disruption Budget creation | `true` |
| `migration.annotations` | Provide any additional annotations which may be required. | `{}` | | `collector.pdb.minAvailable` | Minimum number/percentage of pods that should remain scheduled | `""` |
| `migration.podSecurityContext.enabled` | Enabled Jaeger pods' Security Context | `true` | | `collector.pdb.maxUnavailable` | Maximum number/percentage of pods that may be made unavailable. Defaults to `1` if both `collector.pdb.minAvailable` and `collector.pdb.maxUnavailable` are empty. | `""` |
| `migration.podSecurityContext.fsGroupChangePolicy` | Set filesystem group change policy | `Always` | | `collector.sidecars` | Add additional sidecar containers to the jaeger pods | `[]` |
| `migration.podSecurityContext.sysctls` | Set kernel settings using the sysctl interface | `[]` | | `migration.podLabels` | Additional pod labels | `{}` |
| `migration.podSecurityContext.supplementalGroups` | Set filesystem extra groups | `[]` | | `migration.podAnnotations` | Additional pod annotations | `{}` |
| `migration.podSecurityContext.fsGroup` | Set Jaeger pod's Security Context fsGroup | `1001` | | `migration.annotations` | Provide any additional annotations which may be required. | `{}` |
| `migration.containerSecurityContext.enabled` | Enabled containers' Security Context | `true` | | `migration.podSecurityContext.enabled` | Enabled Jaeger pods' Security Context | `true` |
| `migration.containerSecurityContext.seLinuxOptions` | Set SELinux options in container | `{}` | | `migration.podSecurityContext.fsGroupChangePolicy` | Set filesystem group change policy | `Always` |
| `migration.containerSecurityContext.runAsUser` | Set containers' Security Context runAsUser | `1001` | | `migration.podSecurityContext.sysctls` | Set kernel settings using the sysctl interface | `[]` |
| `migration.containerSecurityContext.runAsGroup` | Set containers' Security Context runAsGroup | `1001` | | `migration.podSecurityContext.supplementalGroups` | Set filesystem extra groups | `[]` |
| `migration.containerSecurityContext.runAsNonRoot` | Set container's Security Context runAsNonRoot | `true` | | `migration.podSecurityContext.fsGroup` | Set Jaeger pod's Security Context fsGroup | `1001` |
| `migration.containerSecurityContext.privileged` | Set container's Security Context privileged | `false` | | `migration.containerSecurityContext.enabled` | Enabled containers' Security Context | `true` |
| `migration.containerSecurityContext.readOnlyRootFilesystem` | Set container's Security Context readOnlyRootFilesystem | `true` | | `migration.containerSecurityContext.seLinuxOptions` | Set SELinux options in container | `{}` |
| `migration.containerSecurityContext.allowPrivilegeEscalation` | Set container's Security Context allowPrivilegeEscalation | `false` | | `migration.containerSecurityContext.runAsUser` | Set containers' Security Context runAsUser | `1001` |
| `migration.containerSecurityContext.capabilities.drop` | List of capabilities to be dropped | `["ALL"]` | | `migration.containerSecurityContext.runAsGroup` | Set containers' Security Context runAsGroup | `1001` |
| `migration.containerSecurityContext.seccompProfile.type` | Set container's Security Context seccomp profile | `RuntimeDefault` | | `migration.containerSecurityContext.runAsNonRoot` | Set container's Security Context runAsNonRoot | `true` |
| `migration.extraEnvVars` | Extra environment variables to be set on jaeger migration container | `[]` | | `migration.containerSecurityContext.privileged` | Set container's Security Context privileged | `false` |
| `migration.extraEnvVarsCM` | Name of existing ConfigMap containing extra env vars | `""` | | `migration.containerSecurityContext.readOnlyRootFilesystem` | Set container's Security Context readOnlyRootFilesystem | `true` |
| `migration.extraEnvVarsSecret` | Name of existing Secret containing extra env vars | `""` | | `migration.containerSecurityContext.allowPrivilegeEscalation` | Set container's Security Context allowPrivilegeEscalation | `false` |
| `migration.extraVolumeMounts` | Optionally specify extra list of additional volumeMounts for jaeger container | `[]` | | `migration.containerSecurityContext.capabilities.drop` | List of capabilities to be dropped | `["ALL"]` |
| `migration.resourcesPreset` | Set container resources according to one common preset (allowed values: none, nano, micro, small, medium, large, xlarge, 2xlarge). This is ignored if migration.resources is set (migration.resources is recommended for production). | `small` | | `migration.containerSecurityContext.seccompProfile.type` | Set container's Security Context seccomp profile | `RuntimeDefault` |
| `migration.resources` | Set container requests and limits for different resources like CPU or memory (essential for production workloads) | `{}` | | `migration.extraEnvVars` | Extra environment variables to be set on jaeger migration container | `[]` |
| `migration.initContainer.resourcesPreset` | Set container resources according to one common preset (allowed values: none, nano, micro, small, medium, large, xlarge, 2xlarge). This is ignored if migration.resources is set (migration.resources is recommended for production). | `nano` | | `migration.extraEnvVarsCM` | Name of existing ConfigMap containing extra env vars | `""` |
| `migration.initContainer.resources` | Set container requests and limits for different resources like CPU or memory (essential for production workloads) | `{}` | | `migration.extraEnvVarsSecret` | Name of existing Secret containing extra env vars | `""` |
| `migration.networkPolicy.enabled` | Specifies whether a NetworkPolicy should be created | `true` | | `migration.extraVolumeMounts` | Optionally specify extra list of additional volumeMounts for jaeger container | `[]` |
| `migration.networkPolicy.allowExternal` | Don't require server label for connections | `true` | | `migration.resourcesPreset` | Set container resources according to one common preset (allowed values: none, nano, micro, small, medium, large, xlarge, 2xlarge). This is ignored if migration.resources is set (migration.resources is recommended for production). | `small` |
| `migration.networkPolicy.allowExternalEgress` | Allow the pod to access any range of port and all destinations. | `true` | | `migration.resources` | Set container requests and limits for different resources like CPU or memory (essential for production workloads) | `{}` |
| `migration.networkPolicy.extraIngress` | Add extra ingress rules to the NetworkPolicy | `[]` | | `migration.initContainer.resourcesPreset` | Set container resources according to one common preset (allowed values: none, nano, micro, small, medium, large, xlarge, 2xlarge). This is ignored if migration.resources is set (migration.resources is recommended for production). | `nano` |
| `migration.networkPolicy.extraEgress` | Add extra ingress rules to the NetworkPolicy | `[]` | | `migration.initContainer.resources` | Set container requests and limits for different resources like CPU or memory (essential for production workloads) | `{}` |
| `migration.networkPolicy.ingressNSMatchLabels` | Labels to match to allow traffic from other namespaces | `{}` | | `migration.networkPolicy.enabled` | Specifies whether a NetworkPolicy should be created | `true` |
| `migration.networkPolicy.ingressNSPodMatchLabels` | Pod labels to match to allow traffic from other namespaces | `{}` | | `migration.networkPolicy.allowExternal` | Don't require server label for connections | `true` |
| `migration.extraVolumes` | Optionally specify extra list of additional volumes for jaeger container | `[]` | | `migration.networkPolicy.allowExternalEgress` | Allow the pod to access any range of port and all destinations. | `true` |
| `migration.networkPolicy.extraIngress` | Add extra ingress rules to the NetworkPolicy | `[]` |
| `migration.networkPolicy.extraEgress` | Add extra ingress rules to the NetworkPolicy | `[]` |
| `migration.networkPolicy.ingressNSMatchLabels` | Labels to match to allow traffic from other namespaces | `{}` |
| `migration.networkPolicy.ingressNSPodMatchLabels` | Pod labels to match to allow traffic from other namespaces | `{}` |
| `migration.extraVolumes` | Optionally specify extra list of additional volumes for jaeger container | `[]` |
### Set the image to use for the migration job ### Set the image to use for the migration job
@@ -475,6 +488,7 @@ The [Bitnami jaeger](https://github.com/bitnami/containers/tree/main/bitnami/jae
| `cassandra.dbUser.password` | Password for `dbUser.user`. Randomly generated if empty | `""` | | `cassandra.dbUser.password` | Password for `dbUser.user`. Randomly generated if empty | `""` |
| `cassandra.dbUser.existingSecret` | Name of an existing secret containing the user password. | `""` | | `cassandra.dbUser.existingSecret` | Name of an existing secret containing the user password. | `""` |
| `cassandra.service.ports.cql` | Cassandra cql port | `9042` | | `cassandra.service.ports.cql` | Cassandra cql port | `9042` |
| `cassandra.initDB` | Init script for initializing the instance | `{}` |
| `cassandra.resourcesPreset` | Set container resources according to one common preset (allowed values: none, nano, small, medium, large, xlarge, 2xlarge). This is ignored if resources is set (resources is recommended for production). | `large` | | `cassandra.resourcesPreset` | Set container resources according to one common preset (allowed values: none, nano, small, medium, large, xlarge, 2xlarge). This is ignored if resources is set (resources is recommended for production). | `large` |
| `cassandra.resources` | Set container requests and limits for different resources like CPU or memory (essential for production workloads) | `{}` | | `cassandra.resources` | Set container requests and limits for different resources like CPU or memory (essential for production workloads) | `{}` |
@@ -486,6 +500,19 @@ Find more information about how to deal with common errors related to Bitnami's
## Upgrading ## Upgrading
### To 6.0.0
This major release updates Jaeger to its new major Jaeger v2. Previous releases of the chart (5.x.x) have been tagged as Jaeger v2, but due to an issue the chart continued using the Jaeger v1 binaries.
Starting from this version, the chart will use the Jaeger v2 binary and the container will no longer include Jaeger v1 binaries in the v2 images.
Additionally, this major release introduces the following changes:
- Removes the cassandra-schema init job, as Jaeger v2 is capable of initializing the schema.
- Removed the `admin`, `binary` and `grpc` collector port values. Added jaeger legacy ports `jaeger.grpc` (previously `grpc`) and `jaeger.thrift_http` (previously `binary`).
- Jaeger v2 no longer supports the `admin` port. Prometheus metrics and healthcheck capabilities have been moved into the new ports `metrics` and `healthcheck` for both collector and query nodes.
- Introduced the jaeger-query and jaeger-collector configmaps, as Jaeger v2 no longer supports configuration via environment variables. Added values `collector.configuration`/`query.configuration` and `collector.existingConfigmap`/`query.existingConfigmap` to customize configuration.
### To 5.1.0 ### To 5.1.0
This version introduces image verification for security purposes. To disable it, set `global.security.allowInsecureImages` to `true`. More details at [GitHub issue](https://github.com/bitnami/charts/issues/30850). This version introduces image verification for security purposes. To disable it, set `global.security.allowInsecureImages` to `true`. More details at [GitHub issue](https://github.com/bitnami/charts/issues/30850).
@@ -527,4 +554,4 @@ Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS, distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and See the License for the specific language governing permissions and
limitations under the License. limitations under the License.

View File

@@ -35,6 +35,27 @@ Create the name of the query deployment
{{- include "common.names.dependency.fullname" (dict "chartName" "cassandra" "chartValues" .Values.cassandra "context" $) -}} {{- include "common.names.dependency.fullname" (dict "chartName" "cassandra" "chartValues" .Values.cassandra "context" $) -}}
{{- end -}} {{- end -}}
{{/*
Return the Jaeger Cassandra storage backed configuration.
This is shared by both collector and query components
*/}}
{{- define "jaeger.cassandra.storage" -}}
cassandra:
schema:
keyspace: "${env:CASSANDRA_KEYSPACE}"
create: true
datacenter: "${env:CASSANDRA_DATACENTER}"
connection:
servers: ["${env:CASSANDRA_SERVERS}:${env:CASSANDRA_PORT}"]
auth:
basic:
username: "${env:CASSANDRA_USERNAME}"
password: "${env:CASSANDRA_PASSWORD}"
allowed_authenticators: ["org.apache.cassandra.auth.PasswordAuthenticator"]
tls:
insecure: true
{{- end }}
{{/* {{/*
Return the proper Docker Image Registry Secret Names Return the proper Docker Image Registry Secret Names
*/}} */}}
@@ -101,6 +122,28 @@ Create a container for checking cassandra availability
{{- end }} {{- end }}
{{- end -}} {{- end -}}
{{/*
Get the jaeger collector configmap name
*/}}
{{- define "jaeger.collector.configMapName" -}}
{{- if .Values.collector.existingConfigmap -}}
{{- print (tpl .Values.collector.existingConfigmap .) -}}
{{- else -}}
{{- print (include "jaeger.collector.fullname" .) -}}
{{- end -}}
{{- end -}}
{{/*
Get the jaeger query configmap name
*/}}
{{- define "jaeger.query.configMapName" -}}
{{- if .Values.query.existingConfigmap -}}
{{- print (tpl .Values.query.existingConfigmap .) -}}
{{- else -}}
{{- print (include "jaeger.query.fullname" .) -}}
{{- end -}}
{{- end -}}
{{/* {{/*
Create the name of the service account to use for the collector Create the name of the service account to use for the collector
*/}} */}}
@@ -198,14 +241,17 @@ Create the cassandra datacenter
{{- end -}} {{- end -}}
{{/* {{/*
Create the cassandra keyspace Return the cassandra keyspace
*/}} */}}
{{- define "jaeger.cassandra.keyspace" -}} {{- define "jaeger.cassandra.keyspace" -}}
{{- if not .Values.cassandra.enabled -}} {{- if .Values.keyspace }}
{{- .Values.externalDatabase.keyspace | quote -}} {{- /* Inside cassandra subchart */ -}}
{{- else }} {{- print .Values.keyspace -}}
{{- .Values.cassandra.keyspace | quote -}} {{- else if .Values.cassandra.enabled }}
{{- end -}} {{- print .Values.cassandra.keyspace -}}
{{- else -}}
{{- print .Values.externalDatabase.keyspace -}}
{{- end -}}
{{- end -}} {{- end -}}
{{/* {{/*

View File

@@ -0,0 +1,89 @@
{{- /*
Copyright Broadcom, Inc. All Rights Reserved.
SPDX-License-Identifier: APACHE-2.0
*/}}
{{/*
Return the Jaeger collector configuration.
*/}}
{{- define "jaeger.collector.configuration" -}}
{{- if .Values.collector.configuration }}
{{- include "common.tplvalues.render" (dict "value" .Values.collector.configuration "context" .) }}
{{- else }}
service:
extensions: [jaeger_storage, healthcheckv2]
pipelines:
traces:
receivers: {{ include "common.tplvalues.render" (dict "value" .Values.collector.receivers "context" .) | nindent 12 }}
processors: [batch]
exporters: [jaeger_storage_exporter]
telemetry:
resource:
service.name: jaeger-collector
metrics:
level: detailed
readers:
- pull:
exporter:
prometheus:
host: 0.0.0.0
port: "${env:COLLECTOR_METRICS_PORT}"
logs:
level: info
extensions:
healthcheckv2:
use_v2: true
http:
endpoint: "${env:COLLECTOR_HEALTHCHECK_HOST_PORT}"
jaeger_storage:
backends:
jaeger_storage: {{ include "jaeger.cassandra.storage" . | nindent 8 }}
receivers:
{{- if has "otlp" .Values.collector.receivers }}
otlp:
protocols:
grpc:
endpoint: "${env:COLLECTOR_OTLP_GRPC_HOST_PORT}"
http:
endpoint: "${env:COLLECTOR_OTLP_HTTP_HOST_PORT}"
{{- end }}
{{- if has "jaeger" .Values.collector.receivers }}
jaeger:
protocols:
grpc:
endpoint: "${env:COLLECTOR_JAEGER_GRPC_SERVER_HOST_PORT}"
thrift_http:
endpoint: "${env:COLLECTOR_JAEGER_THRIFT_HTTP_HOST_PORT}"
{{- end }}
{{- if has "zipkin" .Values.collector.receivers }}
zipkin:
endpoint: "${env:COLLECTOR_ZIPKIN_HOST_PORT}"
{{- end }}
processors:
batch:
exporters:
jaeger_storage_exporter:
trace_storage: jaeger_storage
{{- end -}}
{{- end -}}
{{- if not .Values.collector.existingConfigmap }}
apiVersion: v1
kind: ConfigMap
metadata:
name: {{ template "jaeger.collector.fullname" . }}
namespace: {{ include "common.names.namespace" . | quote }}
labels: {{- include "common.labels.standard" ( dict "customLabels" .Values.commonLabels "context" $ ) | nindent 4 }}
app.kubernetes.io/component: collector
{{- if .Values.commonAnnotations }}
annotations: {{- include "common.tplvalues.render" (dict "value" .Values.commonAnnotations "context" $) | nindent 4 }}
{{- end }}
{{- $configuration := include "jaeger.collector.configuration" . | fromYaml -}}
{{- if .Values.collector.overrideConfiguration }}
{{- $overrideConfiguration := include "common.tplvalues.render" (dict "value" .Values.collector.overrideConfiguration "context" .) | fromYaml }}
{{- $configuration = mustMergeOverwrite $configuration $overrideConfiguration }}
{{- end }}
data:
collector-config.yaml: |-
{{- toYaml $configuration | nindent 4 }}
{{- end }}

View File

@@ -27,8 +27,14 @@ spec:
labels: {{- include "common.labels.standard" ( dict "customLabels" $podLabels "context" $ ) | nindent 8 }} labels: {{- include "common.labels.standard" ( dict "customLabels" $podLabels "context" $ ) | nindent 8 }}
app.kubernetes.io/part-of: jaeger app.kubernetes.io/part-of: jaeger
app.kubernetes.io/component: collector app.kubernetes.io/component: collector
{{- if .Values.collector.podAnnotations }} {{- if or .Values.collector.podAnnotations (not .Values.collector.existingConfigmap) }}
annotations: {{- include "common.tplvalues.render" (dict "value" .Values.collector.podAnnotations "context" $) | nindent 8 }} annotations:
{{- if not .Values.collector.existingConfigmap }}
checksum/configmap: {{ include (print $.Template.BasePath "/collector/configmap.yaml") . | sha256sum }}
{{- end }}
{{- if .Values.collector.podAnnotations }}
{{- include "common.tplvalues.render" (dict "value" .Values.collector.podAnnotations "context" $) | nindent 8 }}
{{- end }}
{{- end }} {{- end }}
spec: spec:
{{- include "jaeger.imagePullSecrets" . | nindent 6 }} {{- include "jaeger.imagePullSecrets" . | nindent 6 }}
@@ -76,32 +82,40 @@ spec:
command: {{- include "common.tplvalues.render" (dict "value" .Values.diagnosticMode.command "context" $) | nindent 12 }} command: {{- include "common.tplvalues.render" (dict "value" .Values.diagnosticMode.command "context" $) | nindent 12 }}
{{- else if .Values.collector.command }} {{- else if .Values.collector.command }}
command: {{- include "common.tplvalues.render" (dict "value" .Values.collector.command "context" $) | nindent 12 }} command: {{- include "common.tplvalues.render" (dict "value" .Values.collector.command "context" $) | nindent 12 }}
{{- else }}
command: ["/opt/bitnami/jaeger/bin/jaeger-collector"]
{{- end }} {{- end }}
{{- if .Values.diagnosticMode.enabled }} {{- if .Values.diagnosticMode.enabled }}
args: {{- include "common.tplvalues.render" (dict "value" .Values.diagnosticMode.args "context" $) | nindent 12 }} args: {{- include "common.tplvalues.render" (dict "value" .Values.diagnosticMode.args "context" $) | nindent 12 }}
{{- else if .Values.collector.args }} {{- else if .Values.collector.args }}
args: {{- include "common.tplvalues.render" (dict "value" .Values.collector.args "context" $) | nindent 12 }} args: {{- include "common.tplvalues.render" (dict "value" .Values.collector.args "context" $) | nindent 12 }}
{{- else }} {{- else }}
args: ["--cassandra.basic.allowed-authenticators=org.apache.cassandra.auth.PasswordAuthenticator"] args:
- "--config"
- "/opt/bitnami/jaeger/conf/collector-config.yaml"
{{- end }} {{- end }}
{{- if .Values.collector.lifecycleHooks }} {{- if .Values.collector.lifecycleHooks }}
lifecycle: {{- include "common.tplvalues.render" (dict "value" .Values.collector.lifecycleHooks "context" $) | nindent 12 }} lifecycle: {{- include "common.tplvalues.render" (dict "value" .Values.collector.lifecycleHooks "context" $) | nindent 12 }}
{{- end }} {{- end }}
ports: ports:
- name: zipkin {{- if has "otlp" .Values.collector.receivers }}
containerPort: {{ .Values.collector.containerPorts.zipkin }}
- name: binary
containerPort: {{ .Values.collector.containerPorts.binary }}
- name: grpc
containerPort: {{ .Values.collector.containerPorts.grpc }}
- name: admin
containerPort: {{ .Values.collector.containerPorts.admin }}
- name: grpc-otlp - name: grpc-otlp
containerPort: {{ .Values.collector.containerPorts.otlp.grpc }} containerPort: {{ .Values.collector.containerPorts.otlp.grpc }}
- name: http-otlp - name: http-otlp
containerPort: {{ .Values.collector.containerPorts.otlp.http }} containerPort: {{ .Values.collector.containerPorts.otlp.http }}
{{- end }}
{{- if has "jaeger" .Values.collector.receivers }}
- name: grpc-jaeger
containerPort: {{ .Values.collector.containerPorts.jaeger.grpc }}
- name: http-jaeger-tf
containerPort: {{ .Values.collector.containerPorts.jaeger.thrift_http }}
{{- end }}
{{- if has "zipkin" .Values.collector.receivers }}
- name: zipkin
containerPort: {{ .Values.collector.containerPorts.zipkin }}
{{- end }}
- name: metrics
containerPort: {{ .Values.collector.containerPorts.metrics }}
- name: healthcheck
containerPort: {{ .Values.collector.containerPorts.healthcheck }}
env: env:
- name: CASSANDRA_SERVERS - name: CASSANDRA_SERVERS
value: {{ include "jaeger.cassandra.host" . }} value: {{ include "jaeger.cassandra.host" . }}
@@ -118,18 +132,26 @@ spec:
value: {{ include "jaeger.cassandra.keyspace" . }} value: {{ include "jaeger.cassandra.keyspace" . }}
- name: CASSANDRA_DATACENTER - name: CASSANDRA_DATACENTER
value: {{ include "jaeger.cassandra.datacenter" . }} value: {{ include "jaeger.cassandra.datacenter" . }}
- name: ADMIN_HTTP_HOST_PORT {{- if has "otlp" .Values.collector.receivers }}
value: {{ printf ":%v" .Values.collector.containerPorts.admin | quote }}
- name: COLLECTOR_ZIPKIN_HOST_PORT
value: {{ printf ":%v" .Values.collector.containerPorts.zipkin | quote }}
- name: COLLECTOR_GRPC_SERVER_HOST_PORT
value: {{ printf ":%v" .Values.collector.containerPorts.grpc | quote }}
- name: COLLECTOR_HTTP_SERVER_HOST_PORT
value: {{ printf ":%v" .Values.collector.containerPorts.binary | quote }}
- name: COLLECTOR_OTLP_GRPC_HOST_PORT - name: COLLECTOR_OTLP_GRPC_HOST_PORT
value: {{ printf ":%v" .Values.collector.containerPorts.otlp.grpc | quote }} value: {{ printf ":%v" .Values.collector.containerPorts.otlp.grpc | quote }}
- name: COLLECTOR_OTLP_HTTP_HOST_PORT - name: COLLECTOR_OTLP_HTTP_HOST_PORT
value: {{ printf ":%v" .Values.collector.containerPorts.otlp.http | quote }} value: {{ printf ":%v" .Values.collector.containerPorts.otlp.http | quote }}
{{- end }}
{{- if has "jaeger" .Values.collector.receivers }}
- name: COLLECTOR_JAEGER_GRPC_SERVER_HOST_PORT
value: {{ printf ":%v" .Values.collector.containerPorts.jaeger.grpc | quote }}
- name: COLLECTOR_JAEGER_THRIFT_HTTP_HOST_PORT
value: {{ printf ":%v" .Values.collector.containerPorts.jaeger.thrift_http | quote }}
{{- end }}
{{- if has "zipkin" .Values.collector.receivers }}
- name: COLLECTOR_ZIPKIN_HOST_PORT
value: {{ printf ":%v" .Values.collector.containerPorts.zipkin | quote }}
{{- end }}
- name: COLLECTOR_HEALTHCHECK_HOST_PORT
value: {{ printf ":%v" .Values.collector.containerPorts.healthcheck | quote }}
- name: COLLECTOR_METRICS_PORT
value: {{ .Values.collector.containerPorts.metrics | quote }}
- name: BITNAMI_DEBUG - name: BITNAMI_DEBUG
value: {{ ternary "true" "false" .Values.image.debug | quote }} value: {{ ternary "true" "false" .Values.image.debug | quote }}
{{- if .Values.collector.extraEnvVars }} {{- if .Values.collector.extraEnvVars }}
@@ -150,23 +172,24 @@ spec:
{{- else if .Values.collector.startupProbe.enabled }} {{- else if .Values.collector.startupProbe.enabled }}
startupProbe: {{- include "common.tplvalues.render" (dict "value" (omit .Values.collector.startupProbe "enabled") "context" $) | nindent 12 }} startupProbe: {{- include "common.tplvalues.render" (dict "value" (omit .Values.collector.startupProbe "enabled") "context" $) | nindent 12 }}
httpGet: httpGet:
path: / path: /status
port: admin port: healthcheck
{{- end }} {{- end }}
{{- if .Values.collector.customLivenessProbe }} {{- if .Values.collector.customLivenessProbe }}
livenessProbe: {{- include "common.tplvalues.render" (dict "value" .Values.collector.customLivenessProbe "context" $) | nindent 12 }} livenessProbe: {{- include "common.tplvalues.render" (dict "value" .Values.collector.customLivenessProbe "context" $) | nindent 12 }}
{{- else if .Values.collector.livenessProbe.enabled }} {{- else if .Values.collector.livenessProbe.enabled }}
livenessProbe: {{- include "common.tplvalues.render" (dict "value" (omit .Values.collector.livenessProbe "enabled") "context" $) | nindent 12 }} livenessProbe: {{- include "common.tplvalues.render" (dict "value" (omit .Values.collector.livenessProbe "enabled") "context" $) | nindent 12 }}
tcpSocket: httpGet:
port: admin path: /status
port: healthcheck
{{- end }} {{- end }}
{{- if .Values.collector.customReadinessProbe }} {{- if .Values.collector.customReadinessProbe }}
readinessProbe: {{- include "common.tplvalues.render" (dict "value" .Values.collector.customReadinessProbe "context" $) | nindent 12 }} readinessProbe: {{- include "common.tplvalues.render" (dict "value" .Values.collector.customReadinessProbe "context" $) | nindent 12 }}
{{- else if .Values.collector.readinessProbe.enabled }} {{- else if .Values.collector.readinessProbe.enabled }}
readinessProbe: {{- include "common.tplvalues.render" (dict "value" (omit .Values.collector.readinessProbe "enabled") "context" $) | nindent 12 }} readinessProbe: {{- include "common.tplvalues.render" (dict "value" (omit .Values.collector.readinessProbe "enabled") "context" $) | nindent 12 }}
httpGet: httpGet:
path: / path: /status
port: admin port: healthcheck
{{- end }} {{- end }}
{{- end }} {{- end }}
{{- if .Values.query.resources }} {{- if .Values.query.resources }}
@@ -174,13 +197,19 @@ spec:
{{- else if ne .Values.collector.resourcesPreset "none" }} {{- else if ne .Values.collector.resourcesPreset "none" }}
resources: {{- include "common.resources.preset" (dict "type" .Values.collector.resourcesPreset) | nindent 12 }} resources: {{- include "common.resources.preset" (dict "type" .Values.collector.resourcesPreset) | nindent 12 }}
{{- end }} {{- end }}
{{- if .Values.collector.extraVolumeMounts }} volumeMounts:
volumeMounts: {{- include "common.tplvalues.render" ( dict "value" .Values.collector.extraVolumeMounts "context" $) | nindent 12 }} - name: configuration
{{- end }} mountPath: /opt/bitnami/jaeger/conf
{{- if .Values.collector.extraVolumeMounts }}
{{- include "common.tplvalues.render" ( dict "value" .Values.collector.extraVolumeMounts "context" $) | nindent 12 }}
{{- end }}
{{- if .Values.collector.sidecars }} {{- if .Values.collector.sidecars }}
{{- include "common.tplvalues.render" ( dict "value" .Values.collector.sidecars "context" $) | nindent 8 }} {{- include "common.tplvalues.render" ( dict "value" .Values.collector.sidecars "context" $) | nindent 8 }}
{{- end }} {{- end }}
volumes: volumes:
- name: configuration
configMap:
name: {{ include "jaeger.collector.configMapName" . }}
{{- if .Values.collector.extraVolumes }} {{- if .Values.collector.extraVolumes }}
{{- include "common.tplvalues.render" ( dict "value" .Values.collector.extraVolumes "context" $) | nindent 8 }} {{- include "common.tplvalues.render" ( dict "value" .Values.collector.extraVolumes "context" $) | nindent 8 }}
{{- end }} {{- end }}

View File

@@ -33,23 +33,6 @@ spec:
protocol: UDP protocol: UDP
- port: 53 - port: 53
protocol: TCP protocol: TCP
# Allow outbound connections to other collector pods
- ports:
- port: {{ .Values.collector.containerPorts.binary }}
- port: {{ .Values.collector.containerPorts.zipkin }}
- port: {{ .Values.collector.containerPorts.grpc }}
- port: {{ .Values.collector.containerPorts.admin }}
to:
- podSelector:
matchLabels: {{- include "common.labels.matchLabels" ( dict "customLabels" .Values.commonLabels "context" $ ) | nindent 14 }}
app.kubernetes.io/component: collector
# Allow outbound connections to other query pods
- ports:
- port: {{ .Values.query.containerPorts.admin }}
to:
- podSelector:
matchLabels: {{- include "common.labels.matchLabels" ( dict "customLabels" .Values.commonLabels "context" $ ) | nindent 14 }}
app.kubernetes.io/component: query
# Allow outbound connections to Cassandra # Allow outbound connections to Cassandra
- ports: - ports:
- port: {{ include "jaeger.cassandra.port" . | trimAll "\"" | int }} - port: {{ include "jaeger.cassandra.port" . | trimAll "\"" | int }}
@@ -66,12 +49,18 @@ spec:
{{- end }} {{- end }}
ingress: ingress:
- ports: - ports:
- port: {{ .Values.collector.containerPorts.binary }} {{- if has "otlp" .Values.collector.receivers }}
- port: {{ .Values.collector.containerPorts.zipkin }}
- port: {{ .Values.collector.containerPorts.grpc }}
- port: {{ .Values.collector.containerPorts.admin }}
- port: {{ .Values.collector.containerPorts.otlp.grpc }} - port: {{ .Values.collector.containerPorts.otlp.grpc }}
- port: {{ .Values.collector.containerPorts.otlp.http }} - port: {{ .Values.collector.containerPorts.otlp.http }}
{{- end }}
{{- if has "jaeger" .Values.collector.receivers }}
- port: {{ .Values.collector.containerPorts.jaeger.thrift_http }}
- port: {{ .Values.collector.containerPorts.jaeger.grpc }}
{{- end }}
{{- if has "zipkin" .Values.collector.receivers }}
- port: {{ .Values.collector.containerPorts.zipkin }}
{{- end }}
- port: {{ .Values.collector.containerPorts.metrics }}
{{- if not .Values.collector.networkPolicy.allowExternal }} {{- if not .Values.collector.networkPolicy.allowExternal }}
from: from:
- podSelector: - podSelector:

View File

@@ -36,38 +36,7 @@ spec:
externalTrafficPolicy: {{ .Values.collector.service.externalTrafficPolicy | quote }} externalTrafficPolicy: {{ .Values.collector.service.externalTrafficPolicy | quote }}
{{- end }} {{- end }}
ports: ports:
- name: grpc {{- if has "otlp" .Values.collector.receivers }}
port: {{ .Values.collector.service.ports.grpc }}
targetPort: {{ .Values.collector.containerPorts.grpc }}
{{- if and (or (eq .Values.collector.service.type "NodePort") (eq .Values.collector.service.type "LoadBalancer")) (not (empty .Values.collector.service.nodePorts.grpc)) }}
nodePort: {{ .Values.collector.service.nodePorts.grpc }}
{{- else if eq .Values.collector.service.type "ClusterIP" }}
nodePort: null
{{- end }}
- name: binary
port: {{ .Values.collector.service.ports.binary }}
targetPort: {{ .Values.collector.containerPorts.binary }}
{{- if and (or (eq .Values.collector.service.type "NodePort") (eq .Values.collector.service.type "LoadBalancer")) (not (empty .Values.collector.service.nodePorts.binary)) }}
nodePort: {{ .Values.collector.service.nodePorts.binary }}
{{- else if eq .Values.collector.service.type "ClusterIP" }}
nodePort: null
{{- end }}
- name: zipkin
port: {{ .Values.collector.service.ports.zipkin }}
targetPort: {{ .Values.collector.containerPorts.zipkin }}
{{- if and (or (eq .Values.collector.service.type "NodePort") (eq .Values.collector.service.type "LoadBalancer")) (not (empty .Values.collector.service.nodePorts.zipkin)) }}
nodePort: {{ .Values.collector.service.nodePorts.zipkin }}
{{- else if eq .Values.collector.service.type "ClusterIP" }}
nodePort: null
{{- end }}
- name: admin
port: {{ .Values.collector.service.ports.admin }}
targetPort: {{ .Values.collector.containerPorts.admin }}
{{- if and (or (eq .Values.collector.service.type "NodePort") (eq .Values.collector.service.type "LoadBalancer")) (not (empty .Values.collector.service.nodePorts.admin)) }}
nodePort: {{ .Values.collector.service.nodePorts.admin }}
{{- else if eq .Values.collector.service.type "ClusterIP" }}
nodePort: null
{{- end }}
- name: otlp-grpc - name: otlp-grpc
port: {{ .Values.collector.service.ports.otlp.grpc }} port: {{ .Values.collector.service.ports.otlp.grpc }}
targetPort: {{ .Values.collector.containerPorts.otlp.grpc }} targetPort: {{ .Values.collector.containerPorts.otlp.grpc }}
@@ -84,6 +53,43 @@ spec:
{{- else if eq .Values.collector.service.type "ClusterIP" }} {{- else if eq .Values.collector.service.type "ClusterIP" }}
nodePort: null nodePort: null
{{- end }} {{- end }}
{{- end }}
{{- if has "jaeger" .Values.collector.receivers }}
- name: jaeger-grpc
port: {{ .Values.collector.service.ports.jaeger.grpc }}
targetPort: {{ .Values.collector.containerPorts.jaeger.grpc }}
{{- if and (or (eq .Values.collector.service.type "NodePort") (eq .Values.collector.service.type "LoadBalancer")) (not (empty .Values.collector.service.nodePorts.jaeger.grpc)) }}
nodePort: {{ .Values.collector.service.nodePorts.jaeger.grpc }}
{{- else if eq .Values.collector.service.type "ClusterIP" }}
nodePort: null
{{- end }}
- name: jaeger-http-thrift
port: {{ .Values.collector.service.ports.jaeger.thrift_http }}
targetPort: {{ .Values.collector.containerPorts.jaeger.thrift_http }}
{{- if and (or (eq .Values.collector.service.type "NodePort") (eq .Values.collector.service.type "LoadBalancer")) (not (empty .Values.collector.service.nodePorts.jaeger.thrift_http)) }}
nodePort: {{ .Values.collector.service.nodePorts.jaeger.thrift_http }}
{{- else if eq .Values.collector.service.type "ClusterIP" }}
nodePort: null
{{- end }}
{{- end }}
{{- if has "zipkin" .Values.collector.receivers }}
- name: zipkin
port: {{ .Values.collector.service.ports.zipkin }}
targetPort: {{ .Values.collector.containerPorts.zipkin }}
{{- if and (or (eq .Values.collector.service.type "NodePort") (eq .Values.collector.service.type "LoadBalancer")) (not (empty .Values.collector.service.nodePorts.zipkin)) }}
nodePort: {{ .Values.collector.service.nodePorts.zipkin }}
{{- else if eq .Values.collector.service.type "ClusterIP" }}
nodePort: null
{{- end }}
{{- end }}
- name: metrics
port: {{ .Values.collector.service.ports.metrics }}
targetPort: {{ .Values.collector.containerPorts.metrics }}
{{- if and (or (eq .Values.collector.service.type "NodePort") (eq .Values.collector.service.type "LoadBalancer")) (not (empty .Values.collector.service.nodePorts.metrics)) }}
nodePort: {{ .Values.collector.service.nodePorts.metrics }}
{{- else if eq .Values.collector.service.type "ClusterIP" }}
nodePort: null
{{- end }}
{{- if .Values.collector.service.extraPorts }} {{- if .Values.collector.service.extraPorts }}
{{- include "common.tplvalues.render" (dict "value" .Values.collector.service.extraPorts "context" $) | nindent 4 }} {{- include "common.tplvalues.render" (dict "value" .Values.collector.service.extraPorts "context" $) | nindent 4 }}
{{- end }} {{- end }}

View File

@@ -1,129 +0,0 @@
{{- /*
Copyright Broadcom, Inc. All Rights Reserved.
SPDX-License-Identifier: APACHE-2.0
*/}}
apiVersion: batch/v1
kind: Job
metadata:
name: {{ include "common.names.fullname" . }}-migrate
namespace: {{ include "common.names.namespace" . | quote }}
labels: {{- include "common.labels.standard" ( dict "customLabels" .Values.commonLabels "context" $ ) | nindent 4 }}
app.kubernetes.io/component: migration
{{- if or .Values.migration.annotations .Values.commonAnnotations }}
{{- $annotations := include "common.tplvalues.merge" ( dict "values" ( list .Values.migration.annotations .Values.commonAnnotations ) "context" . ) }}
annotations: {{- include "common.tplvalues.render" ( dict "value" $annotations "context" $) | nindent 4 }}
{{- end }}
spec:
ttlSecondsAfterFinished: 30
template:
metadata:
{{- $podLabels := include "common.tplvalues.merge" ( dict "values" ( list .Values.migration.podLabels .Values.commonLabels ) "context" . ) }}
labels: {{- include "common.labels.standard" ( dict "customLabels" $podLabels "context" $ ) | nindent 8 }}
app.kubernetes.io/component: migration
{{- if .Values.migration.podAnnotations }}
annotations: {{- include "common.tplvalues.render" (dict "value" .Values.migration.podAnnotations "context" $) | nindent 8 }}
{{- end }}
spec:
{{- include "jaeger.imagePullSecrets" . | nindent 6 }}
restartPolicy: OnFailure
{{- if .Values.migration.podSecurityContext.enabled }}
securityContext: {{- include "common.compatibility.renderSecurityContext" (dict "secContext" .Values.migration.podSecurityContext "context" $) | nindent 8 }}
{{- end }}
initContainers:
- name: jaeger-cassandra-schema-grabber
image: {{ include "jaeger.image" . }}
command: [ "cp", "-T", "-r", "/opt/bitnami/jaeger/cassandra-schema", "/cassandra-schema/" ]
volumeMounts:
- name: cassandra-schema
mountPath: "/cassandra-schema"
{{- if .Values.migration.containerSecurityContext.enabled }}
securityContext: {{- include "common.compatibility.renderSecurityContext" (dict "secContext" .Values.migration.containerSecurityContext "context" $) | nindent 12 }}
{{- end }}
{{- if .Values.migration.initContainer.resources }}
resources: {{- toYaml .Values.migration.initContainer.resources | nindent 12 }}
{{- else if ne .Values.migration.initContainer.resourcesPreset "none" }}
resources: {{- include "common.resources.preset" (dict "type" .Values.migration.initContainer.resourcesPreset) | nindent 12 }}
{{- end }}
containers:
- name: jaeger-cassandra-migrator
image: {{ include "jaeger.cqlshImage" . }}
command:
- /bin/bash
args:
- -ec
- |
#!/bin/bash
set -o errexit
set -o nounset
set -o pipefail
. /opt/bitnami/scripts/libos.sh
check_cassandra_connection() {
echo "SELECT 1" | cqlsh -u $CASSANDRA_USERNAME -p $CASSANDRA_PASSWORD -e "QUIT"
}
info "Connecting to the Cassandra instance $CQLSH_HOST:$CQLSH_PORT"
if ! retry_while "check_cassandra_connection" 12 30; then
error "Could not connect to the database server"
exit 1
else
info "Connection check success"
sed -i 's/cqlsh -e "show version"/cqlsh -e "show version" -u $CASSANDRA_USERNAME -p $CASSANDRA_PASSWORD /' /cassandra-schema/create.sh
/cassandra-schema/docker.sh
fi
{{- if .Values.migration.containerSecurityContext.enabled }}
securityContext: {{- include "common.compatibility.renderSecurityContext" (dict "secContext" .Values.migration.containerSecurityContext "context" $) | nindent 12 }}
{{- end }}
env:
- name: CQLSH
value: /opt/bitnami/cassandra/bin/cqlsh
- name: CQLSH_HOST
value: {{ include "jaeger.cassandra.host" . }}
- name: CQLSH_PORT
value: {{ include "jaeger.cassandra.port" . }}
- name: CASSANDRA_USERNAME
value: {{ include "jaeger.cassandra.user" . }}
- name: DATACENTER
value: {{ include "jaeger.cassandra.datacenter" . }}
- name: KEYSPACE
value: {{ include "jaeger.cassandra.keyspace" . }}
- name: CASSANDRA_PASSWORD
valueFrom:
secretKeyRef:
name: {{ include "jaeger.cassandra.secretName" . }}
key: {{ include "jaeger.cassandra.secretKey" . }}
{{- if or .Values.migration.extraEnvVarsCM .Values.migration.extraEnvVarsSecret }}
envFrom:
{{- if .Values.migration.extraEnvVarsCM }}
- configMapRef:
name: {{ .Values.migration.extraEnvVarsCM }}
{{- end }}
{{- if .Values.migration.extraEnvVarsSecret }}
- secretRef:
name: {{ .Values.migration.extraEnvVarsSecret }}
{{- end }}
{{- end }}
{{- if .Values.migration.extraEnvVars }}
{{- include "common.tplvalues.render" (dict "value" .Values.migration.extraEnvVars "context" $) | nindent 12 }}
{{- end }}
volumeMounts:
- name: cassandra-schema
mountPath: "/cassandra-schema"
{{- if .Values.migration.extraVolumeMounts }}
{{- include "common.tplvalues.render" (dict "value" .Values.migration.extraVolumeMounts "context" $) | nindent 12 }}
{{- end }}
{{- if .Values.migration.resources }}
resources: {{- toYaml .Values.migration.resources | nindent 12 }}
{{- else if ne .Values.migration.resourcesPreset "none" }}
resources: {{- include "common.resources.preset" (dict "type" .Values.migration.resourcesPreset) | nindent 12 }}
{{- end }}
volumes:
- name: cassandra-schema
emptyDir: {}
{{- if .Values.migration.extraVolumes }}
{{- include "common.tplvalues.render" (dict "value" .Values.migration.extraVolumes "context" $) | nindent 6 }}
{{- end }}

View File

@@ -0,0 +1,76 @@
{{- /*
Copyright Broadcom, Inc. All Rights Reserved.
SPDX-License-Identifier: APACHE-2.0
*/}}
{{/*
Return the Jaeger query configuration.
*/}}
{{- define "jaeger.query.configuration" -}}
{{- if .Values.query.configuration }}
{{- include "common.tplvalues.render" (dict "value" .Values.query.configuration "context" .) }}
{{- else }}
service:
extensions: [jaeger_storage, jaeger_query, healthcheckv2]
pipelines:
traces:
receivers: [nop]
processors: [batch]
exporters: [nop]
telemetry:
resource:
service.name: jaeger-query
metrics:
level: detailed
readers:
- pull:
exporter:
prometheus:
host: 0.0.0.0
port: "${env:QUERY_METRICS_PORT}"
logs:
level: info
extensions:
healthcheckv2:
use_v2: true
http:
endpoint: "${env:QUERY_HEALTHCHECK_HOST_PORT}"
jaeger_query:
storage:
traces: jaeger_storage
grpc:
endpoint: "${env:QUERY_GRPC_SERVER_HOST_PORT}"
http:
endpoint: "${env:QUERY_HTTP_SERVER_HOST_PORT}"
jaeger_storage:
backends:
jaeger_storage: {{ include "jaeger.cassandra.storage" . | nindent 8 }}
receivers:
nop:
processors:
batch:
exporters:
nop:
{{- end -}}
{{- end -}}
{{- if not .Values.query.existingConfigmap }}
apiVersion: v1
kind: ConfigMap
metadata:
name: {{ template "jaeger.query.fullname" . }}
namespace: {{ include "common.names.namespace" . | quote }}
labels: {{- include "common.labels.standard" ( dict "customLabels" .Values.commonLabels "context" $ ) | nindent 4 }}
app.kubernetes.io/component: query
{{- if .Values.commonAnnotations }}
annotations: {{- include "common.tplvalues.render" (dict "value" .Values.commonAnnotations "context" $) | nindent 4 }}
{{- end }}
{{- $configuration := include "jaeger.query.configuration" . | fromYaml -}}
{{- if .Values.query.overrideConfiguration }}
{{- $overrideConfiguration := include "common.tplvalues.render" (dict "value" .Values.query.overrideConfiguration "context" .) | fromYaml }}
{{- $configuration = mustMergeOverwrite $configuration $overrideConfiguration }}
{{- end }}
data:
query-config.yaml: |-
{{- toYaml $configuration | nindent 4 }}
{{- end }}

View File

@@ -27,8 +27,14 @@ spec:
labels: {{- include "common.labels.standard" ( dict "customLabels" $podLabels "context" $ ) | nindent 8 }} labels: {{- include "common.labels.standard" ( dict "customLabels" $podLabels "context" $ ) | nindent 8 }}
app.kubernetes.io/part-of: jaeger app.kubernetes.io/part-of: jaeger
app.kubernetes.io/component: query app.kubernetes.io/component: query
{{- if .Values.query.podAnnotations }} {{- if or .Values.query.podAnnotations (not .Values.query.existingConfigmap) }}
annotations: {{- include "common.tplvalues.render" (dict "value" .Values.query.podAnnotations "context" $) | nindent 8 }} annotations:
{{- if not .Values.query.existingConfigmap }}
checksum/configmap: {{ include (print $.Template.BasePath "/query/configmap.yaml") . | sha256sum }}
{{- end }}
{{- if .Values.query.podAnnotations }}
{{- include "common.tplvalues.render" (dict "value" .Values.query.podAnnotations "context" $) | nindent 8 }}
{{- end }}
{{- end }} {{- end }}
spec: spec:
{{- include "jaeger.imagePullSecrets" . | nindent 6 }} {{- include "jaeger.imagePullSecrets" . | nindent 6 }}
@@ -76,24 +82,28 @@ spec:
command: {{- include "common.tplvalues.render" (dict "value" .Values.diagnosticMode.command "context" $) | nindent 12 }} command: {{- include "common.tplvalues.render" (dict "value" .Values.diagnosticMode.command "context" $) | nindent 12 }}
{{- else if .Values.query.command }} {{- else if .Values.query.command }}
command: {{- include "common.tplvalues.render" (dict "value" .Values.query.command "context" $) | nindent 12 }} command: {{- include "common.tplvalues.render" (dict "value" .Values.query.command "context" $) | nindent 12 }}
{{- else }}
command: ["/opt/bitnami/jaeger/bin/jaeger-query"]
{{- end }} {{- end }}
{{- if .Values.diagnosticMode.enabled }} {{- if .Values.diagnosticMode.enabled }}
args: {{- include "common.tplvalues.render" (dict "value" .Values.diagnosticMode.args "context" $) | nindent 12 }} args: {{- include "common.tplvalues.render" (dict "value" .Values.diagnosticMode.args "context" $) | nindent 12 }}
{{- else if .Values.query.args }} {{- else if .Values.query.args }}
args: {{- include "common.tplvalues.render" (dict "value" .Values.query.args "context" $) | nindent 12 }} args: {{- include "common.tplvalues.render" (dict "value" .Values.query.args "context" $) | nindent 12 }}
{{- else }} {{- else }}
args: ["--cassandra.basic.allowed-authenticators=org.apache.cassandra.auth.PasswordAuthenticator"] args:
- "--config"
- "/opt/bitnami/jaeger/conf/query-config.yaml"
{{- end }} {{- end }}
{{- if .Values.query.lifecycleHooks }} {{- if .Values.query.lifecycleHooks }}
lifecycle: {{- include "common.tplvalues.render" (dict "value" .Values.query.lifecycleHooks "context" $) | nindent 12 }} lifecycle: {{- include "common.tplvalues.render" (dict "value" .Values.query.lifecycleHooks "context" $) | nindent 12 }}
{{- end }} {{- end }}
ports: ports:
- name: ui - name: http
containerPort: {{ .Values.query.containerPorts.api }} containerPort: {{ .Values.query.containerPorts.http }}
- name: admin - name: grpc
containerPort: {{ .Values.query.containerPorts.admin }} containerPort: {{ .Values.query.containerPorts.grpc }}
- name: healthcheck
containerPort: {{ .Values.query.containerPorts.healthcheck }}
- name: metrics
containerPort: {{ .Values.query.containerPorts.metrics }}
env: env:
- name: CASSANDRA_SERVERS - name: CASSANDRA_SERVERS
value: {{ include "jaeger.cassandra.host" . }} value: {{ include "jaeger.cassandra.host" . }}
@@ -111,11 +121,13 @@ spec:
- name: CASSANDRA_DATACENTER - name: CASSANDRA_DATACENTER
value: {{ include "jaeger.cassandra.datacenter" . }} value: {{ include "jaeger.cassandra.datacenter" . }}
- name: QUERY_HTTP_SERVER_HOST_PORT - name: QUERY_HTTP_SERVER_HOST_PORT
value: {{ printf ":%v" .Values.query.containerPorts.api | quote }} value: {{ printf ":%v" .Values.query.containerPorts.http | quote }}
- name: QUERY_GRPC_SERVER_HOST_PORT - name: QUERY_GRPC_SERVER_HOST_PORT
value: {{ printf ":%v" .Values.query.containerPorts.grpc | quote }} value: {{ printf ":%v" .Values.query.containerPorts.grpc | quote }}
- name: ADMIN_HTTP_HOST_PORT - name: QUERY_HEALTHCHECK_HOST_PORT
value: {{ printf ":%v" .Values.query.containerPorts.admin | quote }} value: {{ printf ":%v" .Values.query.containerPorts.healthcheck | quote }}
- name: QUERY_METRICS_PORT
value: {{ .Values.collector.containerPorts.metrics | quote }}
- name: BITNAMI_DEBUG - name: BITNAMI_DEBUG
value: {{ ternary "true" "false" .Values.image.debug | quote }} value: {{ ternary "true" "false" .Values.image.debug | quote }}
{{- if .Values.query.extraEnvVars }} {{- if .Values.query.extraEnvVars }}
@@ -136,23 +148,24 @@ spec:
{{- else if .Values.query.startupProbe.enabled }} {{- else if .Values.query.startupProbe.enabled }}
startupProbe: {{- include "common.tplvalues.render" (dict "value" (omit .Values.query.startupProbe "enabled") "context" $) | nindent 12 }} startupProbe: {{- include "common.tplvalues.render" (dict "value" (omit .Values.query.startupProbe "enabled") "context" $) | nindent 12 }}
httpGet: httpGet:
path: / path: /status
port: admin port: healthcheck
{{- end }} {{- end }}
{{- if .Values.query.customLivenessProbe }} {{- if .Values.query.customLivenessProbe }}
livenessProbe: {{- include "common.tplvalues.render" (dict "value" .Values.query.customLivenessProbe "context" $) | nindent 12 }} livenessProbe: {{- include "common.tplvalues.render" (dict "value" .Values.query.customLivenessProbe "context" $) | nindent 12 }}
{{- else if .Values.query.livenessProbe.enabled }} {{- else if .Values.query.livenessProbe.enabled }}
livenessProbe: {{- include "common.tplvalues.render" (dict "value" (omit .Values.query.livenessProbe "enabled") "context" $) | nindent 12 }} livenessProbe: {{- include "common.tplvalues.render" (dict "value" (omit .Values.query.livenessProbe "enabled") "context" $) | nindent 12 }}
tcpSocket: httpGet:
port: admin path: /status
port: healthcheck
{{- end }} {{- end }}
{{- if .Values.query.customReadinessProbe }} {{- if .Values.query.customReadinessProbe }}
readinessProbe: {{- include "common.tplvalues.render" (dict "value" .Values.query.customReadinessProbe "context" $) | nindent 12 }} readinessProbe: {{- include "common.tplvalues.render" (dict "value" .Values.query.customReadinessProbe "context" $) | nindent 12 }}
{{- else if .Values.query.readinessProbe.enabled }} {{- else if .Values.query.readinessProbe.enabled }}
readinessProbe: {{- include "common.tplvalues.render" (dict "value" (omit .Values.query.readinessProbe "enabled") "context" $) | nindent 12 }} readinessProbe: {{- include "common.tplvalues.render" (dict "value" (omit .Values.query.readinessProbe "enabled") "context" $) | nindent 12 }}
httpGet: httpGet:
path: / path: /status
port: admin port: healthcheck
{{- end }} {{- end }}
{{- end }} {{- end }}
{{- if .Values.query.resources }} {{- if .Values.query.resources }}
@@ -160,13 +173,19 @@ spec:
{{- else if ne .Values.query.resourcesPreset "none" }} {{- else if ne .Values.query.resourcesPreset "none" }}
resources: {{- include "common.resources.preset" (dict "type" .Values.query.resourcesPreset) | nindent 12 }} resources: {{- include "common.resources.preset" (dict "type" .Values.query.resourcesPreset) | nindent 12 }}
{{- end }} {{- end }}
{{- if .Values.query.extraVolumeMounts }} volumeMounts:
volumeMounts: {{- include "common.tplvalues.render" ( dict "value" .Values.query.extraVolumeMounts "context" $) | nindent 12 }} - name: configuration
{{- end }} mountPath: /opt/bitnami/jaeger/conf
{{- if .Values.query.extraVolumeMounts }}
{{- include "common.tplvalues.render" ( dict "value" .Values.query.extraVolumeMounts "context" $) | nindent 12 }}
{{- end }}
{{- if .Values.query.sidecars }} {{- if .Values.query.sidecars }}
{{- include "common.tplvalues.render" ( dict "value" .Values.query.sidecars "context" $) | nindent 8 }} {{- include "common.tplvalues.render" ( dict "value" .Values.query.sidecars "context" $) | nindent 8 }}
{{- end }} {{- end }}
volumes: volumes:
- name: configuration
configMap:
name: {{ include "jaeger.query.configMapName" . }}
{{- if .Values.query.extraVolumes }} {{- if .Values.query.extraVolumes }}
{{- include "common.tplvalues.render" ( dict "value" .Values.query.extraVolumes "context" $) | nindent 8 }} {{- include "common.tplvalues.render" ( dict "value" .Values.query.extraVolumes "context" $) | nindent 8 }}
{{- end }} {{- end }}

View File

@@ -33,24 +33,6 @@ spec:
protocol: UDP protocol: UDP
- port: 53 - port: 53
protocol: TCP protocol: TCP
# Allow outbound connections to other collector pods
- ports:
- port: {{ .Values.collector.containerPorts.binary }}
- port: {{ .Values.collector.containerPorts.zipkin }}
- port: {{ .Values.collector.containerPorts.grpc }}
- port: {{ .Values.collector.containerPorts.admin }}
to:
- podSelector:
matchLabels: {{- include "common.labels.matchLabels" ( dict "customLabels" .Values.commonLabels "context" $ ) | nindent 14 }}
app.kubernetes.io/component: collector
# Allow outbound connections to other query pods
- ports:
- port: {{ .Values.query.containerPorts.admin }}
- port: {{ .Values.query.containerPorts.ui }}
to:
- podSelector:
matchLabels: {{- include "common.labels.matchLabels" ( dict "customLabels" .Values.commonLabels "context" $ ) | nindent 14 }}
app.kubernetes.io/component: query
# Allow outbound connections to Cassandra # Allow outbound connections to Cassandra
- ports: - ports:
- port: {{ include "jaeger.cassandra.port" . | trimAll "\"" | int }} - port: {{ include "jaeger.cassandra.port" . | trimAll "\"" | int }}
@@ -67,8 +49,9 @@ spec:
{{- end }} {{- end }}
ingress: ingress:
- ports: - ports:
- port: {{ .Values.query.containerPorts.admin }} - port: {{ .Values.query.containerPorts.http }}
- port: {{ .Values.query.containerPorts.ui }} - port: {{ .Values.query.containerPorts.grpc }}
- port: {{ .Values.query.containerPorts.metrics }}
{{- if not .Values.collector.networkPolicy.allowExternal }} {{- if not .Values.collector.networkPolicy.allowExternal }}
from: from:
- podSelector: - podSelector:

View File

@@ -36,19 +36,27 @@ spec:
externalTrafficPolicy: {{ .Values.query.service.externalTrafficPolicy | quote }} externalTrafficPolicy: {{ .Values.query.service.externalTrafficPolicy | quote }}
{{- end }} {{- end }}
ports: ports:
- name: api - name: grpc
port: {{ .Values.query.service.ports.api }} port: {{ .Values.query.service.ports.grpc }}
targetPort: {{ .Values.query.containerPorts.api }} targetPort: {{ .Values.query.containerPorts.grpc }}
{{- if and (or (eq .Values.query.service.type "NodePort") (eq .Values.query.service.type "LoadBalancer")) (not (empty .Values.query.service.nodePorts.api)) }} {{- if and (or (eq .Values.query.service.type "NodePort") (eq .Values.query.service.type "LoadBalancer")) (not (empty .Values.query.service.nodePorts.grpc)) }}
nodePort: {{ .Values.query.service.nodePorts.api }} nodePort: {{ .Values.query.service.nodePorts.grpc }}
{{- else if eq .Values.query.service.type "ClusterIP" }} {{- else if eq .Values.query.service.type "ClusterIP" }}
nodePort: null nodePort: null
{{- end }} {{- end }}
- name: admin - name: http
port: {{ .Values.query.service.ports.admin }} port: {{ .Values.query.service.ports.http }}
targetPort: {{ .Values.query.containerPorts.admin }} targetPort: {{ .Values.query.containerPorts.http }}
{{- if and (or (eq .Values.query.service.type "NodePort") (eq .Values.query.service.type "LoadBalancer")) (not (empty .Values.query.service.nodePorts.admin)) }} {{- if and (or (eq .Values.query.service.type "NodePort") (eq .Values.query.service.type "LoadBalancer")) (not (empty .Values.query.service.nodePorts.http)) }}
nodePort: {{ .Values.query.service.nodePorts.admin }} nodePort: {{ .Values.query.service.nodePorts.http }}
{{- else if eq .Values.query.service.type "ClusterIP" }}
nodePort: null
{{- end }}
- name: metrics
port: {{ .Values.query.service.ports.metrics }}
targetPort: {{ .Values.query.containerPorts.metrics }}
{{- if and (or (eq .Values.query.service.type "NodePort") (eq .Values.query.service.type "LoadBalancer")) (not (empty .Values.query.service.nodePorts.metrics)) }}
nodePort: {{ .Values.query.service.nodePorts.metrics }}
{{- else if eq .Values.query.service.type "ClusterIP" }} {{- else if eq .Values.query.service.type "ClusterIP" }}
nodePort: null nodePort: null
{{- end }} {{- end }}

View File

@@ -81,7 +81,7 @@ diagnosticMode:
image: image:
registry: docker.io registry: docker.io
repository: bitnami/jaeger repository: bitnami/jaeger
tag: 2.8.0-debian-12-r2 tag: 2.8.0-debian-12-r4
digest: "" digest: ""
## Specify a imagePullPolicy ## Specify a imagePullPolicy
## ref: https://kubernetes.io/docs/concepts/containers/images/#pre-pulled-images ## ref: https://kubernetes.io/docs/concepts/containers/images/#pre-pulled-images
@@ -213,18 +213,30 @@ query:
## @param query.extraVolumeMounts Optionally specify extra list of additional volumeMounts for jaeger container ## @param query.extraVolumeMounts Optionally specify extra list of additional volumeMounts for jaeger container
## ##
extraVolumeMounts: [] extraVolumeMounts: []
## @param query.configuration Specify content for Jaeger collector configuration (auto-generated based on other values otherwise)
##
configuration: {}
## @param query.overrideConfiguration Jaeger query common configuration override. Values defined here takes precedence over the ones defined at `query.configuration`
##
overrideConfiguration: {}
## @param query.existingConfigmap The name of an existing ConfigMap with your custom configuration for Jaeger collector
##
existingConfigmap: ""
## Container ports to expose ## Container ports to expose
## ref: https://kubernetes.io/docs/concepts/services-networking/service/#type-nodeport ## ref: https://kubernetes.io/docs/concepts/services-networking/service/#type-nodeport
containerPorts: containerPorts:
## @param query.containerPorts.grpc Port for GRPC ## @param query.containerPorts.grpc Port for GRPC API
## ##
grpc: 16685 grpc: 16685
## @param query.containerPorts.api Port for API ## @param query.containerPorts.http Port for HTTP API
## ##
api: 16686 http: 16686
## @param query.containerPorts.admin Port for admin ## @param query.containerPorts.metrics Jaeger query prometheus metrics port
## ##
admin: 16687 metrics: 8888
## @param query.containerPorts.healthcheck Jaeger query healthcheck port
##
healthcheck: 13133
## Jaeger query.service parameters ## Jaeger query.service parameters
## ##
service: service:
@@ -234,21 +246,27 @@ query:
## Ports to expose ## Ports to expose
## ref: https://kubernetes.io/docs/concepts/services-networking/service/#type-nodeport ## ref: https://kubernetes.io/docs/concepts/services-networking/service/#type-nodeport
ports: ports:
## @param query.service.ports.api Port for API ## @param query.service.ports.grpc Port for gRPC API
## ##
api: 16686 grpc: 16685
## @param query.service.ports.admin Port for admin ## @param query.service.ports.http Port for API
## ##
admin: 16687 http: 16686
## @param query.service.ports.metrics Jaeger query prometheus metrics port
##
metrics: 8888
## Node ports to expose ## Node ports to expose
## ref: https://kubernetes.io/docs/concepts/services-networking/service/#type-nodeport ## ref: https://kubernetes.io/docs/concepts/services-networking/service/#type-nodeport
nodePorts: nodePorts:
## @param query.service.nodePorts.api Node port for API ## @param query.service.nodePorts.grpc Port for gRPC API
## ##
api: "" grpc: ""
## @param query.service.nodePorts.admin Node port for admin ## @param query.service.nodePorts.http Node port for API
## ##
admin: "" http: ""
## @param query.service.nodePorts.metrics Jaeger query prometheus metrics port
##
metrics: ""
## @param query.service.extraPorts Extra ports to expose in the service (normally used with the `sidecar` value) ## @param query.service.extraPorts Extra ports to expose in the service (normally used with the `sidecar` value)
## ##
extraPorts: [] extraPorts: []
@@ -292,7 +310,7 @@ query:
metrics: metrics:
annotations: annotations:
prometheus.io/scrape: "true" prometheus.io/scrape: "true"
prometheus.io/port: "{{ .Values.query.service.ports.admin }}" prometheus.io/port: "{{ .Values.query.service.ports.metrics }}"
prometheus.io/path: "/metrics" prometheus.io/path: "/metrics"
## Network Policies ## Network Policies
## Ref: https://kubernetes.io/docs/concepts/services-networking/network-policies/ ## Ref: https://kubernetes.io/docs/concepts/services-networking/network-policies/
@@ -604,21 +622,24 @@ collector:
## @param collector.extraVolumeMounts Optionally specify extra list of additional volumeMounts for jaeger container ## @param collector.extraVolumeMounts Optionally specify extra list of additional volumeMounts for jaeger container
## ##
extraVolumeMounts: [] extraVolumeMounts: []
## Container ports to expose ## @param collector.configuration Specify content for Jaeger collector configuration (auto-generated based on other values otherwise)
## ref: https://kubernetes.io/docs/concepts/services-networking/service/#type-nodeport ##
configuration: {}
## @param collector.overrideConfiguration Jaeger collector common configuration override. Values defined here takes precedence over the ones defined at `query.configuration`
##
overrideConfiguration: {}
## @param collector.existingConfigmap The name of an existing ConfigMap with your custom configuration for Jaeger collector
##
existingConfigmap: ""
## @param collector.receivers Sets the jaeger collector receivers that will be enabled
##
receivers:
- otlp
- jaeger
- zipkin
## Jaeger collector container ports to expose
## ref: https://www.jaegertracing.io/docs/latest/architecture/apis/
containerPorts: containerPorts:
## @param collector.containerPorts.zipkin can accept Zipkin spans in Thrift, JSON and Proto (disabled by default)
##
zipkin: 9411
## @param collector.containerPorts.grpc used by jaeger-collector to send spans in model.proto format
##
grpc: 14250
## @param collector.containerPorts.binary can accept spans directly from clients in jaeger.thrift format over binary thrift protocol
##
binary: 14268
## @param collector.containerPorts.admin Admin port: health check at / and metrics at /metrics
##
admin: 14269
## Otlp ports to expose ## Otlp ports to expose
## ##
otlp: otlp:
@@ -628,27 +649,33 @@ collector:
## @param collector.containerPorts.otlp.http Accepts traces in OpenTelemetry OTLP format over HTTP ## @param collector.containerPorts.otlp.http Accepts traces in OpenTelemetry OTLP format over HTTP
## ##
http: 4318 http: 4318
## Legacy Jaeger Write API. Maintained for backward-compatibility
##
jaeger:
## @param collector.containerPorts.jaeger.grpc Legacy Jaeger protobuf via gRPC API port
##
grpc: 14250
## @param collector.containerPorts.jaeger.thrift_http Legacy Jaeger Thrift over HTTP API port
##
thrift_http: 14268
## @param collector.containerPorts.zipkin can accept Zipkin spans in Thrift, JSON and Proto (disabled by default)
##
zipkin: 9411
## @param collector.containerPorts.metrics Jaeger collector prometheus metrics port
##
metrics: 8888
## @param collector.containerPorts.healthcheck Jaeger collector healthcheck port
##
healthcheck: 13133
## Jaeger collector.service parameters ## Jaeger collector.service parameters
## ##
service: service:
## @param collector.service.type Jaeger service type ## @param collector.service.type Jaeger service type
## ##
type: ClusterIP type: ClusterIP
## Ports to expose ## Jaeger collector ports to expose
## ref: https://kubernetes.io/docs/concepts/services-networking/service/#type-nodeport ## ref: https://www.jaegertracing.io/docs/latest/architecture/apis/
ports: ports:
## @param collector.service.ports.zipkin can accept Zipkin spans in Thrift, JSON and Proto (disabled by default)
##
zipkin: 9411
## @param collector.service.ports.grpc used by jaeger-collector to send spans in model.proto format
##
grpc: 14250
## @param collector.service.ports.binary can accept spans directly from clients in jaeger.thrift format over binary thrift protocol
##
binary: 14268
## @param collector.service.ports.admin Admin port: health check at / and metrics at /metrics
##
admin: 14269
## Otlp ports to expose ## Otlp ports to expose
## ##
otlp: otlp:
@@ -658,21 +685,24 @@ collector:
## @param collector.service.ports.otlp.http Accepts traces in OpenTelemetry OTLP format over HTTP ## @param collector.service.ports.otlp.http Accepts traces in OpenTelemetry OTLP format over HTTP
## ##
http: 4318 http: 4318
## Legacy Jaeger Write API. Maintained for backward-compatibility
##
jaeger:
## @param collector.service.ports.jaeger.grpc Legacy Jaeger protobuf via gRPC API port
##
grpc: 14250
## @param collector.service.ports.jaeger.thrift_http Legacy Jaeger Thrift over HTTP API port
##
thrift_http: 14268
## @param collector.service.ports.zipkin can accept Zipkin spans in Thrift, JSON and Proto (disabled by default)
##
zipkin: 9411
## @param collector.service.ports.metrics Jaeger collector prometheus metrics port
##
metrics: 8888
## Node ports to expose ## Node ports to expose
## ref: https://kubernetes.io/docs/concepts/services-networking/service/#type-nodeport ## ref: https://kubernetes.io/docs/concepts/services-networking/service/#type-nodeport
nodePorts: nodePorts:
## @param collector.service.nodePorts.zipkin can accept Zipkin spans in Thrift, JSON and Proto (disabled by default)
##
zipkin: ""
## @param collector.service.nodePorts.grpc used by jaeger-collector to send spans in model.proto format
##
grpc: ""
## @param collector.service.nodePorts.binary can accept spans directly from clients in jaeger.thrift format over binary thrift protocol
##
binary: ""
## @param collector.service.nodePorts.admin Admin port: health check at / and metrics at /metrics
##
admin: ""
## Otlp ports to expose ## Otlp ports to expose
## ##
otlp: otlp:
@@ -682,6 +712,22 @@ collector:
## @param collector.service.nodePorts.otlp.http Accepts traces in OpenTelemetry OTLP format over HTTP ## @param collector.service.nodePorts.otlp.http Accepts traces in OpenTelemetry OTLP format over HTTP
## ##
http: "" http: ""
## Legacy Jaeger Write API. Maintained for backward-compatibility
##
jaeger:
## @param collector.service.nodePorts.jaeger.grpc Legacy Jaeger protobuf via gRPC API port
##
grpc: ""
## @param collector.service.nodePorts.jaeger.thrift_http Legacy Jaeger Thrift over HTTP API port
##
thrift_http: ""
## @param collector.service.nodePorts.zipkin can accept Zipkin spans in Thrift, JSON and Proto (disabled by default)
##
zipkin: ""
## @param collector.service.nodePorts.metrics Jaeger collector prometheus metrics port
##
metrics: ""
## @param collector.service.extraPorts Extra ports to expose in the service (normally used with the `sidecar` value) ## @param collector.service.extraPorts Extra ports to expose in the service (normally used with the `sidecar` value)
## ##
extraPorts: [] extraPorts: []
@@ -725,7 +771,7 @@ collector:
metrics: metrics:
annotations: annotations:
prometheus.io/scrape: "true" prometheus.io/scrape: "true"
prometheus.io/port: "{{ .Values.collector.service.ports.admin }}" prometheus.io/port: "{{ .Values.collector.service.ports.metrics }}"
prometheus.io/path: "/metrics" prometheus.io/path: "/metrics"
## Network Policies ## Network Policies
## Ref: https://kubernetes.io/docs/concepts/services-networking/network-policies/ ## Ref: https://kubernetes.io/docs/concepts/services-networking/network-policies/
@@ -1106,7 +1152,7 @@ migration:
cqlshImage: cqlshImage:
registry: docker.io registry: docker.io
repository: bitnami/cassandra repository: bitnami/cassandra
tag: 5.0.4-debian-12-r6 tag: 5.0.4-debian-12-r7
digest: "" digest: ""
## Specify a imagePullPolicy ## Specify a imagePullPolicy
## ref: https://kubernetes.io/docs/concepts/containers/images/#pre-pulled-images ## ref: https://kubernetes.io/docs/concepts/containers/images/#pre-pulled-images
@@ -1199,6 +1245,11 @@ cassandra:
service: service:
ports: ports:
cql: 9042 cql: 9042
## @param cassandra.initDB [object] Init script for initializing the instance
##
initDB:
create_keyspace.cql: |
CREATE KEYSPACE {{ include "jaeger.cassandra.keyspace" . }} WITH REPLICATION = { 'class' : 'SimpleStrategy', 'replication_factor' : 1 };
## Cassandra pods' resource requests and limits ## Cassandra pods' resource requests and limits
## ref: https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/ ## ref: https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/
## Minimum memory for development is 4GB and 2 CPU cores ## Minimum memory for development is 4GB and 2 CPU cores