diff --git a/charts/qubership-jaeger/Chart.yaml b/charts/qubership-jaeger/Chart.yaml index 3fd78c2..742c83a 100644 --- a/charts/qubership-jaeger/Chart.yaml +++ b/charts/qubership-jaeger/Chart.yaml @@ -7,7 +7,7 @@ type: application # This is the chart version. This version number should be incremented each time you make changes # to the chart and its templates, including the app version. -version: 0.20.2 +version: 0.20.3 # This is the version number of the application being deployed. This version number should be # incremented each time you make changes to the application. diff --git a/charts/qubership-jaeger/templates/agent/daemon-set.yaml b/charts/qubership-jaeger/templates/agent/daemon-set.yaml index d61a992..af28b31 100644 --- a/charts/qubership-jaeger/templates/agent/daemon-set.yaml +++ b/charts/qubership-jaeger/templates/agent/daemon-set.yaml @@ -1,5 +1,5 @@ {{- if .Values.agent.install }} ---- +--- apiVersion: apps/v1 kind: DaemonSet metadata: @@ -138,4 +138,8 @@ spec: tolerations: {{- toYaml .Values.agent.tolerations | nindent 8 }} {{- end }} + {{- if .Values.agent.affinity }} + affinity: + {{- toYaml .Values.agent.affinity | nindent 8 }} + {{- end }} {{- end }} diff --git a/charts/qubership-jaeger/templates/status-provisioner/job.yaml b/charts/qubership-jaeger/templates/status-provisioner/job.yaml index 2e1511b..1cc8b9e 100644 --- a/charts/qubership-jaeger/templates/status-provisioner/job.yaml +++ b/charts/qubership-jaeger/templates/status-provisioner/job.yaml @@ -83,5 +83,8 @@ spec: - name: robot-storage emptyDir: {} nodeSelector: {} - affinity: {} + {{- if .Values.statusProvisioner.affinity }} + affinity: + {{- toYaml .Values.statusProvisioner.affinity | nindent 8 }} + {{- end }} {{- end }} diff --git a/docs/installation.md b/docs/installation.md index e6e5a6d..6a72991 100644 --- a/docs/installation.md +++ b/docs/installation.md @@ -402,6 +402,7 @@ collector: | `samplingConfig` | boolean | no | false | Enabling/disabling `SAMPLING_STRATEGIES_FILE` | | `nodeSelector` | map | no | {} | Defining which Nodes the Pods are scheduled on | | `tolerations` | [core/v1.Toleration](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.27/#toleration-v1-core) | no | {} | Allows the pods to schedule onto nodes with matching taints | +| `affinity` | [core/v1.Affinity](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.27/#affinity-v1-core) | no | {podAntiAffinity:
requiredDuringSchedulingIgnoredDuringExecution:
- labelSelector:
matchExpressions:
- key: app.kubernetes.io/name
operator: In
values:
- jaeger-collector
topologyKey: kubernetes.io hostname} | If specified, the pod's scheduling constraints | | `resources` | object | no | {requests: {cpu: 100m, memory: 100Mi}, limits: {cpu: 1, memory: 200Mi}} | Describes computing resource requests and limits for single Pods | | `securityContext` | [core/v1.PodSecurityContext](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.27/#podsecuritycontext-v1-core) | no | {} | Describes pod-level security attributes | | `containerSecurityContext` | [core/v1.SecurityContext](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.27/#securitycontext-v1-core) | no | {} | Holds container-level security attributes | @@ -686,6 +687,7 @@ query: | `ingress.host` | string | no | - | FQDN of the ingress host | | `route.install` | boolean | no | false | Enabling/disabling creating query route | | `route.host` | string | no | - | FQDN of the route host | +| `affinity` | [core/v1.Affinity](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.27/#affinity-v1-core) | no | {podAntiAffinity:
requiredDuringSchedulingIgnoredDuringExecution:
- labelSelector:
matchExpressions:
- key: app.kubernetes.io/name
operator: In
values:
- jaeger-collector
topologyKey: kubernetes.io hostname} | If specified, the pod's scheduling constraints | | `resources` | object | no | {requests: {cpu: 100m, memory: 128Mi}, limits: {cpu: 200m, memory: 256Mi}} | Describes computing resource requests and limits for single Pods | | `securityContext` | [core/v1.PodSecurityContext](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.27/#podsecuritycontext-v1-core) | no | {} | Describes pod-level security attributes | | `containerSecurityContext` | [core/v1.SecurityContext](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.27/#securitycontext-v1-core) | no | {} | Holds container-level security attributes | @@ -854,6 +856,7 @@ agent: | `extraSecretMounts` | object | no | [] | Extra secret mounts for the agent | | `nodeSelector` | map | no | {} | Defining which Nodes the Pods are scheduled on | | `tolerations` | [core/v1.Toleration](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.27/#toleration-v1-core) | no | {} | The pods to schedule onto nodes with matching taints | +| `affinity` | [core/v1.Affinity](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.27/#affinity-v1-core) | no | {} | If specified, the pod's scheduling constraints | | `resources` | object | no | {requests: {cpu: 50m, memory: 50Mi}, limits: {cpu: 100m, memory: 100Mi}} | Compute resource requests and limits for single Pods | | `securityContext` | [core/v1.PodSecurityContext](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.27/#podsecuritycontext-v1-core) | no | {} | Holds pod-level security attributes | | `containerSecurityContext` | [core/v1.SecurityContext](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.27/#securitycontext-v1-core) | no | {} | Holds container-level security attributes | @@ -1185,6 +1188,7 @@ elasticsearch: | `extraSecretMounts` | object | no | [] | Extra secret mounts for indexCleaner | | `nodeSelector` | map | no | {} | Defining which Nodes the Pods are scheduled on | | `tolerations` | [core/v1.Toleration](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.27/#toleration-v1-core) | no | {} | The pods to schedule onto nodes with matching taints | +| `affinity` | [core/v1.Affinity](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.27/#affinity-v1-core) | no | {} | If specified, the pod's scheduling constraints | | `resources` | object | no | {requests: {cpu: 100m, memory: 128Mi}, limits: {cpu: 100m, memory: 128Mi}} | Computing resource requests and limits for single Pods | | `securityContext` | [core/v1.PodSecurityContext](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.27/#podsecuritycontext-v1-core) | no | {} | Holds pod-level security attributes | | `containerSecurityContext` | [core/v1.SecurityContext](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.27/#securitycontext-v1-core) | no | {} | Holds container-level security attributes | @@ -1302,6 +1306,7 @@ elasticsearch: | `ttlSecondsAfterFinished` | integer | no | 0 | How many seconds after finished job's pod will be available | | `nodeSelector` | map | no | {} | Defining which Nodes the Pods are scheduled on | | `tolerations` | [core/v1.Toleration](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.27/#toleration-v1-core) | no | {} | Allows the pods to schedule onto nodes with matching taints | +| `affinity` | [core/v1.Affinity](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.27/#affinity-v1-core) | no | {} | If specified, the pod's scheduling constraints | | `extraEnv` | object | no | [] | Rollover-related extra env vars to be configured on the concerned components | | `extraConfigmapMounts` | object | no | [] | Extra configMap mounts for rollover | | `extraSecretMounts` | object | no | [] | Extra secret mounts for rollover | @@ -1423,6 +1428,7 @@ elasticsearch: | `ttlSecondsAfterFinished` | integer | no | 0 | How many seconds after finished job's pod will be available | | `nodeSelector` | map | no | {} | Defining which Nodes the Pods are scheduled on | | `tolerations` | [core/v1.Toleration](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.27/#toleration-v1-core) | no | {} | The pods to schedule onto nodes with matching taints | +| `affinity` | [core/v1.Affinity](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.27/#affinity-v1-core) | no | {} | If specified, the pod's scheduling constraints | | `extraEnv` | object | no | [] | Extra env vars to be configured on the concerned components | | `extraConfigmapMounts` | object | no | [] | Extra configMap mounts for lookback | | `extraSecretMounts` | object | no | {} | Extra secret mounts for lookback | @@ -1603,6 +1609,7 @@ hotrod: | `agent.port` | integer | no | 6831 | The port used to connect to the Jaeger agent. **DEPRECATED** since `1.42.x`, use parameters from the section `hotrtod.otelExporter` | | `nodeSelector` | map | no | {} | Defining which Nodes the Pods are scheduled on | | `tolerations` | [core/v1.Toleration](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.27/#toleration-v1-core) | no | {} | The pods to schedule onto nodes with matching taints | +| `affinity` | [core/v1.Affinity](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.27/#affinity-v1-core) | no | {} | If specified, the pod's scheduling constraints | | `ingress.install` | boolean | no | false | Enabling or disabling creating a `hotrod` ingress | | `ingress.host` | string | no | - | The FQDN of the ingress host | | `ingress.tls` | object | no | {} | TLS configuration for hotrod ingress | @@ -1708,6 +1715,7 @@ integrationTests: | `service.name` | string | no | jaeger-integration-tests-runner | The name of the service used to run integration tests. | | `serviceAccount.create` | boolean | no | true | Specifies whether service account should be created or not. | | `serviceAccount.name` | string | no | jaeger-integration-tests | The name of the service account used to run integration tests. | +| `affinity` | [core/v1.Affinity](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.27/#affinity-v1-core) | no | {} | If specified, the pod's scheduling constraints | | `resources` | object | no | {requests: {cpu: 50m, memory: 64Mi}, limits: {cpu: 300m, memory: 256Mi}} | Computing resource requests and limits for single Pods | | `statusWriting.enabled` | boolean | no | false | Parameter to specify whether the status of integration tests results must be written to a custom resource | | `statusWriting.isShortStatusMessage` | boolean | no | true | If it is set to `true`, the `message` field in the status condition by default contains first line from `result.txt` file. | @@ -1785,6 +1793,7 @@ statusProvisioner: | `lifetimeAfterCompletion` | integer | no | 300 | Time until which the staus provisioner job remains active | | `podReadinessTimeout` | integer | no | 300 | Timeout in seconds that the Deployment Status Provisioner waits for each of the monitored resources to be ready or completed | | `integrationTestsTimeout` | integer | no | 300 | Timeout in seconds that the Deployment Status Provisioner waits for successful or failed status condition | +| `affinity` | [core/v1.Affinity](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.27/#affinity-v1-core) | no | {} | If specified, the pod's scheduling constraints | | `resources` | object | no | {requests: {cpu: 50m, memory: 50Mi}, limits: {cpu: 100m, memory: 100Mi}} | Computing resource requests and limits for single Pods | | `securityContext` | [core/v1.PodSecurityContext](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.27/#podsecuritycontext-v1-core) | no | {} | Describes pod-level security attributes | | `containerSecurityContext` | [core/v1.SecurityContext](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.27/#securitycontext-v1-core) | no | {} | Holds container-level security attributes |