github.com/verrazzano/verrazzano@v1.7.0/platform-operator/thirdparty/charts/thanos/values.yaml (about) 1 ## @section Global parameters 2 ## Global Docker image parameters 3 ## Please, note that this will override the image parameters, including dependencies, configured to use the global value 4 ## Current available global Docker image parameters: imageRegistry, imagePullSecrets and storageClass 5 6 ## @param global.imageRegistry Global Docker image registry 7 ## @param global.imagePullSecrets Global Docker registry secret names as an array 8 ## @param global.storageClass Global StorageClass for Persistent Volume(s) 9 ## 10 global: 11 imageRegistry: "" 12 ## e.g: 13 ## imagePullSecrets: 14 ## - myRegistryKeySecretName 15 ## 16 imagePullSecrets: [] 17 storageClass: "" 18 19 ## @section Common parameters 20 21 ## @param kubeVersion Force target Kubernetes version (using Helm capabilities if not set) 22 ## 23 kubeVersion: "" 24 ## @param nameOverride String to partially override common.names.fullname template (will maintain the release name) 25 ## 26 nameOverride: "" 27 ## @param fullnameOverride String to fully override common.names.fullname template 28 ## 29 fullnameOverride: "" 30 ## @param commonLabels Add labels to all the deployed resources 31 ## 32 commonLabels: {} 33 ## @param commonAnnotations Add annotations to all the deployed resources 34 ## 35 commonAnnotations: {} 36 ## @param clusterDomain Kubernetes Cluster Domain 37 ## 38 clusterDomain: cluster.local 39 ## @param extraDeploy Array of extra objects to deploy with the release 40 ## 41 extraDeploy: [] 42 43 ## @section Thanos common parameters 44 45 ## Bitnami Thanos image 46 ## ref: https://hub.docker.com/r/bitnami/thanos/tags/ 47 ## @param image.registry Thanos image registry 48 ## @param image.repository Thanos image repository 49 ## @param image.tag Thanos image tag (immutable tags are recommended) 50 ## @param image.digest Thanos image digest in the way sha256:aa.... Please note this parameter, if set, will override the tag 51 ## @param image.pullPolicy Thanos image pull policy 52 ## @param image.pullSecrets Specify docker-registry secret names as an array 53 ## 54 image: 55 registry: docker.io 56 repository: bitnami/thanos 57 tag: 0.30.2-scratch-r4 58 digest: "" 59 ## Specify a imagePullPolicy. Defaults to 'Always' if image tag is 'latest', else set to 'IfNotPresent' 60 ## ref: https://kubernetes.io/docs/user-guide/images/#pre-pulling-images 61 ## 62 pullPolicy: IfNotPresent 63 ## Optionally specify an array of imagePullSecrets. 64 ## Secrets must be manually created in the namespace. 65 ## ref: https://kubernetes.io/docs/tasks/configure-pod-container/pull-image-private-registry/ 66 ## e.g: 67 ## pullSecrets: 68 ## - myRegistryKeySecretName 69 ## 70 pullSecrets: [] 71 ## @param objstoreConfig The [objstore configuration](https://thanos.io/tip/thanos/storage.md/) 72 ## Specify content for objstore.yml 73 ## 74 objstoreConfig: "" 75 ## @param indexCacheConfig The [index cache configuration](https://thanos.io/tip/components/store.md/) 76 ## Specify content for index-cache.yml 77 ## 78 indexCacheConfig: "" 79 ## @param bucketCacheConfig The [bucket cache configuration](https://thanos.io/tip/components/store.md/) 80 ## Specify content for bucket-cache.yml 81 ## 82 bucketCacheConfig: "" 83 ## @param existingObjstoreSecret Secret with Objstore Configuration 84 ## Note: This will override objstoreConfig 85 ## 86 existingObjstoreSecret: "" 87 ## @param existingObjstoreSecretItems Optional item list for specifying a custom Secret key. If so, path should be objstore.yml 88 ## 89 existingObjstoreSecretItems: [] 90 ## @param httpConfig The [https and basic auth configuration](https://thanos.io/tip/operating/https.md/) 91 ## If provided, overrides settings under https.* and auth.* 92 httpConfig: "" 93 ## @param existingHttpConfigSecret Secret containing the HTTPS and Basic auth configuration 94 ## 95 existingHttpConfigSecret: "" 96 97 ## HTTPS configuration (Experimental) 98 ## Ref: https://thanos.io/tip/operating/https.md/ 99 ## 100 https: 101 ## @param https.enabled Set to true to enable HTTPS. Requires a secret containing the certificate and key. 102 ## 103 enabled: false 104 ## @param https.autoGenerated Create self-signed TLS certificates. 105 ## 106 autoGenerated: false 107 ## @param https.existingSecret Existing secret containing your own server key and certificate 108 ## 109 existingSecret: "" 110 ## @param https.certFilename 111 ## 112 certFilename: "tls.crt" 113 ## @param https.keyFilename 114 ## 115 keyFilename: "tls.key" 116 ## @param https.caFilename 117 ## 118 caFilename: "ca.crt" 119 ## @param https.key TLS Key for Thanos HTTPS - ignored if existingSecret is provided 120 ## @param https.cert TLS Certificate for Thanos HTTPS - ignored if existingSecret is provided 121 ## @param https.ca (Optional, used for client) CA Certificate for Thanos HTTPS - ignored if existingSecret is provided 122 ## 123 key: "" 124 cert: "" 125 ca: "" 126 ## @param https.clientAuthType Server policy for client authentication using certificates. Maps to ClientAuth Policies. 127 ## For more detail on clientAuth options: https://golang.org/pkg/crypto/tls/#ClientAuthType 128 clientAuthType: "" 129 ## Thanos Basic authentication (Experimental) 130 ## 131 auth: 132 ## @param auth.basicAuthUsers Object containing <user>:<passwords> key-value pairs for each user that will have access via basic authentication 133 ## Note: Passwords will be later encrypted using bcrypt 134 basicAuthUsers: {} 135 136 ## Common Service Account 137 ## ref: https://kubernetes.io/docs/tasks/configure-pod-container/configure-service-account/ 138 ## @param serviceAccount.create Specifies whether a ServiceAccount should be created 139 ## @param serviceAccount.name Name of the service account to use. If not set and create is true, a name is generated using the fullname template. 140 ## @param serviceAccount.automountServiceAccountToken Automount service account token for the server service account 141 ## @param serviceAccount.annotations Annotations for service account. Evaluated as a template. Only used if `create` is `true`. 142 ## 143 serviceAccount: 144 create: false 145 name: "" 146 automountServiceAccountToken: true 147 annotations: {} 148 149 ## DEPRECATED - existingServiceAccount. This value has been deprecated and will be removed in a future release, please use `serviceAccount.name` in combination with `serviceAccount.create=false` instead 150 ## 151 ## existingServiceAccount: "" 152 153 ## @section Thanos Query parameters 154 155 query: 156 ## @param query.enabled Set to true to enable Thanos Query component 157 ## 158 enabled: true 159 ## @param query.logLevel Thanos Query log level 160 ## 161 logLevel: info 162 ## @param query.logFormat Thanos Query log format 163 ## 164 logFormat: logfmt 165 ## @param query.replicaLabel Replica indicator(s) along which data is de-duplicated 166 ## 167 replicaLabel: [replica] 168 ## Dynamically configure store APIs using DNS discovery 169 ## @param query.dnsDiscovery.enabled Enable store APIs discovery via DNS 170 ## @param query.dnsDiscovery.sidecarsService Sidecars service name to discover them using DNS discovery 171 ## @param query.dnsDiscovery.sidecarsNamespace Sidecars namespace to discover them using DNS discovery 172 ## 173 dnsDiscovery: 174 enabled: true 175 sidecarsService: "" 176 sidecarsNamespace: "" 177 ## @param query.stores Statically configure store APIs to connect with Thanos Query 178 ## 179 stores: [] 180 ## @param query.sdConfig Query Service Discovery Configuration 181 ## Specify content for servicediscovery.yml 182 ## 183 sdConfig: "" 184 ## @param query.existingSDConfigmap Name of existing ConfigMap with Ruler configuration 185 ## NOTE: This will override query.sdConfig 186 ## 187 existingSDConfigmap: "" 188 ## @param query.extraEnvVars Extra environment variables for Thanos Query container 189 ## e.g: 190 ## extraEnvVars: 191 ## - name: FOO 192 ## value: "bar" 193 ## 194 extraEnvVars: [] 195 ## @param query.extraEnvVarsCM Name of existing ConfigMap containing extra env vars for Thanos Query nodes 196 ## 197 extraEnvVarsCM: "" 198 ## @param query.extraEnvVarsSecret Name of existing Secret containing extra env vars for Thanos Query nodes 199 ## 200 extraEnvVarsSecret: "" 201 ## @param query.extraFlags Extra Flags to passed to Thanos Query 202 ## 203 extraFlags: [] 204 ## @param query.command Override default container command (useful when using custom images) 205 ## 206 command: [] 207 ## @param query.args Override default container args (useful when using custom images) 208 ## 209 args: [] 210 ## @param query.replicaCount Number of Thanos Query replicas to deploy 211 ## 212 replicaCount: 1 213 ## @param query.updateStrategy.type Update strategy type for Thanos Query replicas 214 ## 215 updateStrategy: 216 type: RollingUpdate 217 ## K8s Pod Security Context for Thanos Query pods 218 ## https://kubernetes.io/docs/tasks/configure-pod-container/security-context/ 219 ## @param query.podSecurityContext.enabled Enable security context for the Thanos Query pods 220 ## @param query.podSecurityContext.fsGroup Group ID for the filesystem used by Thanos Query pods 221 ## 222 podSecurityContext: 223 enabled: true 224 fsGroup: 1001 225 ## K8s containers' Security Context for Thanos Query containers 226 ## ref: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/#set-the-security-context-for-a-container 227 ## @param query.containerSecurityContext.enabled Enable container security context for the Thanos Query containers 228 ## @param query.containerSecurityContext.runAsUser User ID for the service user running the Thanos Query containers 229 ## @param query.containerSecurityContext.runAsNonRoot Force the Thanos Query containers to run as a non root user 230 ## @param query.containerSecurityContext.allowPrivilegeEscalation Switch privilegeEscalation possibility on or off for Thanos Query containers 231 ## @param query.containerSecurityContext.readOnlyRootFilesystem mount / (root) as a readonly filesystem on Thanos Query containers 232 ## 233 containerSecurityContext: 234 enabled: true 235 runAsUser: 1001 236 runAsNonRoot: true 237 allowPrivilegeEscalation: false 238 readOnlyRootFilesystem: true 239 ## Thanos Query containers' resource requests and limits 240 ## ref: https://kubernetes.io/docs/user-guide/compute-resources/ 241 ## @param query.resources.limits The resources limits for the Thanos Query container 242 ## @param query.resources.requests The requested resources for the Thanos Query container 243 ## 244 resources: 245 limits: {} 246 requests: {} 247 ## Configure extra options for Thanos Query containers' liveness and readiness probes 248 ## ref: https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-probes/#configure-probes 249 ## @param query.livenessProbe.enabled Enable livenessProbe on Thanos Query containers 250 ## @param query.livenessProbe.initialDelaySeconds Initial delay seconds for livenessProbe 251 ## @param query.livenessProbe.periodSeconds Period seconds for livenessProbe 252 ## @param query.livenessProbe.timeoutSeconds Timeout seconds for livenessProbe 253 ## @param query.livenessProbe.failureThreshold Failure threshold for livenessProbe 254 ## @param query.livenessProbe.successThreshold Success threshold for livenessProbe 255 ## 256 livenessProbe: 257 enabled: true 258 initialDelaySeconds: 30 259 timeoutSeconds: 30 260 periodSeconds: 10 261 successThreshold: 1 262 failureThreshold: 6 263 ## @param query.readinessProbe.enabled Enable readinessProbe on Thanos Query containers 264 ## @param query.readinessProbe.initialDelaySeconds Initial delay seconds for readinessProbe 265 ## @param query.readinessProbe.periodSeconds Period seconds for readinessProbe 266 ## @param query.readinessProbe.timeoutSeconds Timeout seconds for readinessProbe 267 ## @param query.readinessProbe.failureThreshold Failure threshold for readinessProbe 268 ## @param query.readinessProbe.successThreshold Success threshold for readinessProbe 269 ## 270 readinessProbe: 271 enabled: true 272 initialDelaySeconds: 30 273 timeoutSeconds: 30 274 periodSeconds: 10 275 successThreshold: 1 276 failureThreshold: 6 277 ## @param query.startupProbe.enabled Enable startupProbe on Thanos Query containers 278 ## @param query.startupProbe.initialDelaySeconds Initial delay seconds for startupProbe 279 ## @param query.startupProbe.periodSeconds Period seconds for startupProbe 280 ## @param query.startupProbe.timeoutSeconds Timeout seconds for startupProbe 281 ## @param query.startupProbe.failureThreshold Failure threshold for startupProbe 282 ## @param query.startupProbe.successThreshold Success threshold for startupProbe 283 ## 284 startupProbe: 285 enabled: false 286 initialDelaySeconds: 5 287 periodSeconds: 5 288 timeoutSeconds: 1 289 failureThreshold: 15 290 successThreshold: 1 291 ## @param query.customLivenessProbe Custom livenessProbe that overrides the default one 292 ## 293 customLivenessProbe: {} 294 ## @param query.customReadinessProbe Custom readinessProbe that overrides the default one 295 ## 296 customReadinessProbe: {} 297 ## @param query.customStartupProbe Custom startupProbe that overrides the default one 298 ## 299 customStartupProbe: {} 300 ## @param query.initContainers Add additional init containers to the Thanos Query pods 301 ## ref: https://kubernetes.io/docs/concepts/workloads/pods/init-containers/ 302 ## e.g: 303 ## initContainers: 304 ## - name: your-image-name 305 ## image: your-image 306 ## imagePullPolicy: Always 307 ## command: ['sh', '-c', 'echo "hello world"'] 308 ## 309 initContainers: [] 310 ## @param query.sidecars Extra containers running as sidecars to Thanos Query pods 311 ## e.g: 312 ## sidecars: 313 ## - name: your-image-name 314 ## image: your-image 315 ## imagePullPolicy: Always 316 ## ports: 317 ## - name: portname 318 ## containerPort: 1234 319 ## 320 sidecars: [] 321 ## @param query.extraVolumes Extra volumes to add to Thanos Query 322 ## 323 extraVolumes: [] 324 ## @param query.extraVolumeMounts Extra volume mounts to add to the query container 325 ## 326 extraVolumeMounts: [] 327 ## @param query.podAffinityPreset Thanos Query pod affinity preset 328 ## ref: https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/#inter-pod-affinity-and-anti-affinity 329 ## 330 podAffinityPreset: "" 331 ## @param query.podAntiAffinityPreset Thanos Query pod anti-affinity preset. Ignored if `query.affinity` is set. Allowed values: `soft` or `hard` 332 ## ref: https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/#inter-pod-affinity-and-anti-affinity 333 ## 334 podAntiAffinityPreset: soft 335 ## @param query.podAntiAffinityPresetTopologyKey Thanos Query pod anti-affinity topologyKey. Ignored if `query.affinity` is set. 336 ## ref: https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/#inter-pod-affinity-and-anti-affinity 337 ## 338 podAntiAffinityPresetTopologyKey: "" 339 ## Thanos Query node affinity preset 340 ## ref: https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/#node-affinity 341 ## 342 nodeAffinityPreset: 343 ## @param query.nodeAffinityPreset.type Thanos Query node affinity preset type. Ignored if `query.affinity` is set. Allowed values: `soft` or `hard` 344 ## 345 type: "" 346 ## @param query.nodeAffinityPreset.key Thanos Query node label key to match Ignored if `query.affinity` is set. 347 ## e.g: 348 ## key: "kubernetes.io/e2e-az-name" 349 ## 350 key: "" 351 ## @param query.nodeAffinityPreset.values Thanos Query node label values to match. Ignored if `query.affinity` is set. 352 ## e.g: 353 ## values: 354 ## - e2e-az1 355 ## - e2e-az2 356 ## 357 values: [] 358 ## @param query.affinity Thanos Query affinity for pod assignment 359 ## ref: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/#affinity-and-anti-affinity 360 ## Note: query.podAffinityPreset, query.podAntiAffinityPreset, and query.nodeAffinityPreset will be ignored when it's set 361 ## 362 affinity: {} 363 ## @param query.nodeSelector Thanos Query node labels for pod assignment 364 ## ref: https://kubernetes.io/docs/user-guide/node-selection/ 365 ## 366 nodeSelector: {} 367 ## @param query.tolerations Thanos Query tolerations for pod assignment 368 ## ref: https://kubernetes.io/docs/concepts/configuration/taint-and-toleration/ 369 ## 370 tolerations: [] 371 ## @param query.podLabels Thanos Query pod labels 372 ## ref: https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/ 373 ## 374 podLabels: {} 375 ## @param query.podAnnotations Annotations for Thanos Query pods 376 ## ref: https://kubernetes.io/docs/concepts/overview/working-with-objects/annotations/ 377 ## 378 podAnnotations: {} 379 ## @param query.hostAliases Deployment pod host aliases 380 ## https://kubernetes.io/docs/concepts/services-networking/add-entries-to-pod-etc-hosts-with-host-aliases/ 381 ## 382 hostAliases: [] 383 ## @param query.lifecycleHooks for the Thanos Query container(s) to automate configuration before or after startup 384 ## 385 lifecycleHooks: {} 386 ## @param query.priorityClassName Thanos Query priorityClassName 387 ## ref: https://kubernetes.io/docs/concepts/configuration/pod-priority-preemption/ 388 ## 389 priorityClassName: "" 390 ## @param query.schedulerName Name of the k8s scheduler (other than default) for Thanos Query pods 391 ## ref: https://kubernetes.io/docs/tasks/administer-cluster/configure-multiple-schedulers/ 392 ## 393 schedulerName: "" 394 ## @param query.topologySpreadConstraints Topology Spread Constraints for Thanos Query pods assignment spread across your cluster among failure-domains 395 ## Ref: https://kubernetes.io/docs/concepts/workloads/pods/pod-topology-spread-constraints/#spread-constraints-for-pods 396 ## 397 topologySpreadConstraints: [] 398 ## Thanos Query GRPC parameters 399 ## ref: https://github.com/thanos-io/thanos/blob/master/docs/components/query.md#flags 400 ## 401 grpc: 402 ## GRPC server side 403 ## 404 server: 405 ## TLS configuration 406 ## @param query.grpc.server.tls.enabled Enable TLS encryption in the GRPC server 407 ## @param query.grpc.server.tls.autoGenerated Create self-signed TLS certificates. Currently only supports PEM certificates 408 ## @param query.grpc.server.tls.cert TLS Certificate for GRPC server - ignored if existingSecret is provided 409 ## @param query.grpc.server.tls.key TLS Key for GRPC server - ignored if existingSecret is provided 410 ## @param query.grpc.server.tls.ca TLS CA to verify clients against - ignored if existingSecret is provided 411 ## @param query.grpc.server.tls.existingSecret Existing secret containing your own TLS certificates 412 ## e.g: 413 ## existingSecret: 414 ## name: foo 415 ## keyMapping: 416 ## ca-cert: ca.pem 417 ## tls-cert: cert.pem 418 ## tls-key: key.pem 419 ## 420 tls: 421 enabled: false 422 autoGenerated: false 423 cert: "" 424 key: "" 425 ca: "" 426 existingSecret: {} 427 ## GRPC client side 428 ## 429 client: 430 ## @param query.grpc.client.serverName Server name to verify the hostname on the returned GRPC certificates 431 ## 432 serverName: "" 433 ## TLS configuration 434 ## @param query.grpc.client.tls.enabled Enable TLS encryption in the GRPC server 435 ## @param query.grpc.client.tls.autoGenerated Create self-signed TLS certificates. Currently only supports PEM certificates 436 ## @param query.grpc.client.tls.cert TLS Certificate for GRPC server - ignored if existingSecret is provided 437 ## @param query.grpc.client.tls.key TLS Key for GRPC server - ignored if existingSecret is provided 438 ## @param query.grpc.client.tls.ca TLS CA to verify clients against - ignored if existingSecret is provided 439 ## @param query.grpc.client.tls.existingSecret Existing secret containing your own TLS certificates 440 ## e.g: 441 ## existingSecret: 442 ## name: foo 443 ## keyMapping: 444 ## ca-cert: ca.pem 445 ## tls-cert: cert.pem 446 ## tls-key: key.pem 447 ## 448 tls: 449 enabled: false 450 autoGenerated: false 451 cert: "" 452 key: "" 453 ca: "" 454 existingSecret: {} 455 ## Service parameters 456 ## 457 service: 458 ## @param query.service.type Kubernetes service type 459 ## 460 type: ClusterIP 461 ## @param query.service.ports.http Thanos Query service HTTP port 462 ## 463 ports: 464 http: 9090 465 ## @param query.service.nodePorts.http Specify the Thanos Query HTTP nodePort value for the LoadBalancer and NodePort service types 466 ## ref: https://kubernetes.io/docs/concepts/services-networking/service/#type-nodeport 467 ## 468 nodePorts: 469 http: "" 470 ## @param query.service.clusterIP Thanos Query service clusterIP IP 471 ## e.g: 472 ## clusterIP: None 473 ## 474 clusterIP: "" 475 ## @param query.service.loadBalancerIP Load balancer IP if service type is `LoadBalancer` 476 ## Set the LoadBalancer service type to internal only 477 ## ref: https://kubernetes.io/docs/concepts/services-networking/service/#internal-load-balancer 478 ## 479 loadBalancerIP: "" 480 ## @param query.service.loadBalancerSourceRanges Address that are allowed when service is LoadBalancer 481 ## https://kubernetes.io/docs/tasks/access-application-cluster/configure-cloud-provider-firewall/#restrict-access-for-loadbalancer-service 482 ## e.g: 483 ## loadBalancerSourceRanges: 484 ## - 10.10.10.0/24 485 ## 486 loadBalancerSourceRanges: [] 487 ## @param query.service.externalTrafficPolicy Thanos Query service externalTrafficPolicy 488 ## Denotes if this Service desires to route external traffic to node-local or cluster-wide endpoints 489 ## 490 externalTrafficPolicy: Cluster 491 ## @param query.service.annotations Annotations for Thanos Query service 492 ## 493 annotations: {} 494 ## @param query.service.extraPorts Extra ports to expose in the Thanos Query service 495 ## 496 extraPorts: [] 497 ## @param query.service.labelSelectorsOverride Selector for Thanos Query service 498 ## 499 labelSelectorsOverride: {} 500 ## @param query.service.additionalHeadless Additional Headless service 501 ## 502 additionalHeadless: false 503 504 ## Service GRPC parameters 505 ## 506 serviceGrpc: 507 ## @param query.serviceGrpc.type Kubernetes service type 508 ## 509 type: ClusterIP 510 ## @param query.serviceGrpc.ports.grpc Thanos Query service GRPC port 511 ## 512 ports: 513 grpc: 10901 514 ## @param query.serviceGrpc.nodePorts.grpc Specify the Thanos Query GRPC nodePort value for the LoadBalancer and NodePort service types 515 ## ref: https://kubernetes.io/docs/concepts/services-networking/service/#type-nodeport 516 ## 517 nodePorts: 518 grpc: "" 519 ## @param query.serviceGrpc.clusterIP Thanos Query service clusterIP IP 520 ## e.g: 521 ## clusterIP: None 522 ## 523 clusterIP: "" 524 ## @param query.serviceGrpc.loadBalancerIP Load balancer IP if service type is `LoadBalancer` 525 ## Set the LoadBalancer service type to internal only 526 ## ref: https://kubernetes.io/docs/concepts/services-networking/service/#internal-load-balancer 527 ## 528 loadBalancerIP: "" 529 ## @param query.serviceGrpc.loadBalancerSourceRanges Address that are allowed when service is LoadBalancer 530 ## https://kubernetes.io/docs/tasks/access-application-cluster/configure-cloud-provider-firewall/#restrict-access-for-loadbalancer-service 531 ## e.g: 532 ## loadBalancerSourceRanges: 533 ## - 10.10.10.0/24 534 ## 535 loadBalancerSourceRanges: [] 536 ## @param query.serviceGrpc.externalTrafficPolicy Thanos Query service externalTrafficPolicy 537 ## Denotes if this Service desires to route external traffic to node-local or cluster-wide endpoints 538 ## 539 externalTrafficPolicy: Cluster 540 ## @param query.serviceGrpc.annotations Annotations for Thanos Query service 541 ## 542 annotations: {} 543 ## @param query.serviceGrpc.extraPorts Extra ports to expose in the Thanos Query service 544 ## 545 extraPorts: [] 546 ## @param query.serviceGrpc.labelSelectorsOverride Selector for Thanos Query service 547 ## 548 labelSelectorsOverride: {} 549 ## @param query.serviceGrpc.additionalHeadless Additional Headless service 550 ## 551 additionalHeadless: false 552 553 ## Autoscaling parameters 554 ## @param query.automountServiceAccountToken Enable/disable auto mounting of the service account token only for the deployment 555 ## 556 automountServiceAccountToken: true 557 ## ServiceAccount configuration 558 ## @param query.serviceAccount.create Specifies whether a ServiceAccount should be created 559 ## @param query.serviceAccount.name Name of the service account to use. If not set and create is true, a name is generated using the fullname template. 560 ## @param query.serviceAccount.annotations Annotations for Thanos Query Service Account 561 ## @param query.serviceAccount.automountServiceAccountToken Enable/disable auto mounting of the service account token 562 ## DEPRECATED query.serviceAccount.existingServiceAccount - This value has been deprecated and will be removed in a future release, please use `serviceAccount.name` in combination with `serviceAccount.create=false` instead 563 ## 564 serviceAccount: 565 create: true 566 name: "" 567 annotations: {} 568 automountServiceAccountToken: true 569 ## existingServiceAccount: "" 570 ## RBAC configuration 571 ## 572 rbac: 573 ## @param query.rbac.create Create a ClusterRole and ClusterRoleBinding for the Thanos Query Service Account 574 ## 575 create: false 576 ## @param query.rbac.rules Custom RBAC rules to set 577 ## e.g: 578 ## rules: 579 ## - apiGroups: 580 ## - "" 581 ## resources: 582 ## - pods 583 ## verbs: 584 ## - get 585 ## - list 586 ## 587 rules: [] 588 ## @param query.pspEnabled Whether to create a PodSecurityPolicy for Thanos Query 589 ## WARNING: PodSecurityPolicy is deprecated in Kubernetes v1.21 or later, unavailable in v1.25 or later 590 ## 591 pspEnabled: false 592 ## Thanos Query Autoscaling configuration 593 ## ref: https://kubernetes.io/docs/tasks/run-application/horizontal-pod-autoscale/ 594 ## @param query.autoscaling.enabled Enable autoscaling for Thanos Query 595 ## @param query.autoscaling.minReplicas Minimum number of Thanos Query replicas 596 ## @param query.autoscaling.maxReplicas Maximum number of Thanos Query replicas 597 ## @param query.autoscaling.targetCPU Target CPU utilization percentage 598 ## @param query.autoscaling.targetMemory Target Memory utilization percentage 599 ## 600 autoscaling: 601 enabled: false 602 minReplicas: "" 603 maxReplicas: "" 604 targetCPU: "" 605 targetMemory: "" 606 ## Thanos Query Pod Disruption Budget configuration 607 ## ref: https://kubernetes.io/docs/tasks/run-application/configure-pdb 608 ## @param query.pdb.create Enable/disable a Pod Disruption Budget creation for Thanos Query 609 ## @param query.pdb.minAvailable Minimum number/percentage of pods that should remain scheduled 610 ## @param query.pdb.maxUnavailable Maximum number/percentage of pods that may be made unavailable 611 ## 612 pdb: 613 create: false 614 minAvailable: 1 615 maxUnavailable: "" 616 ## Configure the ingress resource that allows you to access Thanos Query 617 ## ref: https://kubernetes.io/docs/user-guide/ingress/ 618 ## 619 ingress: 620 ## @param query.ingress.enabled Enable ingress controller resource 621 ## 622 enabled: false 623 ## @param query.ingress.hostname Default host for the ingress resource 624 ## 625 hostname: thanos.local 626 ## @param query.ingress.ingressClassName IngressClass that will be be used to implement the Ingress (Kubernetes 1.18+) 627 ## This is supported in Kubernetes 1.18+ and required if you have more than one IngressClass marked as the default for your cluster . 628 ## ref: https://kubernetes.io/blog/2020/04/02/improvements-to-the-ingress-api-in-kubernetes-1.18/ 629 ## 630 ingressClassName: "" 631 ## @param query.ingress.annotations Additional annotations for the Ingress resource. To enable certificate autogeneration, place here your cert-manager annotations. 632 ## For a full list of possible ingress annotations, please see 633 ## ref: https://github.com/kubernetes/ingress-nginx/blob/master/docs/user-guide/nginx-configuration/annotations.md 634 ## Use this parameter to set the required annotations for cert-manager, see 635 ## ref: https://cert-manager.io/docs/usage/ingress/#supported-annotations 636 ## 637 ## e.g: 638 ## annotations: 639 ## kubernetes.io/ingress.class: nginx 640 ## cert-manager.io/cluster-issuer: cluster-issuer-name 641 ## 642 annotations: {} 643 ## @param query.ingress.extraHosts The list of additional hostnames to be covered with this ingress record. 644 ## Most likely the hostname above will be enough, but in the event more hosts are needed, this is an array 645 ## extraHosts: 646 ## - name: thanos.local 647 ## path: / 648 ## pathType: ImplementationSpecific 649 ## 650 extraHosts: [] 651 ## @param query.ingress.extraTls The tls configuration for additional hostnames to be covered with this ingress record. 652 ## see: https://kubernetes.io/docs/concepts/services-networking/ingress/#tls 653 ## extraTls: 654 ## - hosts: 655 ## - thanos.local 656 ## secretName: thanos.local-tls 657 ## 658 extraTls: [] 659 ## @param query.ingress.secrets If you're providing your own certificates, please use this to add the certificates as secrets 660 ## key and certificate should start with -----BEGIN CERTIFICATE----- or 661 ## -----BEGIN RSA PRIVATE KEY----- 662 ## 663 ## name should line up with a tlsSecret set further up 664 ## If you're using cert-manager, this is unneeded, as it will create the secret for you if it is not set 665 ## 666 ## It is also possible to create and manage the certificates outside of this helm chart 667 ## Please see README.md for more information 668 ## e.g: 669 ## - name: thanos.local-tls 670 ## key: 671 ## certificate: 672 ## 673 secrets: [] 674 ## @param query.ingress.extraRules Additional rules to be covered with this ingress record 675 ## ref: https://kubernetes.io/docs/concepts/services-networking/ingress/#ingress-rules 676 ## e.g: 677 ## extraRules: 678 ## - host: example.local 679 ## http: 680 ## path: / 681 ## backend: 682 ## service: 683 ## name: example-svc 684 ## port: 685 ## name: http 686 ## 687 extraRules: [] 688 ## @param query.ingress.tls Enable TLS configuration for the hostname defined at `query.ingress.hostname` parameter 689 ## TLS certificates will be retrieved from a TLS secret with name: `{{- printf "%s-tls" .Values.query.ingress.hostname }}` 690 ## You can: 691 ## - Use the `query.ingress.secrets` parameter to create this TLS secret 692 ## - Rely on cert-manager to create it by setting the corresponding annotations 693 ## - Rely on Helm to create self-signed certificates by setting `query.ingress.selfSigned=true` 694 ## 695 tls: false 696 ## @param query.ingress.selfSigned Create a TLS secret for this ingress record using self-signed certificates generated by Helm 697 ## 698 selfSigned: false 699 ## @param query.ingress.apiVersion Force Ingress API version (automatically detected if not set) 700 ## 701 apiVersion: "" 702 ## @param query.ingress.path Ingress path 703 ## 704 path: / 705 ## @param query.ingress.pathType Ingress path type 706 ## 707 pathType: ImplementationSpecific 708 ## Create an ingress object for the GRPC service. This requires an HTTP/2 709 ## capable Ingress controller (eg. traefik using AWS NLB). Example annotations 710 ## - ingress.kubernetes.io/protocol: h2c 711 ## - service.beta.kubernetes.io/aws-load-balancer-type: nlb 712 ## - service.beta.kubernetes.io/aws-load-balancer-backend-protocol: tcp 713 ## For more information see https://kubernetes.io/docs/concepts/cluster-administration/cloud-providers/ 714 ## and also the documentation for your ingress controller. 715 ## 716 ## The options that are accepted are identical to the HTTP one listed above 717 ## 718 grpc: 719 ## @param query.ingress.grpc.enabled Enable ingress controller resource (GRPC) 720 ## 721 enabled: false 722 ## @param query.ingress.grpc.hostname Default host for the ingress resource (GRPC) 723 ## 724 hostname: thanos-grpc.local 725 ## @param query.ingress.grpc.ingressClassName IngressClass that will be be used to implement the Ingress (Kubernetes 1.18+) 726 ## This is supported in Kubernetes 1.18+ and required if you have more than one IngressClass marked as the default for your cluster . 727 ## ref: https://kubernetes.io/blog/2020/04/02/improvements-to-the-ingress-api-in-kubernetes-1.18/ 728 ## 729 ingressClassName: "" 730 ## @param query.ingress.grpc.annotations Additional annotations for the Ingress resource (GRPC). To enable certificate autogeneration, place here your cert-manager annotations. 731 ## For a full list of possible ingress annotations, please see 732 ## ref: https://github.com/kubernetes/ingress-nginx/blob/master/docs/user-guide/nginx-configuration/annotations.md 733 ## Use this parameter to set the required annotations for cert-manager, see 734 ## ref: https://cert-manager.io/docs/usage/ingress/#supported-annotations 735 ## 736 ## Examples: 737 ## kubernetes.io/ingress.class: nginx 738 ## cert-manager.io/cluster-issuer: cluster-issuer-name 739 ## 740 annotations: {} 741 ## @param query.ingress.grpc.extraHosts The list of additional hostnames to be covered with this ingress record. 742 ## Most likely the hostname above will be enough, but in the event more hosts are needed, this is an array 743 ## extraHosts: 744 ## - name: thanos-grpc.local 745 ## path: / 746 ## 747 extraHosts: [] 748 ## @param query.ingress.grpc.extraTls The tls configuration for additional hostnames to be covered with this ingress record. 749 ## see: https://kubernetes.io/docs/concepts/services-networking/ingress/#tls 750 ## extraTls: 751 ## - hosts: 752 ## - thanos-grpc.local 753 ## secretName: thanos-grpc.local-tls 754 ## 755 extraTls: [] 756 ## @param query.ingress.grpc.secrets If you're providing your own certificates, please use this to add the certificates as secrets 757 ## key and certificate should start with -----BEGIN CERTIFICATE----- or 758 ## -----BEGIN RSA PRIVATE KEY----- 759 ## 760 ## name should line up with a tlsSecret set further up 761 ## If you're using cert-manager, this is unneeded, as it will create the secret for you if it is not set 762 ## 763 ## It is also possible to create and manage the certificates outside of this helm chart 764 ## Please see README.md for more information 765 ## e.g: 766 ## - name: thanos-grpc.local-tls 767 ## key: 768 ## certificate: 769 ## 770 secrets: [] 771 ## @param query.ingress.grpc.extraRules Additional rules to be covered with this ingress record 772 ## ref: https://kubernetes.io/docs/concepts/services-networking/ingress/#ingress-rules 773 ## e.g: 774 ## extraRules: 775 ## - host: example.local 776 ## http: 777 ## path: / 778 ## backend: 779 ## service: 780 ## name: example-svc 781 ## port: 782 ## name: http 783 ## 784 extraRules: [] 785 ## @param query.ingress.grpc.tls Enable TLS configuration for the hostname defined at `query.ingress.grpc.hostname` parameter 786 ## TLS certificates will be retrieved from a TLS secret with name: `{{- printf "%s-tls" .Values.query.ingress.grpc.hostname }}` 787 ## You can: 788 ## - Use the `query.ingress.grpc.secrets` parameter to create this TLS secret 789 ## - Rely on cert-manager to create it by setting the corresponding annotations 790 ## - Rely on Helm to create self-signed certificates by setting `query.ingress.grpc.selfSigned=true` 791 ## 792 tls: false 793 ## @param query.ingress.grpc.selfSigned Create a TLS secret for this ingress record using self-signed certificates generated by Helm 794 ## 795 selfSigned: false 796 ## @param query.ingress.grpc.apiVersion Override API Version (automatically detected if not set) 797 ## 798 apiVersion: "" 799 ## @param query.ingress.grpc.path Ingress Path 800 ## 801 path: / 802 ## @param query.ingress.grpc.pathType Ingress Path type 803 ## 804 pathType: ImplementationSpecific 805 806 ## @section Thanos Query Frontend parameters 807 808 queryFrontend: 809 ## @param queryFrontend.enabled Enable/disable Thanos Query Frontend component 810 ## 811 enabled: true 812 ## @param queryFrontend.logLevel Thanos Query Frontend log level 813 ## 814 logLevel: info 815 ## @param queryFrontend.logFormat Thanos Query Frontend log format 816 ## 817 logFormat: logfmt 818 ## @param queryFrontend.config Thanos Query Frontend configuration 819 ## Specify content for config.yml 820 ## 821 config: "" 822 ## @param queryFrontend.existingConfigmap Name of existing ConfigMap with Thanos Query Frontend configuration 823 ## NOTE: This will override queryFrontend.config 824 ## 825 existingConfigmap: "" 826 ## @param queryFrontend.extraEnvVars Extra environment variables for Thanos Query Frontend container 827 ## e.g: 828 ## extraEnvVars: 829 ## - name: FOO 830 ## value: "bar" 831 ## 832 extraEnvVars: [] 833 ## @param queryFrontend.extraEnvVarsCM Name of existing ConfigMap containing extra env vars for Thanos Query Frontend nodes 834 ## 835 extraEnvVarsCM: "" 836 ## @param queryFrontend.extraEnvVarsSecret Name of existing Secret containing extra env vars for Thanos Query Frontend nodes 837 ## 838 extraEnvVarsSecret: "" 839 ## @param queryFrontend.extraFlags Extra Flags to passed to Thanos Query Frontend 840 ## 841 extraFlags: [] 842 ## @param queryFrontend.command Override default container command (useful when using custom images) 843 ## 844 command: [] 845 ## @param queryFrontend.args Override default container args (useful when using custom images) 846 ## 847 args: [] 848 ## @param queryFrontend.replicaCount Number of Thanos Query Frontend replicas to deploy 849 ## 850 replicaCount: 1 851 ## @param queryFrontend.updateStrategy.type Update strategy type for Thanos Query Frontend replicas 852 ## 853 updateStrategy: 854 type: RollingUpdate 855 ## K8s Pod Security Context for Thanos Query Frontend pods 856 ## https://kubernetes.io/docs/tasks/configure-pod-container/security-context/ 857 ## @param queryFrontend.podSecurityContext.enabled Enable security context for the Thanos Query Frontend pods 858 ## @param queryFrontend.podSecurityContext.fsGroup Group ID for the filesystem used by Thanos Query Frontend pods 859 ## 860 podSecurityContext: 861 enabled: true 862 fsGroup: 1001 863 ## K8s containers' Security Context for Thanos Query Frontend containers 864 ## ref: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/#set-the-security-context-for-a-container 865 ## @param queryFrontend.containerSecurityContext.enabled Enable container security context for the Thanos Query Frontend containers 866 ## @param queryFrontend.containerSecurityContext.runAsUser User ID for the service user running the Thanos Query Frontend containers 867 ## @param queryFrontend.containerSecurityContext.runAsNonRoot Force the Thanos Query Frontend containers to run as a non root user 868 ## @param queryFrontend.containerSecurityContext.allowPrivilegeEscalation Switch privilegeEscalation possibility on or off for Thanos Query Frontend containers 869 ## @param queryFrontend.containerSecurityContext.readOnlyRootFilesystem mount / (root) as a readonly filesystem on Thanos Query Frontend containers 870 ## 871 containerSecurityContext: 872 enabled: true 873 runAsUser: 1001 874 runAsNonRoot: true 875 allowPrivilegeEscalation: false 876 readOnlyRootFilesystem: true 877 ## Thanos Query Frontend containers' resource requests and limits 878 ## ref: https://kubernetes.io/docs/user-guide/compute-resources/ 879 ## @param queryFrontend.resources.limits The resources limits for the Thanos Query Frontend container 880 ## @param queryFrontend.resources.requests The requested resources for the Thanos Query Frontend container 881 ## 882 resources: 883 limits: {} 884 requests: {} 885 ## Configure extra options for Thanos Query Frontend containers' liveness and readiness probes 886 ## ref: https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-probes/#configure-probes 887 ## @param queryFrontend.livenessProbe.enabled Enable livenessProbe on Thanos Query Frontend containers 888 ## @param queryFrontend.livenessProbe.initialDelaySeconds Initial delay seconds for livenessProbe 889 ## @param queryFrontend.livenessProbe.periodSeconds Period seconds for livenessProbe 890 ## @param queryFrontend.livenessProbe.timeoutSeconds Timeout seconds for livenessProbe 891 ## @param queryFrontend.livenessProbe.failureThreshold Failure threshold for livenessProbe 892 ## @param queryFrontend.livenessProbe.successThreshold Success threshold for livenessProbe 893 ## 894 livenessProbe: 895 enabled: true 896 initialDelaySeconds: 30 897 timeoutSeconds: 30 898 periodSeconds: 10 899 successThreshold: 1 900 failureThreshold: 6 901 ## @param queryFrontend.readinessProbe.enabled Enable readinessProbe on Thanos Query Frontend containers 902 ## @param queryFrontend.readinessProbe.initialDelaySeconds Initial delay seconds for readinessProbe 903 ## @param queryFrontend.readinessProbe.periodSeconds Period seconds for readinessProbe 904 ## @param queryFrontend.readinessProbe.timeoutSeconds Timeout seconds for readinessProbe 905 ## @param queryFrontend.readinessProbe.failureThreshold Failure threshold for readinessProbe 906 ## @param queryFrontend.readinessProbe.successThreshold Success threshold for readinessProbe 907 ## 908 readinessProbe: 909 enabled: true 910 initialDelaySeconds: 30 911 timeoutSeconds: 30 912 periodSeconds: 10 913 successThreshold: 1 914 failureThreshold: 6 915 ## @param queryFrontend.startupProbe.enabled Enable startupProbe on Thanos Query Frontend containers 916 ## @param queryFrontend.startupProbe.initialDelaySeconds Initial delay seconds for startupProbe 917 ## @param queryFrontend.startupProbe.periodSeconds Period seconds for startupProbe 918 ## @param queryFrontend.startupProbe.timeoutSeconds Timeout seconds for startupProbe 919 ## @param queryFrontend.startupProbe.failureThreshold Failure threshold for startupProbe 920 ## @param queryFrontend.startupProbe.successThreshold Success threshold for startupProbe 921 ## 922 startupProbe: 923 enabled: false 924 initialDelaySeconds: 5 925 periodSeconds: 5 926 timeoutSeconds: 1 927 failureThreshold: 15 928 successThreshold: 1 929 ## @param queryFrontend.customLivenessProbe Custom livenessProbe that overrides the default one 930 ## 931 customLivenessProbe: {} 932 ## @param queryFrontend.customReadinessProbe Custom readinessProbe that overrides the default one 933 ## 934 customReadinessProbe: {} 935 ## @param queryFrontend.customStartupProbe Custom startupProbe that overrides the default one 936 ## 937 customStartupProbe: {} 938 ## @param queryFrontend.initContainers Add additional init containers to the Thanos Query Frontend pods 939 ## ref: https://kubernetes.io/docs/concepts/workloads/pods/init-containers/ 940 ## e.g: 941 ## initContainers: 942 ## - name: your-image-name 943 ## image: your-image 944 ## imagePullPolicy: Always 945 ## command: ['sh', '-c', 'echo "hello world"'] 946 ## 947 initContainers: [] 948 ## @param queryFrontend.sidecars Extra containers running as sidecars to Thanos Query Frontend pods 949 ## e.g: 950 ## sidecars: 951 ## - name: your-image-name 952 ## image: your-image 953 ## imagePullPolicy: Always 954 ## ports: 955 ## - name: portname 956 ## containerPort: 1234 957 ## 958 sidecars: [] 959 ## @param queryFrontend.extraVolumes Extra volumes to add to Thanos Query Frontend 960 ## 961 extraVolumes: [] 962 ## @param queryFrontend.extraVolumeMounts Extra volume mounts to add to the query-frontend container 963 ## 964 extraVolumeMounts: [] 965 ## @param queryFrontend.podAffinityPreset Thanos Query Frontend pod affinity preset 966 ## ref: https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/#inter-pod-affinity-and-anti-affinity 967 ## 968 podAffinityPreset: "" 969 ## @param queryFrontend.podAntiAffinityPreset Thanos Query Frontend pod anti-affinity preset. Ignored if `queryFrontend.affinity` is set. Allowed values: `soft` or `hard` 970 ## ref: https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/#inter-pod-affinity-and-anti-affinity 971 ## 972 podAntiAffinityPreset: soft 973 ## Thanos Query Frontend node affinity preset 974 ## ref: https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/#node-affinity 975 ## 976 nodeAffinityPreset: 977 ## @param queryFrontend.nodeAffinityPreset.type Thanos Query Frontend node affinity preset type. Ignored if `queryFrontend.affinity` is set. Allowed values: `soft` or `hard` 978 ## 979 type: "" 980 ## @param queryFrontend.nodeAffinityPreset.key Thanos Query Frontend node label key to match. Ignored if `queryFrontend.affinity` is set. 981 ## e.g: 982 ## key: "kubernetes.io/e2e-az-name" 983 ## 984 key: "" 985 ## @param queryFrontend.nodeAffinityPreset.values Thanos Query Frontend node label values to match. Ignored if `queryFrontend.affinity` is set. 986 ## e.g: 987 ## values: 988 ## - e2e-az1 989 ## - e2e-az2 990 ## 991 values: [] 992 ## @param queryFrontend.affinity Thanos Query Frontend affinity for pod assignment 993 ## ref: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/#affinity-and-anti-affinity 994 ## Note: queryFrontend.podAffinityPreset, queryFrontend.podAntiAffinityPreset, and queryFrontend.nodeAffinityPreset will be ignored when it's set 995 ## 996 affinity: {} 997 ## @param queryFrontend.nodeSelector Thanos Query Frontend node labels for pod assignment 998 ## ref: https://kubernetes.io/docs/user-guide/node-selection/ 999 ## 1000 nodeSelector: {} 1001 ## @param queryFrontend.tolerations Thanos Query Frontend tolerations for pod assignment 1002 ## ref: https://kubernetes.io/docs/concepts/configuration/taint-and-toleration/ 1003 ## 1004 tolerations: [] 1005 ## @param queryFrontend.podLabels Thanos Query Frontend pod labels 1006 ## ref: https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/ 1007 ## 1008 podLabels: {} 1009 ## @param queryFrontend.podAnnotations Annotations for Thanos Query Frontend pods 1010 ## ref: https://kubernetes.io/docs/concepts/overview/working-with-objects/annotations/ 1011 ## 1012 podAnnotations: {} 1013 ## @param queryFrontend.hostAliases Deployment pod host aliases 1014 ## https://kubernetes.io/docs/concepts/services-networking/add-entries-to-pod-etc-hosts-with-host-aliases/ 1015 ## 1016 hostAliases: [] 1017 ## @param queryFrontend.lifecycleHooks for the Thanos Query Frontend container(s) to automate configuration before or after startup 1018 ## 1019 lifecycleHooks: {} 1020 ## @param queryFrontend.priorityClassName Thanos Query Frontend priorityClassName 1021 ## ref: https://kubernetes.io/docs/concepts/configuration/pod-priority-preemption/ 1022 ## 1023 priorityClassName: "" 1024 ## @param queryFrontend.schedulerName Name of the k8s scheduler (other than default) for Thanos Query Frontend pods 1025 ## ref: https://kubernetes.io/docs/tasks/administer-cluster/configure-multiple-schedulers/ 1026 ## 1027 schedulerName: "" 1028 ## @param queryFrontend.topologySpreadConstraints Topology Spread Constraints for Thanos Query Frontend pods assignment spread across your cluster among failure-domains 1029 ## Ref: https://kubernetes.io/docs/concepts/workloads/pods/pod-topology-spread-constraints/#spread-constraints-for-pods 1030 ## 1031 topologySpreadConstraints: [] 1032 ## Service parameters 1033 ## 1034 service: 1035 ## @param queryFrontend.service.type Kubernetes service type 1036 ## 1037 type: ClusterIP 1038 ## @param queryFrontend.service.ports.http Thanos Query Frontend service HTTP port 1039 ## 1040 ports: 1041 http: 9090 1042 ## @param queryFrontend.service.nodePorts.http Specify the Thanos Query Frontend HTTP nodePort value for the LoadBalancer and NodePort service types 1043 ## ref: https://kubernetes.io/docs/concepts/services-networking/service/#type-nodeport 1044 ## 1045 nodePorts: 1046 http: "" 1047 ## @param queryFrontend.service.clusterIP Thanos Query Frontend service clusterIP IP 1048 ## e.g: 1049 ## clusterIP: None 1050 ## 1051 clusterIP: "" 1052 ## @param queryFrontend.service.loadBalancerIP Load balancer IP if service type is `LoadBalancer` 1053 ## Set the LoadBalancer service type to internal only 1054 ## ref: https://kubernetes.io/docs/concepts/services-networking/service/#internal-load-balancer 1055 ## 1056 loadBalancerIP: "" 1057 ## @param queryFrontend.service.loadBalancerSourceRanges Address that are allowed when service is LoadBalancer 1058 ## https://kubernetes.io/docs/tasks/access-application-cluster/configure-cloud-provider-firewall/#restrict-access-for-loadbalancer-service 1059 ## e.g: 1060 ## loadBalancerSourceRanges: 1061 ## - 10.10.10.0/24 1062 ## 1063 loadBalancerSourceRanges: [] 1064 ## @param queryFrontend.service.externalTrafficPolicy Thanos Query Frontend service externalTrafficPolicy 1065 ## Denotes if this Service desires to route external traffic to node-local or cluster-wide endpoints 1066 ## 1067 externalTrafficPolicy: Cluster 1068 ## @param queryFrontend.service.annotations Annotations for Thanos Query Frontend service 1069 ## 1070 annotations: {} 1071 ## @param queryFrontend.service.labels Labels for Thanos Query Frontend service 1072 ## 1073 labels: {} 1074 ## @param queryFrontend.service.extraPorts Extra ports to expose in the Thanos Query Frontend service 1075 ## 1076 extraPorts: [] 1077 ## @param queryFrontend.service.labelSelectorsOverride Selector for Thanos Query service 1078 ## 1079 labelSelectorsOverride: {} 1080 ## @param queryFrontend.automountServiceAccountToken Enable/disable auto mounting of the service account token only for the deployment 1081 ## 1082 automountServiceAccountToken: true 1083 ## ServiceAccount configuration 1084 ## @param queryFrontend.serviceAccount.create Specifies whether a ServiceAccount should be created 1085 ## @param queryFrontend.serviceAccount.name Name of the service account to use. If not set and create is true, a name is generated using the fullname template. 1086 ## @param queryFrontend.serviceAccount.annotations Annotations for Thanos Query Frontend Service Account 1087 ## @param queryFrontend.serviceAccount.automountServiceAccountToken Enable/disable auto mounting of the service account token 1088 ## DEPRECATED queryFrontend.serviceAccount.existingServiceAccount - This value has been deprecated and will be removed in a future release, please use `serviceAccount.name` in combination with `serviceAccount.create=false` instead 1089 ## 1090 serviceAccount: 1091 create: true 1092 name: "" 1093 annotations: {} 1094 automountServiceAccountToken: true 1095 ## existingServiceAccount: "" 1096 ## RBAC configuration 1097 ## 1098 rbac: 1099 ## @param queryFrontend.rbac.create Create a ClusterRole and ClusterRoleBinding for the Thanos Query Frontend Service Account 1100 ## 1101 create: false 1102 ## @param queryFrontend.rbac.rules Custom RBAC rules to set 1103 ## e.g: 1104 ## rules: 1105 ## - apiGroups: 1106 ## - "" 1107 ## resources: 1108 ## - pods 1109 ## verbs: 1110 ## - get 1111 ## - list 1112 ## 1113 rules: [] 1114 ## @param queryFrontend.pspEnabled Whether to create a PodSecurityPolicy for Thanos Query Frontend 1115 ## WARNING: PodSecurityPolicy is deprecated in Kubernetes v1.21 or later, unavailable in v1.25 or later 1116 ## 1117 pspEnabled: false 1118 ## Thanos Query Frontend Autoscaling configuration 1119 ## ref: https://kubernetes.io/docs/tasks/run-application/horizontal-pod-autoscale/ 1120 ## @param queryFrontend.autoscaling.enabled Enable autoscaling for Thanos Query Frontend 1121 ## @param queryFrontend.autoscaling.minReplicas Minimum number of Thanos Query Frontend replicas 1122 ## @param queryFrontend.autoscaling.maxReplicas Maximum number of Thanos Query Frontend replicas 1123 ## @param queryFrontend.autoscaling.targetCPU Target CPU utilization percentage 1124 ## @param queryFrontend.autoscaling.targetMemory Target Memory utilization percentage 1125 ## 1126 autoscaling: 1127 enabled: false 1128 minReplicas: "" 1129 maxReplicas: "" 1130 targetCPU: "" 1131 targetMemory: "" 1132 ## Thanos Query Frontend Pod Disruption Budget configuration 1133 ## ref: https://kubernetes.io/docs/tasks/run-application/configure-pdb 1134 ## @param queryFrontend.pdb.create Enable/disable a Pod Disruption Budget creation for Thanos Query Frontend 1135 ## @param queryFrontend.pdb.minAvailable Minimum number/percentage of pods that should remain scheduled 1136 ## @param queryFrontend.pdb.maxUnavailable Maximum number/percentage of pods that may be made unavailable 1137 ## 1138 pdb: 1139 create: false 1140 minAvailable: 1 1141 maxUnavailable: "" 1142 ## Configure the ingress resource that allows you to access Thanos Query Frontend 1143 ## ref: https://kubernetes.io/docs/user-guide/ingress/ 1144 ## 1145 ingress: 1146 ## @param queryFrontend.ingress.enabled Enable ingress controller resource 1147 ## 1148 enabled: false 1149 ## @param queryFrontend.ingress.hostname Default host for the ingress resource 1150 ## 1151 hostname: thanos.local 1152 ## @param queryFrontend.ingress.ingressClassName IngressClass that will be be used to implement the Ingress (Kubernetes 1.18+) 1153 ## This is supported in Kubernetes 1.18+ and required if you have more than one IngressClass marked as the default for your cluster . 1154 ## ref: https://kubernetes.io/blog/2020/04/02/improvements-to-the-ingress-api-in-kubernetes-1.18/ 1155 ## 1156 ingressClassName: "" 1157 ## @param queryFrontend.ingress.annotations Additional annotations for the Ingress resource. To enable certificate autogeneration, place here your cert-manager annotations. 1158 ## For a full list of possible ingress annotations, please see 1159 ## ref: https://github.com/kubernetes/ingress-nginx/blob/master/docs/user-guide/nginx-configuration/annotations.md 1160 ## Use this parameter to set the required annotations for cert-manager, see 1161 ## ref: https://cert-manager.io/docs/usage/ingress/#supported-annotations 1162 ## 1163 ## e.g: 1164 ## annotations: 1165 ## kubernetes.io/ingress.class: nginx 1166 ## cert-manager.io/cluster-issuer: cluster-issuer-name 1167 ## 1168 annotations: {} 1169 ## @param queryFrontend.ingress.extraHosts The list of additional hostnames to be covered with this ingress record. 1170 ## Most likely the hostname above will be enough, but in the event more hosts are needed, this is an array 1171 ## extraHosts: 1172 ## - name: thanos.local 1173 ## path: / 1174 ## pathType: ImplementationSpecific 1175 ## 1176 extraHosts: [] 1177 ## @param queryFrontend.ingress.extraTls The tls configuration for additional hostnames to be covered with this ingress record. 1178 ## see: https://kubernetes.io/docs/concepts/services-networking/ingress/#tls 1179 ## extraTls: 1180 ## - hosts: 1181 ## - thanos.local 1182 ## secretName: thanos.local-tls 1183 ## 1184 extraTls: [] 1185 ## @param queryFrontend.ingress.secrets If you're providing your own certificates, please use this to add the certificates as secrets 1186 ## key and certificate should start with -----BEGIN CERTIFICATE----- or 1187 ## -----BEGIN RSA PRIVATE KEY----- 1188 ## 1189 ## name should line up with a tlsSecret set further up 1190 ## If you're using cert-manager, this is unneeded, as it will create the secret for you if it is not set 1191 ## 1192 ## It is also possible to create and manage the certificates outside of this helm chart 1193 ## Please see README.md for more information 1194 ## e.g: 1195 ## - name: thanos.local-tls 1196 ## key: 1197 ## certificate: 1198 ## 1199 secrets: [] 1200 ## @param queryFrontend.ingress.extraRules Additional rules to be covered with this ingress record 1201 ## ref: https://kubernetes.io/docs/concepts/services-networking/ingress/#ingress-rules 1202 ## e.g: 1203 ## extraRules: 1204 ## - host: example.local 1205 ## http: 1206 ## path: / 1207 ## backend: 1208 ## service: 1209 ## name: example-svc 1210 ## port: 1211 ## name: http 1212 ## 1213 extraRules: [] 1214 ## @param queryFrontend.ingress.tls Enable TLS configuration for the hostname defined at `queryFrontend.ingress.hostname` parameter 1215 ## TLS certificates will be retrieved from a TLS secret with name: `{{- printf "%s-tls" .Values.queryFrontend.ingress.hostname }}` 1216 ## You can: 1217 ## - Use the `queryFrontend.ingress.secrets` parameter to create this TLS secret 1218 ## - Rely on cert-manager to create it by setting the corresponding annotations 1219 ## - Rely on Helm to create self-signed certificates by setting `queryFrontend.ingress.selfSigned=true` 1220 ## 1221 tls: false 1222 ## @param queryFrontend.ingress.selfSigned Create a TLS secret for this ingress record using self-signed certificates generated by Helm 1223 ## 1224 selfSigned: false 1225 ## @param queryFrontend.ingress.apiVersion Force Ingress API version (automatically detected if not set) 1226 ## 1227 apiVersion: "" 1228 ## @param queryFrontend.ingress.path Ingress path 1229 ## 1230 path: / 1231 ## @param queryFrontend.ingress.pathType Ingress path type 1232 ## 1233 pathType: ImplementationSpecific 1234 1235 ## @section Thanos Bucket Web parameters 1236 1237 bucketweb: 1238 ## @param bucketweb.enabled Enable/disable Thanos Bucket Web component 1239 ## 1240 enabled: false 1241 ## @param bucketweb.logLevel Thanos Bucket Web log level 1242 ## 1243 logLevel: info 1244 ## @param bucketweb.logFormat Thanos Bucket Web log format 1245 ## 1246 logFormat: logfmt 1247 ## @param bucketweb.refresh Refresh interval to download metadata from remote storage 1248 ## 1249 refresh: 30m 1250 ## @param bucketweb.timeout Timeout to download metadata from remote storage 1251 ## 1252 timeout: 5m 1253 ## @param bucketweb.extraEnvVars Extra environment variables for Thanos Bucket Web container 1254 ## e.g: 1255 ## extraEnvVars: 1256 ## - name: FOO 1257 ## value: "bar" 1258 ## 1259 extraEnvVars: [] 1260 ## @param bucketweb.extraEnvVarsCM Name of existing ConfigMap containing extra env vars for Thanos Bucket Web nodes 1261 ## 1262 extraEnvVarsCM: "" 1263 ## @param bucketweb.extraEnvVarsSecret Name of existing Secret containing extra env vars for Thanos Bucket Web nodes 1264 ## 1265 extraEnvVarsSecret: "" 1266 ## @param bucketweb.extraFlags Extra Flags to passed to Thanos Bucket Web 1267 ## 1268 extraFlags: [] 1269 ## @param bucketweb.command Override default container command (useful when using custom images) 1270 ## 1271 command: [] 1272 ## @param bucketweb.args Override default container args (useful when using custom images) 1273 ## 1274 args: [] 1275 ## @param bucketweb.replicaCount Number of Thanos Bucket Web replicas to deploy 1276 ## 1277 replicaCount: 1 1278 ## @param bucketweb.updateStrategy.type Update strategy type for Thanos Bucket Web replicas 1279 ## 1280 updateStrategy: 1281 type: RollingUpdate 1282 ## K8s Pod Security Context for Thanos Bucket Web pods 1283 ## https://kubernetes.io/docs/tasks/configure-pod-container/security-context/ 1284 ## @param bucketweb.podSecurityContext.enabled Enable security context for the Thanos Bucket Web pods 1285 ## @param bucketweb.podSecurityContext.fsGroup Group ID for the filesystem used by Thanos Bucket Web pods 1286 ## 1287 podSecurityContext: 1288 enabled: true 1289 fsGroup: 1001 1290 ## K8s containers' Security Context for Thanos Bucket Web containers 1291 ## ref: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/#set-the-security-context-for-a-container 1292 ## @param bucketweb.containerSecurityContext.enabled Enable container security context for the Thanos Bucket Web containers 1293 ## @param bucketweb.containerSecurityContext.runAsUser User ID for the service user running the Thanos Bucket Web containers 1294 ## @param bucketweb.containerSecurityContext.runAsNonRoot Force the Thanos Bucket Web containers to run as a non root user 1295 ## @param bucketweb.containerSecurityContext.allowPrivilegeEscalation Switch privilegeEscalation possibility on or off for Thanos Bucket Web containers 1296 ## @param bucketweb.containerSecurityContext.readOnlyRootFilesystem mount / (root) as a readonly filesystem on Thanos Bucket Web containers 1297 ## 1298 containerSecurityContext: 1299 enabled: true 1300 runAsUser: 1001 1301 runAsNonRoot: true 1302 allowPrivilegeEscalation: false 1303 readOnlyRootFilesystem: true 1304 ## Thanos Bucket Web containers' resource requests and limits 1305 ## ref: https://kubernetes.io/docs/user-guide/compute-resources/ 1306 ## @param bucketweb.resources.limits The resources limits for the Thanos Bucket Web container 1307 ## @param bucketweb.resources.requests The requested resources for the Thanos Bucket Web container 1308 ## 1309 resources: 1310 limits: {} 1311 requests: {} 1312 ## Configure extra options for Thanos Bucket Web containers' liveness and readiness probes 1313 ## ref: https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-probes/#configure-probes 1314 ## @param bucketweb.livenessProbe.enabled Enable livenessProbe on Thanos Bucket Web containers 1315 ## @param bucketweb.livenessProbe.initialDelaySeconds Initial delay seconds for livenessProbe 1316 ## @param bucketweb.livenessProbe.periodSeconds Period seconds for livenessProbe 1317 ## @param bucketweb.livenessProbe.timeoutSeconds Timeout seconds for livenessProbe 1318 ## @param bucketweb.livenessProbe.failureThreshold Failure threshold for livenessProbe 1319 ## @param bucketweb.livenessProbe.successThreshold Success threshold for livenessProbe 1320 ## 1321 livenessProbe: 1322 enabled: true 1323 initialDelaySeconds: 30 1324 timeoutSeconds: 30 1325 periodSeconds: 10 1326 successThreshold: 1 1327 failureThreshold: 6 1328 ## @param bucketweb.readinessProbe.enabled Enable readinessProbe on Thanos Bucket Web containers 1329 ## @param bucketweb.readinessProbe.initialDelaySeconds Initial delay seconds for readinessProbe 1330 ## @param bucketweb.readinessProbe.periodSeconds Period seconds for readinessProbe 1331 ## @param bucketweb.readinessProbe.timeoutSeconds Timeout seconds for readinessProbe 1332 ## @param bucketweb.readinessProbe.failureThreshold Failure threshold for readinessProbe 1333 ## @param bucketweb.readinessProbe.successThreshold Success threshold for readinessProbe 1334 ## 1335 readinessProbe: 1336 enabled: true 1337 initialDelaySeconds: 30 1338 timeoutSeconds: 30 1339 periodSeconds: 10 1340 successThreshold: 1 1341 failureThreshold: 6 1342 ## @param bucketweb.startupProbe.enabled Enable startupProbe on Thanos Bucket Web containers 1343 ## @param bucketweb.startupProbe.initialDelaySeconds Initial delay seconds for startupProbe 1344 ## @param bucketweb.startupProbe.periodSeconds Period seconds for startupProbe 1345 ## @param bucketweb.startupProbe.timeoutSeconds Timeout seconds for startupProbe 1346 ## @param bucketweb.startupProbe.failureThreshold Failure threshold for startupProbe 1347 ## @param bucketweb.startupProbe.successThreshold Success threshold for startupProbe 1348 ## 1349 startupProbe: 1350 enabled: false 1351 initialDelaySeconds: 5 1352 periodSeconds: 5 1353 timeoutSeconds: 1 1354 failureThreshold: 15 1355 successThreshold: 1 1356 ## @param bucketweb.customLivenessProbe Custom livenessProbe that overrides the default one 1357 ## 1358 customLivenessProbe: {} 1359 ## @param bucketweb.customReadinessProbe Custom readinessProbe that overrides the default one 1360 ## 1361 customReadinessProbe: {} 1362 ## @param bucketweb.customStartupProbe Custom startupProbe that overrides the default one 1363 ## 1364 customStartupProbe: {} 1365 ## @param bucketweb.initContainers Add additional init containers to the Thanos Bucket Web pods 1366 ## ref: https://kubernetes.io/docs/concepts/workloads/pods/init-containers/ 1367 ## e.g: 1368 ## initContainers: 1369 ## - name: your-image-name 1370 ## image: your-image 1371 ## imagePullPolicy: Always 1372 ## command: ['sh', '-c', 'echo "hello world"'] 1373 ## 1374 initContainers: [] 1375 ## @param bucketweb.sidecars Extra containers running as sidecars to Thanos Bucket Web pods 1376 ## e.g: 1377 ## sidecars: 1378 ## - name: your-image-name 1379 ## image: your-image 1380 ## imagePullPolicy: Always 1381 ## ports: 1382 ## - name: portname 1383 ## containerPort: 1234 1384 ## 1385 sidecars: [] 1386 ## @param bucketweb.extraVolumes Extra volumes to add to Bucket Web 1387 ## 1388 extraVolumes: [] 1389 ## @param bucketweb.extraVolumeMounts Extra volume mounts to add to the bucketweb container 1390 ## 1391 extraVolumeMounts: [] 1392 ## @param bucketweb.podAffinityPreset Thanos Bucket Web pod affinity preset 1393 ## ref: https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/#inter-pod-affinity-and-anti-affinity 1394 ## 1395 podAffinityPreset: "" 1396 ## @param bucketweb.podAntiAffinityPreset Thanos Bucket Web pod anti-affinity preset. Ignored if `bucketweb.affinity` is set. Allowed values: `soft` or `hard` 1397 ## ref: https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/#inter-pod-affinity-and-anti-affinity 1398 ## 1399 podAntiAffinityPreset: soft 1400 ## Thanos Bucket Web node affinity preset 1401 ## ref: https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/#node-affinity 1402 ## 1403 nodeAffinityPreset: 1404 ## @param bucketweb.nodeAffinityPreset.type Thanos Bucket Web node affinity preset type. Ignored if `bucketweb.affinity` is set. Allowed values: `soft` or `hard` 1405 ## 1406 type: "" 1407 ## @param bucketweb.nodeAffinityPreset.key Thanos Bucket Web node label key to match. Ignored if `bucketweb.affinity` is set. 1408 ## e.g: 1409 ## key: "kubernetes.io/e2e-az-name" 1410 ## 1411 key: "" 1412 ## @param bucketweb.nodeAffinityPreset.values Thanos Bucket Web node label values to match. Ignored if `bucketweb.affinity` is set. 1413 ## e.g: 1414 ## values: 1415 ## - e2e-az1 1416 ## - e2e-az2 1417 ## 1418 values: [] 1419 ## @param bucketweb.affinity Thanos Bucket Web affinity for pod assignment 1420 ## ref: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/#affinity-and-anti-affinity 1421 ## Note: bucketweb.podAffinityPreset, bucketweb.podAntiAffinityPreset, and bucketweb.nodeAffinityPreset will be ignored when it's set 1422 ## 1423 affinity: {} 1424 ## @param bucketweb.nodeSelector Thanos Bucket Web node labels for pod assignment 1425 ## ref: https://kubernetes.io/docs/user-guide/node-selection/ 1426 ## 1427 nodeSelector: {} 1428 ## @param bucketweb.tolerations Thanos Bucket Web tolerations for pod assignment 1429 ## ref: https://kubernetes.io/docs/concepts/configuration/taint-and-toleration/ 1430 ## 1431 tolerations: [] 1432 ## @param bucketweb.podLabels Thanos Bucket Web pod labels 1433 ## ref: https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/ 1434 ## 1435 podLabels: {} 1436 ## @param bucketweb.podAnnotations Annotations for Thanos Bucket Web pods 1437 ## ref: https://kubernetes.io/docs/concepts/overview/working-with-objects/annotations/ 1438 ## 1439 podAnnotations: {} 1440 ## @param bucketweb.hostAliases Deployment pod host aliases 1441 ## https://kubernetes.io/docs/concepts/services-networking/add-entries-to-pod-etc-hosts-with-host-aliases/ 1442 ## 1443 hostAliases: [] 1444 ## @param bucketweb.lifecycleHooks for the Thanos Bucket Web container(s) to automate configuration before or after startup 1445 ## 1446 lifecycleHooks: {} 1447 ## @param bucketweb.priorityClassName Thanos Bucket Web priorityClassName 1448 ## ref: https://kubernetes.io/docs/concepts/configuration/pod-priority-preemption/ 1449 ## 1450 priorityClassName: "" 1451 ## @param bucketweb.schedulerName Name of the k8s scheduler (other than default) for Thanos Bucket Web pods 1452 ## ref: https://kubernetes.io/docs/tasks/administer-cluster/configure-multiple-schedulers/ 1453 ## 1454 schedulerName: "" 1455 ## @param bucketweb.topologySpreadConstraints Topology Spread Constraints for Thanos Bucket Web pods assignment spread across your cluster among failure-domains 1456 ## Ref: https://kubernetes.io/docs/concepts/workloads/pods/pod-topology-spread-constraints/#spread-constraints-for-pods 1457 ## 1458 topologySpreadConstraints: [] 1459 ## Service parameters 1460 ## 1461 service: 1462 ## @param bucketweb.service.type Kubernetes service type 1463 ## 1464 type: ClusterIP 1465 ## @param bucketweb.service.ports.http Thanos Bucket Web service HTTP port 1466 ## 1467 ports: 1468 http: 8080 1469 ## @param bucketweb.service.nodePorts.http Specify the Thanos Bucket Web HTTP nodePort value for the LoadBalancer and NodePort service types 1470 ## ref: https://kubernetes.io/docs/concepts/services-networking/service/#type-nodeport 1471 ## 1472 nodePorts: 1473 http: "" 1474 ## @param bucketweb.service.clusterIP Thanos Bucket Web service clusterIP IP 1475 ## e.g: 1476 ## clusterIP: None 1477 ## 1478 clusterIP: "" 1479 ## @param bucketweb.service.loadBalancerIP Load balancer IP if service type is `LoadBalancer` 1480 ## ref: https://kubernetes.io/docs/concepts/services-networking/service/#internal-load-balancer 1481 ## 1482 loadBalancerIP: "" 1483 ## @param bucketweb.service.loadBalancerSourceRanges Address that are allowed when service is LoadBalancer 1484 ## https://kubernetes.io/docs/tasks/access-application-cluster/configure-cloud-provider-firewall/#restrict-access-for-loadbalancer-service 1485 ## 1486 ## loadBalancerSourceRanges: 1487 ## - 10.10.10.0/24 1488 ## 1489 loadBalancerSourceRanges: [] 1490 ## @param bucketweb.service.externalTrafficPolicy Thanos Bucket Web service externalTrafficPolicy 1491 ## 1492 externalTrafficPolicy: Cluster 1493 ## @param bucketweb.service.annotations Annotations for Thanos Bucket Web service 1494 ## 1495 annotations: {} 1496 ## @param bucketweb.service.extraPorts Extra ports to expose in the Thanos Bucket Web service 1497 ## 1498 extraPorts: [] 1499 ## @param bucketweb.service.labelSelectorsOverride Selector for Thanos Query service 1500 ## 1501 labelSelectorsOverride: {} 1502 ## @param bucketweb.automountServiceAccountToken Enable/disable auto mounting of the service account token only for the deployment 1503 ## 1504 automountServiceAccountToken: true 1505 ## ServiceAccount configuration 1506 ## @param bucketweb.serviceAccount.create Specifies whether a ServiceAccount should be created 1507 ## @param bucketweb.serviceAccount.name Name of the service account to use. If not set and create is true, a name is generated using the fullname template. 1508 ## @param bucketweb.serviceAccount.annotations Annotations for Thanos Bucket Web Service Account 1509 ## @param bucketweb.serviceAccount.automountServiceAccountToken Enable/disable auto mounting of the service account token 1510 ## DEPRECATED bucketweb.serviceAccount.existingServiceAccount - This value has been deprecated and will be removed in a future release, please use `serviceAccount.name` in combination with `serviceAccount.create=false` instead 1511 ## 1512 serviceAccount: 1513 create: true 1514 name: "" 1515 annotations: {} 1516 automountServiceAccountToken: true 1517 ## existingServiceAccount: "" 1518 ## Thanos Bucket Web Autoscaling configuration 1519 ## ref: https://kubernetes.io/docs/tasks/run-application/horizontal-pod-autoscale/ 1520 ## @param bucketweb.autoscaling.enabled Enable autoscaling for Thanos Bucket Web 1521 ## @param bucketweb.autoscaling.minReplicas Minimum number of Thanos Bucket Web replicas 1522 ## @param bucketweb.autoscaling.maxReplicas Maximum number of Thanos Bucket Web replicas 1523 ## @param bucketweb.autoscaling.targetCPU Target CPU utilization percentage 1524 ## @param bucketweb.autoscaling.targetMemory Target Memory utilization percentage 1525 ## 1526 autoscaling: 1527 enabled: false 1528 minReplicas: "" 1529 maxReplicas: "" 1530 targetCPU: "" 1531 targetMemory: "" 1532 ## Thanos Bucket Web Pod Disruption Budget configuration 1533 ## ref: https://kubernetes.io/docs/tasks/run-application/configure-pdb 1534 ## @param bucketweb.pdb.create Enable/disable a Pod Disruption Budget creation for Thanos Bucket Web 1535 ## @param bucketweb.pdb.minAvailable Minimum number/percentage of pods that should remain scheduled 1536 ## @param bucketweb.pdb.maxUnavailable Maximum number/percentage of pods that may be made unavailable 1537 ## 1538 pdb: 1539 create: false 1540 minAvailable: 1 1541 maxUnavailable: "" 1542 ## Configure the ingress resource that allows you to access Thanos Bucketweb 1543 ## ref: https://kubernetes.io/docs/user-guide/ingress/ 1544 ## 1545 ingress: 1546 ## @param bucketweb.ingress.enabled Enable ingress controller resource 1547 ## 1548 enabled: false 1549 ## @param bucketweb.ingress.hostname Default host for the ingress resource 1550 ## 1551 hostname: thanos-bucketweb.local 1552 ## @param bucketweb.ingress.ingressClassName IngressClass that will be be used to implement the Ingress (Kubernetes 1.18+) 1553 ## This is supported in Kubernetes 1.18+ and required if you have more than one IngressClass marked as the default for your cluster . 1554 ## ref: https://kubernetes.io/blog/2020/04/02/improvements-to-the-ingress-api-in-kubernetes-1.18/ 1555 ## 1556 ingressClassName: "" 1557 ## @param bucketweb.ingress.annotations Additional annotations for the Ingress resource. To enable certificate autogeneration, place here your cert-manager annotations. 1558 ## For a full list of possible ingress annotations, please see 1559 ## ref: https://github.com/kubernetes/ingress-nginx/blob/master/docs/user-guide/nginx-configuration/annotations.md 1560 ## Use this parameter to set the required annotations for cert-manager, see 1561 ## ref: https://cert-manager.io/docs/usage/ingress/#supported-annotations 1562 ## 1563 ## e.g: 1564 ## annotations: 1565 ## kubernetes.io/ingress.class: nginx 1566 ## cert-manager.io/cluster-issuer: cluster-issuer-name 1567 ## 1568 annotations: {} 1569 ## @param bucketweb.ingress.extraHosts The list of additional hostnames to be covered with this ingress record. 1570 ## Most likely the hostname above will be enough, but in the event more hosts are needed, this is an array 1571 ## extraHosts: 1572 ## - name: thanos-bucketweb.local 1573 ## path: / 1574 ## pathType: ImplementationSpecific 1575 ## 1576 extraHosts: [] 1577 ## @param bucketweb.ingress.extraTls The tls configuration for additional hostnames to be covered with this ingress record. 1578 ## see: https://kubernetes.io/docs/concepts/services-networking/ingress/#tls 1579 ## extraTls: 1580 ## - hosts: 1581 ## - thanos-bucketweb.local 1582 ## secretName: thanos-bucketweb.local-tls 1583 ## 1584 extraTls: [] 1585 ## @param bucketweb.ingress.secrets If you're providing your own certificates, please use this to add the certificates as secrets 1586 ## key and certificate should start with -----BEGIN CERTIFICATE----- or 1587 ## -----BEGIN RSA PRIVATE KEY----- 1588 ## 1589 ## name should line up with a tlsSecret set further up 1590 ## If you're using cert-manager, this is unneeded, as it will create the secret for you if it is not set 1591 ## 1592 ## It is also possible to create and manage the certificates outside of this helm chart 1593 ## Please see README.md for more information 1594 ## e.g: 1595 ## - name: thanos-bucketweb.local-tls 1596 ## key: 1597 ## certificate: 1598 ## 1599 secrets: [] 1600 ## @param bucketweb.ingress.extraRules Additional rules to be covered with this ingress record 1601 ## ref: https://kubernetes.io/docs/concepts/services-networking/ingress/#ingress-rules 1602 ## e.g: 1603 ## extraRules: 1604 ## - host: example.local 1605 ## http: 1606 ## path: / 1607 ## backend: 1608 ## service: 1609 ## name: example-svc 1610 ## port: 1611 ## name: http 1612 ## 1613 extraRules: [] 1614 ## @param bucketweb.ingress.tls Enable TLS configuration for the hostname defined at `bucketweb.ingress.hostname` parameter 1615 ## TLS certificates will be retrieved from a TLS secret with name: `{{- printf "%s-tls" .Values.bucketweb.ingress.hostname }}` 1616 ## You can: 1617 ## - Use the `bucketweb.ingress.secrets` parameter to create this TLS secret 1618 ## - Rely on cert-manager to create it by setting the corresponding annotations 1619 ## - Rely on Helm to create self-signed certificates by setting `bucketweb.ingress.selfSigned=true` 1620 ## 1621 tls: false 1622 ## @param bucketweb.ingress.selfSigned Create a TLS secret for this ingress record using self-signed certificates generated by Helm 1623 ## 1624 selfSigned: false 1625 ## @param bucketweb.ingress.apiVersion Force Ingress API version (automatically detected if not set) 1626 ## 1627 apiVersion: "" 1628 ## @param bucketweb.ingress.path Ingress path 1629 ## 1630 path: / 1631 ## @param bucketweb.ingress.pathType Ingress path type 1632 ## 1633 pathType: ImplementationSpecific 1634 1635 ## @section Thanos Compactor parameters 1636 1637 compactor: 1638 ## @param compactor.enabled Enable/disable Thanos Compactor component 1639 ## 1640 enabled: false 1641 ## @param compactor.logLevel Thanos Compactor log level 1642 ## 1643 logLevel: info 1644 ## @param compactor.logFormat Thanos Compactor log format 1645 ## 1646 logFormat: logfmt 1647 ## Resolution and Retention flags 1648 ## @param compactor.retentionResolutionRaw Resolution and Retention flag 1649 ## @param compactor.retentionResolution5m Resolution and Retention flag 1650 ## @param compactor.retentionResolution1h Resolution and Retention flag 1651 ## 1652 retentionResolutionRaw: 30d 1653 retentionResolution5m: 30d 1654 retentionResolution1h: 10y 1655 ## @param compactor.consistencyDelay Minimum age of fresh (non-compacted) blocks before they are being processed 1656 ## 1657 consistencyDelay: 30m 1658 ## @param compactor.extraEnvVars Extra environment variables for Thanos Compactor container 1659 ## e.g: 1660 ## extraEnvVars: 1661 ## - name: FOO 1662 ## value: "bar" 1663 ## 1664 extraEnvVars: [] 1665 ## @param compactor.extraEnvVarsCM Name of existing ConfigMap containing extra env vars for Thanos Compactor nodes 1666 ## 1667 extraEnvVarsCM: "" 1668 ## @param compactor.extraEnvVarsSecret Name of existing Secret containing extra env vars for Thanos Compactor nodes 1669 ## 1670 extraEnvVarsSecret: "" 1671 ## @param compactor.extraFlags Extra Flags to passed to Thanos Compactor 1672 ## 1673 extraFlags: [] 1674 ## @param compactor.command Override default container command (useful when using custom images) 1675 ## 1676 command: [] 1677 ## @param compactor.args Override default container args (useful when using custom images) 1678 ## 1679 args: [] 1680 ## K8s CronJob configuration 1681 ## ref: https://kubernetes.io/docs/tasks/job/automated-tasks-with-cron-jobs/ 1682 ## @param compactor.cronJob.enabled Run compactor as a CronJob rather than a Deployment 1683 ## @param compactor.cronJob.schedule The schedule in Cron format, see https://en.wikipedia.org/wiki/Cron 1684 ## @param compactor.cronJob.timeZone The time zone name for the given schedule, see https://en.wikipedia.org/wiki/List_of_tz_database_time_zones 1685 ## @param compactor.cronJob.concurrencyPolicy Specifies how to treat concurrent executions of a Job 1686 ## @param compactor.cronJob.startingDeadlineSeconds Optional deadline in seconds for starting the job if it misses scheduled time for any reason 1687 ## @param compactor.cronJob.suspend This flag tells the controller to suspend subsequent executions 1688 ## @param compactor.cronJob.successfulJobsHistoryLimit The number of successful finished jobs to retain 1689 ## @param compactor.cronJob.failedJobsHistoryLimit The number of failed finished jobs to retain 1690 ## @param compactor.cronJob.backoffLimit Specifies the number of retries before marking this job failed 1691 ## 1692 cronJob: 1693 enabled: false 1694 schedule: "0 */6 * * *" 1695 timeZone: "" 1696 startingDeadlineSeconds: "" 1697 concurrencyPolicy: Forbid 1698 suspend: "" 1699 successfulJobsHistoryLimit: "" 1700 failedJobsHistoryLimit: "" 1701 backoffLimit: "" 1702 ## @param compactor.restartPolicy Compactor container restart policy. 1703 ## ref: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/#restart-policy 1704 ## 1705 restartPolicy: "" 1706 ## @param compactor.updateStrategy.type Update strategy type for Thanos Compactor replicas 1707 ## 1708 updateStrategy: 1709 type: Recreate 1710 ## K8s Pod Security Context for Thanos Compactor pods 1711 ## https://kubernetes.io/docs/tasks/configure-pod-container/security-context/ 1712 ## @param compactor.podSecurityContext.enabled Enable security context for the Thanos Compactor pods 1713 ## @param compactor.podSecurityContext.fsGroup Group ID for the filesystem used by Thanos Compactor pods 1714 ## 1715 podSecurityContext: 1716 enabled: true 1717 fsGroup: 1001 1718 ## K8s containers' Security Context for Thanos Compactor containers 1719 ## ref: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/#set-the-security-context-for-a-container 1720 ## @param compactor.containerSecurityContext.enabled Enable container security context for the Thanos Compactor containers 1721 ## @param compactor.containerSecurityContext.runAsUser User ID for the service user running the Thanos Compactor containers 1722 ## @param compactor.containerSecurityContext.runAsNonRoot Force the Thanos Compactor containers to run as a non root user 1723 ## @param compactor.containerSecurityContext.allowPrivilegeEscalation Switch privilegeEscalation possibility on or off for Thanos Compactor containers 1724 ## @param compactor.containerSecurityContext.readOnlyRootFilesystem mount / (root) as a readonly filesystem on Thanos Compactor containers 1725 ## 1726 containerSecurityContext: 1727 enabled: true 1728 runAsUser: 1001 1729 runAsNonRoot: true 1730 allowPrivilegeEscalation: false 1731 readOnlyRootFilesystem: true 1732 ## Thanos Compactor containers' resource requests and limits 1733 ## ref: https://kubernetes.io/docs/user-guide/compute-resources/ 1734 ## @param compactor.resources.limits The resources limits for the Thanos Compactor container 1735 ## @param compactor.resources.requests The requested resources for the Thanos Compactor container 1736 ## 1737 resources: 1738 limits: {} 1739 requests: {} 1740 ## Configure extra options for Thanos Compactor containers' liveness and readiness probes 1741 ## ref: https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-probes/#configure-probes 1742 ## @param compactor.livenessProbe.enabled Enable livenessProbe on Thanos Compactor containers 1743 ## @param compactor.livenessProbe.initialDelaySeconds Initial delay seconds for livenessProbe 1744 ## @param compactor.livenessProbe.periodSeconds Period seconds for livenessProbe 1745 ## @param compactor.livenessProbe.timeoutSeconds Timeout seconds for livenessProbe 1746 ## @param compactor.livenessProbe.failureThreshold Failure threshold for livenessProbe 1747 ## @param compactor.livenessProbe.successThreshold Success threshold for livenessProbe 1748 ## 1749 livenessProbe: 1750 enabled: true 1751 initialDelaySeconds: 30 1752 timeoutSeconds: 30 1753 periodSeconds: 10 1754 successThreshold: 1 1755 failureThreshold: 6 1756 ## @param compactor.readinessProbe.enabled Enable readinessProbe on Thanos Compactor containers 1757 ## @param compactor.readinessProbe.initialDelaySeconds Initial delay seconds for readinessProbe 1758 ## @param compactor.readinessProbe.periodSeconds Period seconds for readinessProbe 1759 ## @param compactor.readinessProbe.timeoutSeconds Timeout seconds for readinessProbe 1760 ## @param compactor.readinessProbe.failureThreshold Failure threshold for readinessProbe 1761 ## @param compactor.readinessProbe.successThreshold Success threshold for readinessProbe 1762 ## 1763 readinessProbe: 1764 enabled: true 1765 initialDelaySeconds: 30 1766 timeoutSeconds: 30 1767 periodSeconds: 10 1768 successThreshold: 1 1769 failureThreshold: 6 1770 ## @param compactor.startupProbe.enabled Enable startupProbe on Thanos Compactor containers 1771 ## @param compactor.startupProbe.initialDelaySeconds Initial delay seconds for startupProbe 1772 ## @param compactor.startupProbe.periodSeconds Period seconds for startupProbe 1773 ## @param compactor.startupProbe.timeoutSeconds Timeout seconds for startupProbe 1774 ## @param compactor.startupProbe.failureThreshold Failure threshold for startupProbe 1775 ## @param compactor.startupProbe.successThreshold Success threshold for startupProbe 1776 ## 1777 startupProbe: 1778 enabled: false 1779 initialDelaySeconds: 5 1780 periodSeconds: 5 1781 timeoutSeconds: 1 1782 failureThreshold: 15 1783 successThreshold: 1 1784 ## @param compactor.customLivenessProbe Custom livenessProbe that overrides the default one 1785 ## 1786 customLivenessProbe: {} 1787 ## @param compactor.customReadinessProbe Custom readinessProbe that overrides the default one 1788 ## 1789 customReadinessProbe: {} 1790 ## @param compactor.customStartupProbe Custom startupProbe that overrides the default one 1791 ## 1792 customStartupProbe: {} 1793 ## @param compactor.initContainers Add additional init containers to the Thanos Compactor pods 1794 ## ref: https://kubernetes.io/docs/concepts/workloads/pods/init-containers/ 1795 ## e.g: 1796 ## initContainers: 1797 ## - name: your-image-name 1798 ## image: your-image 1799 ## imagePullPolicy: Always 1800 ## command: ['sh', '-c', 'echo "hello world"'] 1801 ## 1802 initContainers: [] 1803 ## @param compactor.sidecars Extra containers running as sidecars to Thanos Compactor pods 1804 ## e.g: 1805 ## sidecars: 1806 ## - name: your-image-name 1807 ## image: your-image 1808 ## imagePullPolicy: Always 1809 ## ports: 1810 ## - name: portname 1811 ## containerPort: 1234 1812 ## 1813 sidecars: [] 1814 ## @param compactor.extraVolumes Extra volumes to add to Thanos Compactor 1815 ## 1816 extraVolumes: [] 1817 ## @param compactor.extraVolumeMounts Extra volume mounts to add to the compactor container 1818 ## 1819 extraVolumeMounts: [] 1820 ## @param compactor.podAffinityPreset Thanos Compactor pod affinity preset 1821 ## ref: https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/#inter-pod-affinity-and-anti-affinity 1822 ## 1823 podAffinityPreset: "" 1824 ## @param compactor.podAntiAffinityPreset Thanos Compactor pod anti-affinity preset. Ignored if `compactor.affinity` is set. Allowed values: `soft` or `hard` 1825 ## ref: https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/#inter-pod-affinity-and-anti-affinity 1826 ## 1827 podAntiAffinityPreset: soft 1828 ## Thanos Compactor node affinity preset 1829 ## ref: https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/#node-affinity 1830 ## 1831 nodeAffinityPreset: 1832 ## @param compactor.nodeAffinityPreset.type Thanos Compactor node affinity preset type. Ignored if `compactor.affinity` is set. Allowed values: `soft` or `hard` 1833 ## 1834 type: "" 1835 ## @param compactor.nodeAffinityPreset.key Thanos Compactor node label key to match. Ignored if `compactor.affinity` is set. 1836 ## e.g: 1837 ## key: "kubernetes.io/e2e-az-name" 1838 ## 1839 key: "" 1840 ## @param compactor.nodeAffinityPreset.values Thanos Compactor node label values to match. Ignored if `compactor.affinity` is set. 1841 ## e.g: 1842 ## values: 1843 ## - e2e-az1 1844 ## - e2e-az2 1845 ## 1846 values: [] 1847 ## @param compactor.affinity Thanos Compactor affinity for pod assignment 1848 ## ref: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/#affinity-and-anti-affinity 1849 ## Note: compactor.podAffinityPreset, compactor.podAntiAffinityPreset, and compactor.nodeAffinityPreset will be ignored when it's set 1850 ## 1851 affinity: {} 1852 ## @param compactor.nodeSelector Thanos Compactor node labels for pod assignment 1853 ## ref: https://kubernetes.io/docs/user-guide/node-selection/ 1854 ## 1855 nodeSelector: {} 1856 ## @param compactor.tolerations Thanos Compactor tolerations for pod assignment 1857 ## ref: https://kubernetes.io/docs/concepts/configuration/taint-and-toleration/ 1858 ## 1859 tolerations: [] 1860 ## @param compactor.podLabels Thanos Compactor pod labels 1861 ## ref: https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/ 1862 ## 1863 podLabels: {} 1864 ## @param compactor.podAnnotations Annotations for Thanos Compactor pods 1865 ## ref: https://kubernetes.io/docs/concepts/overview/working-with-objects/annotations/ 1866 ## 1867 podAnnotations: {} 1868 ## @param compactor.hostAliases Deployment pod host aliases 1869 ## https://kubernetes.io/docs/concepts/services-networking/add-entries-to-pod-etc-hosts-with-host-aliases/ 1870 ## 1871 hostAliases: [] 1872 ## @param compactor.lifecycleHooks for the Thanos Compactor container(s) to automate configuration before or after startup 1873 ## 1874 lifecycleHooks: {} 1875 ## @param compactor.priorityClassName Thanos Compactor priorityClassName 1876 ## ref: https://kubernetes.io/docs/concepts/configuration/pod-priority-preemption/ 1877 ## 1878 priorityClassName: "" 1879 ## @param compactor.schedulerName Name of the k8s scheduler (other than default) for Thanos Compactor pods 1880 ## ref: https://kubernetes.io/docs/tasks/administer-cluster/configure-multiple-schedulers/ 1881 ## 1882 schedulerName: "" 1883 ## @param compactor.topologySpreadConstraints Topology Spread Constraints for Thanos Compactor pods assignment spread across your cluster among failure-domains 1884 ## Ref: https://kubernetes.io/docs/concepts/workloads/pods/pod-topology-spread-constraints/#spread-constraints-for-pods 1885 ## 1886 topologySpreadConstraints: [] 1887 ## Service parameters 1888 ## 1889 service: 1890 ## @param compactor.service.type Kubernetes service type 1891 ## 1892 type: ClusterIP 1893 ## @param compactor.service.ports.http Thanos Compactor service HTTP port 1894 ## 1895 ports: 1896 http: 9090 1897 ## @param compactor.service.nodePorts.http Specify the Thanos Compactor HTTP nodePort value for the LoadBalancer and NodePort service types 1898 ## ref: https://kubernetes.io/docs/concepts/services-networking/service/#type-nodeport 1899 ## 1900 nodePorts: 1901 http: "" 1902 ## @param compactor.service.clusterIP Thanos Compactor service clusterIP IP 1903 ## e.g: 1904 ## clusterIP: None 1905 ## 1906 clusterIP: "" 1907 ## @param compactor.service.loadBalancerIP Load balancer IP if service type is `LoadBalancer` 1908 ## Set the LoadBalancer service type to internal only 1909 ## ref: https://kubernetes.io/docs/concepts/services-networking/service/#internal-load-balancer 1910 ## 1911 loadBalancerIP: "" 1912 ## @param compactor.service.loadBalancerSourceRanges Addresses that are allowed when service is LoadBalancer 1913 ## https://kubernetes.io/docs/tasks/access-application-cluster/configure-cloud-provider-firewall/#restrict-access-for-loadbalancer-service 1914 ## e.g: 1915 ## loadBalancerSourceRanges: 1916 ## - 10.10.10.0/24 1917 ## 1918 loadBalancerSourceRanges: [] 1919 ## @param compactor.service.externalTrafficPolicy Thanos Compactor service externalTrafficPolicy 1920 ## Denotes if this Service desires to route external traffic to node-local or cluster-wide endpoints 1921 ## 1922 externalTrafficPolicy: Cluster 1923 ## @param compactor.service.annotations Annotations for Thanos Compactor service 1924 ## 1925 annotations: {} 1926 ## @param compactor.service.extraPorts Extra ports to expose in the Thanos Compactor service 1927 ## 1928 extraPorts: [] 1929 ## @param compactor.service.labelSelectorsOverride Selector for Thanos Query service 1930 ## 1931 labelSelectorsOverride: {} 1932 ## @param compactor.automountServiceAccountToken Enable/disable auto mounting of the service account token only for the deployment 1933 ## 1934 automountServiceAccountToken: true 1935 ## ServiceAccount configuration 1936 ## @param compactor.serviceAccount.create Specifies whether a ServiceAccount should be created 1937 ## @param compactor.serviceAccount.name Name of the service account to use. If not set and create is true, a name is generated using the fullname template. 1938 ## @param compactor.serviceAccount.annotations Annotations for Thanos Compactor Service Account 1939 ## @param compactor.serviceAccount.automountServiceAccountToken Enable/disable auto mounting of the service account token 1940 ## DEPRECATED compactor.serviceAccount.existingServiceAccount - This value has been deprecated and will be removed in a future release, please use `serviceAccount.name` in combination with `serviceAccount.create=false` instead 1941 ## 1942 serviceAccount: 1943 create: true 1944 name: "" 1945 annotations: {} 1946 automountServiceAccountToken: true 1947 ## existingServiceAccount: "" 1948 ## Configure the ingress resource that allows you to access Thanos Query Frontend 1949 ## ref: https://kubernetes.io/docs/user-guide/ingress/ 1950 ## 1951 ingress: 1952 ## @param compactor.ingress.enabled Enable ingress controller resource 1953 ## 1954 enabled: false 1955 ## @param compactor.ingress.hostname Default host for the ingress resource 1956 ## 1957 hostname: thanos-compactor.local 1958 ## @param compactor.ingress.ingressClassName IngressClass that will be be used to implement the Ingress (Kubernetes 1.18+) 1959 ## This is supported in Kubernetes 1.18+ and required if you have more than one IngressClass marked as the default for your cluster . 1960 ## ref: https://kubernetes.io/blog/2020/04/02/improvements-to-the-ingress-api-in-kubernetes-1.18/ 1961 ## 1962 ingressClassName: "" 1963 ## @param compactor.ingress.annotations Additional annotations for the Ingress resource. To enable certificate autogeneration, place here your cert-manager annotations. 1964 ## For a full list of possible ingress annotations, please see 1965 ## ref: https://github.com/kubernetes/ingress-nginx/blob/master/docs/user-guide/nginx-configuration/annotations.md 1966 ## Use this parameter to set the required annotations for cert-manager, see 1967 ## ref: https://cert-manager.io/docs/usage/ingress/#supported-annotations 1968 ## 1969 ## e.g: 1970 ## annotations: 1971 ## kubernetes.io/ingress.class: nginx 1972 ## cert-manager.io/cluster-issuer: cluster-issuer-name 1973 ## 1974 annotations: {} 1975 ## @param compactor.ingress.extraHosts The list of additional hostnames to be covered with this ingress record. 1976 ## Most likely the hostname above will be enough, but in the event more hosts are needed, this is an array 1977 ## extraHosts: 1978 ## - name: thanos.local 1979 ## path: / 1980 ## pathType: ImplementationSpecific 1981 ## 1982 extraHosts: [] 1983 ## @param compactor.ingress.extraTls The tls configuration for additional hostnames to be covered with this ingress record. 1984 ## see: https://kubernetes.io/docs/concepts/services-networking/ingress/#tls 1985 ## extraTls: 1986 ## - hosts: 1987 ## - thanos.local 1988 ## secretName: thanos.local-tls 1989 ## 1990 extraTls: [] 1991 ## @param compactor.ingress.secrets If you're providing your own certificates, please use this to add the certificates as secrets 1992 ## key and certificate should start with -----BEGIN CERTIFICATE----- or 1993 ## -----BEGIN RSA PRIVATE KEY----- 1994 ## 1995 ## name should line up with a tlsSecret set further up 1996 ## If you're using cert-manager, this is unneeded, as it will create the secret for you if it is not set 1997 ## 1998 ## It is also possible to create and manage the certificates outside of this helm chart 1999 ## Please see README.md for more information 2000 ## e.g: 2001 ## - name: thanos.local-tls 2002 ## key: 2003 ## certificate: 2004 ## 2005 secrets: [] 2006 ## @param compactor.ingress.extraRules Additional rules to be covered with this ingress record 2007 ## ref: https://kubernetes.io/docs/concepts/services-networking/ingress/#ingress-rules 2008 ## e.g: 2009 ## extraRules: 2010 ## - host: example.local 2011 ## http: 2012 ## path: / 2013 ## backend: 2014 ## service: 2015 ## name: example-svc 2016 ## port: 2017 ## name: http 2018 ## 2019 extraRules: [] 2020 ## @param compactor.ingress.tls Enable TLS configuration for the hostname defined at `compactor.ingress.hostname` parameter 2021 ## TLS certificates will be retrieved from a TLS secret with name: `{{- printf "%s-tls" .Values.compactor.ingress.hostname }}` 2022 ## You can: 2023 ## - Use the `compactor.ingress.secrets` parameter to create this TLS secret 2024 ## - Rely on cert-manager to create it by setting the corresponding annotations 2025 ## - Rely on Helm to create self-signed certificates by setting `compactor.ingress.selfSigned=true` 2026 ## 2027 tls: false 2028 ## @param compactor.ingress.selfSigned Create a TLS secret for this ingress record using self-signed certificates generated by Helm 2029 ## 2030 selfSigned: false 2031 ## @param compactor.ingress.apiVersion Force Ingress API version (automatically detected if not set) 2032 ## 2033 apiVersion: "" 2034 ## @param compactor.ingress.path Ingress path 2035 ## 2036 path: / 2037 ## @param compactor.ingress.pathType Ingress path type 2038 ## 2039 pathType: ImplementationSpecific 2040 ## Persistence parameters 2041 ## 2042 persistence: 2043 ## @param compactor.persistence.enabled Enable data persistence using PVC(s) on Thanos Compactor pods 2044 ## 2045 enabled: true 2046 ## @param compactor.persistence.storageClass Specify the `storageClass` used to provision the volume 2047 ## If defined, storageClassName: <storageClass> 2048 ## If set to "-", storageClassName: "", which disables dynamic provisioning 2049 ## If undefined (the default) or set to null, no storageClassName spec is 2050 ## set, choosing the default provisioner. 2051 ## 2052 storageClass: "" 2053 ## @param compactor.persistence.accessModes PVC Access Modes for data volume 2054 ## 2055 accessModes: 2056 - ReadWriteOnce 2057 ## @param compactor.persistence.size PVC Storage Request for data volume 2058 ## 2059 size: 8Gi 2060 ## @param compactor.persistence.annotations Annotations for the PVC 2061 ## 2062 annotations: {} 2063 ## @param compactor.persistence.existingClaim Name of an existing PVC to use 2064 ## If defined, PVC must be created manually before volume will be bound 2065 ## 2066 existingClaim: "" 2067 2068 ## @section Thanos Store Gateway parameters 2069 2070 storegateway: 2071 ## @param storegateway.enabled Enable/disable Thanos Store Gateway component 2072 ## 2073 enabled: false 2074 ## @param storegateway.logLevel Thanos Store Gateway log level 2075 ## 2076 logLevel: info 2077 ## @param storegateway.logFormat Thanos Store Gateway log format 2078 ## 2079 logFormat: logfmt 2080 ## @param storegateway.config Thanos Store Gateway configuration 2081 ## Specify content for config.yml 2082 ## 2083 config: "" 2084 ## @param storegateway.existingConfigmap Name of existing ConfigMap with Thanos Store Gateway configuration 2085 ## NOTE: This will override storegateway.config 2086 ## 2087 existingConfigmap: "" 2088 ## Thanos Store Gateway GRPC parameters 2089 ## ref: https://github.com/thanos-io/thanos/blob/master/docs/components/store.md#flags 2090 ## 2091 grpc: 2092 ## GRPC server side 2093 ## 2094 server: 2095 ## TLS configuration 2096 ## @param storegateway.grpc.server.tls.enabled Enable TLS encryption in the GRPC server 2097 ## @param storegateway.grpc.server.tls.autoGenerated Create self-signed TLS certificates. Currently only supports PEM certificates 2098 ## @param storegateway.grpc.server.tls.cert TLS Certificate for GRPC server - ignored if existingSecret is provided 2099 ## @param storegateway.grpc.server.tls.key TLS Key for GRPC server - ignored if existingSecret is provided 2100 ## @param storegateway.grpc.server.tls.ca TLS CA to verify clients against - ignored if existingSecret is provided 2101 ## @param storegateway.grpc.server.tls.existingSecret Existing secret containing your own TLS certificates 2102 ## e.g: 2103 ## existingSecret: 2104 ## name: foo 2105 ## keyMapping: 2106 ## ca-cert: ca.pem 2107 ## tls-cert: cert.pem 2108 ## tls-key: key.pem 2109 ## 2110 tls: 2111 enabled: false 2112 autoGenerated: false 2113 cert: "" 2114 key: "" 2115 ca: "" 2116 existingSecret: {} 2117 ## @param storegateway.extraEnvVars Extra environment variables for Thanos Store Gateway container 2118 ## e.g: 2119 ## extraEnvVars: 2120 ## - name: FOO 2121 ## value: "bar" 2122 ## 2123 extraEnvVars: [] 2124 ## @param storegateway.extraEnvVarsCM Name of existing ConfigMap containing extra env vars for Thanos Store Gateway nodes 2125 ## 2126 extraEnvVarsCM: "" 2127 ## @param storegateway.extraEnvVarsSecret Name of existing Secret containing extra env vars for Thanos Store Gateway nodes 2128 ## 2129 extraEnvVarsSecret: "" 2130 ## @param storegateway.extraFlags Extra Flags to passed to Thanos Store Gateway 2131 ## 2132 extraFlags: [] 2133 ## @param storegateway.command Override default container command (useful when using custom images) 2134 ## 2135 command: [] 2136 ## @param storegateway.args Override default container args (useful when using custom images) 2137 ## 2138 args: [] 2139 ## @param storegateway.replicaCount Number of Thanos Store Gateway replicas to deploy 2140 ## 2141 replicaCount: 1 2142 ## @param storegateway.updateStrategy.type Update strategy type for Thanos Store Gateway replicas 2143 ## 2144 updateStrategy: 2145 type: RollingUpdate 2146 ## @param storegateway.podManagementPolicy Statefulset Pod management policy: OrderedReady (default) or Parallel 2147 ## ref: https://kubernetes.io/docs/concepts/workloads/controllers/statefulset/#pod-management-policies 2148 ## 2149 podManagementPolicy: OrderedReady 2150 ## K8s Pod Security Context for Thanos Store Gateway pods 2151 ## https://kubernetes.io/docs/tasks/configure-pod-container/security-context/ 2152 ## @param storegateway.podSecurityContext.enabled Enable security context for the Thanos Store Gateway pods 2153 ## @param storegateway.podSecurityContext.fsGroup Group ID for the filesystem used by Thanos Store Gateway pods 2154 ## 2155 podSecurityContext: 2156 enabled: true 2157 fsGroup: 1001 2158 ## K8s containers' Security Context for Thanos Store Gateway containers 2159 ## ref: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/#set-the-security-context-for-a-container 2160 ## @param storegateway.containerSecurityContext.enabled Enable container security context for the Thanos Store Gateway containers 2161 ## @param storegateway.containerSecurityContext.runAsUser User ID for the service user running the Thanos Store Gateway containers 2162 ## @param storegateway.containerSecurityContext.runAsNonRoot Force the Thanos Store Gateway containers to run as a non root user 2163 ## @param storegateway.containerSecurityContext.allowPrivilegeEscalation Switch privilegeEscalation possibility on or off for Thanos Store Gateway containers 2164 ## @param storegateway.containerSecurityContext.readOnlyRootFilesystem mount / (root) as a readonly filesystem on Thanos Store Gateway containers 2165 ## 2166 containerSecurityContext: 2167 enabled: true 2168 runAsUser: 1001 2169 runAsNonRoot: true 2170 allowPrivilegeEscalation: false 2171 readOnlyRootFilesystem: true 2172 ## Thanos Store Gateway containers' resource requests and limits 2173 ## ref: https://kubernetes.io/docs/user-guide/compute-resources/ 2174 ## @param storegateway.resources.limits The resources limits for the Thanos Store Gateway container 2175 ## @param storegateway.resources.requests The requested resources for the Thanos Store Gateway container 2176 ## 2177 resources: 2178 limits: {} 2179 requests: {} 2180 ## Configure extra options for Thanos Store Gateway containers' liveness and readiness probes 2181 ## ref: https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-probes/#configure-probes 2182 ## @param storegateway.livenessProbe.enabled Enable livenessProbe on Thanos Store Gateway containers 2183 ## @param storegateway.livenessProbe.initialDelaySeconds Initial delay seconds for livenessProbe 2184 ## @param storegateway.livenessProbe.periodSeconds Period seconds for livenessProbe 2185 ## @param storegateway.livenessProbe.timeoutSeconds Timeout seconds for livenessProbe 2186 ## @param storegateway.livenessProbe.failureThreshold Failure threshold for livenessProbe 2187 ## @param storegateway.livenessProbe.successThreshold Success threshold for livenessProbe 2188 ## 2189 livenessProbe: 2190 enabled: true 2191 initialDelaySeconds: 30 2192 timeoutSeconds: 30 2193 periodSeconds: 10 2194 successThreshold: 1 2195 failureThreshold: 6 2196 ## @param storegateway.readinessProbe.enabled Enable readinessProbe on Thanos Store Gateway containers 2197 ## @param storegateway.readinessProbe.initialDelaySeconds Initial delay seconds for readinessProbe 2198 ## @param storegateway.readinessProbe.periodSeconds Period seconds for readinessProbe 2199 ## @param storegateway.readinessProbe.timeoutSeconds Timeout seconds for readinessProbe 2200 ## @param storegateway.readinessProbe.failureThreshold Failure threshold for readinessProbe 2201 ## @param storegateway.readinessProbe.successThreshold Success threshold for readinessProbe 2202 ## 2203 readinessProbe: 2204 enabled: true 2205 initialDelaySeconds: 30 2206 timeoutSeconds: 30 2207 periodSeconds: 10 2208 successThreshold: 1 2209 failureThreshold: 6 2210 ## @param storegateway.startupProbe.enabled Enable startupProbe on Thanos Store Gateway containers 2211 ## @param storegateway.startupProbe.initialDelaySeconds Initial delay seconds for startupProbe 2212 ## @param storegateway.startupProbe.periodSeconds Period seconds for startupProbe 2213 ## @param storegateway.startupProbe.timeoutSeconds Timeout seconds for startupProbe 2214 ## @param storegateway.startupProbe.failureThreshold Failure threshold for startupProbe 2215 ## @param storegateway.startupProbe.successThreshold Success threshold for startupProbe 2216 ## 2217 startupProbe: 2218 enabled: false 2219 initialDelaySeconds: 5 2220 periodSeconds: 5 2221 timeoutSeconds: 1 2222 failureThreshold: 15 2223 successThreshold: 1 2224 ## @param storegateway.customLivenessProbe Custom livenessProbe that overrides the default one 2225 ## 2226 customLivenessProbe: {} 2227 ## @param storegateway.customReadinessProbe Custom readinessProbe that overrides the default one 2228 ## 2229 customReadinessProbe: {} 2230 ## @param storegateway.customStartupProbe Custom startupProbe that overrides the default one 2231 ## 2232 customStartupProbe: {} 2233 ## @param storegateway.initContainers Add additional init containers to the Thanos Store Gateway pods 2234 ## ref: https://kubernetes.io/docs/concepts/workloads/pods/init-containers/ 2235 ## e.g: 2236 ## initContainers: 2237 ## - name: your-image-name 2238 ## image: your-image 2239 ## imagePullPolicy: Always 2240 ## command: ['sh', '-c', 'echo "hello world"'] 2241 ## 2242 initContainers: [] 2243 ## @param storegateway.sidecars Extra containers running as sidecars to Thanos Store Gateway pods 2244 ## e.g: 2245 ## sidecars: 2246 ## - name: your-image-name 2247 ## image: your-image 2248 ## imagePullPolicy: Always 2249 ## ports: 2250 ## - name: portname 2251 ## containerPort: 1234 2252 ## 2253 sidecars: [] 2254 ## @param storegateway.extraVolumes Extra volumes to add to Thanos Store Gateway 2255 ## 2256 extraVolumes: [] 2257 ## @param storegateway.extraVolumeMounts Extra volume mounts to add to the storegateway container 2258 ## 2259 extraVolumeMounts: [] 2260 ## @param storegateway.podAffinityPreset Thanos Store Gateway pod affinity preset 2261 ## ref: https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/#inter-pod-affinity-and-anti-affinity 2262 ## 2263 podAffinityPreset: "" 2264 ## @param storegateway.podAntiAffinityPreset Thanos Store Gateway pod anti-affinity preset. Ignored if `storegateway.affinity` is set. Allowed values: `soft` or `hard` 2265 ## ref: https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/#inter-pod-affinity-and-anti-affinity 2266 ## 2267 podAntiAffinityPreset: soft 2268 ## Thanos Store Gateway node affinity preset 2269 ## ref: https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/#node-affinity 2270 ## 2271 nodeAffinityPreset: 2272 ## @param storegateway.nodeAffinityPreset.type Thanos Store Gateway node affinity preset type. Ignored if `storegateway.affinity` is set. Allowed values: `soft` or `hard` 2273 ## 2274 type: "" 2275 ## @param storegateway.nodeAffinityPreset.key Thanos Store Gateway node label key to match. Ignored if `storegateway.affinity` is set. 2276 ## e.g: 2277 ## key: "kubernetes.io/e2e-az-name" 2278 ## 2279 key: "" 2280 ## @param storegateway.nodeAffinityPreset.values Thanos Store Gateway node label values to match. Ignored if `storegateway.affinity` is set. 2281 ## e.g: 2282 ## values: 2283 ## - e2e-az1 2284 ## - e2e-az2 2285 ## 2286 values: [] 2287 ## @param storegateway.affinity Thanos Store Gateway affinity for pod assignment 2288 ## ref: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/#affinity-and-anti-affinity 2289 ## Note: storegateway.podAffinityPreset, storegateway.podAntiAffinityPreset, and storegateway.nodeAffinityPreset will be ignored when it's set 2290 ## 2291 affinity: {} 2292 ## @param storegateway.nodeSelector Thanos Store Gateway node labels for pod assignment 2293 ## ref: https://kubernetes.io/docs/user-guide/node-selection/ 2294 ## 2295 nodeSelector: {} 2296 ## @param storegateway.tolerations Thanos Store Gateway tolerations for pod assignment 2297 ## ref: https://kubernetes.io/docs/concepts/configuration/taint-and-toleration/ 2298 ## 2299 tolerations: [] 2300 ## @param storegateway.podLabels Thanos Store Gateway pod labels 2301 ## ref: https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/ 2302 ## 2303 podLabels: {} 2304 ## @param storegateway.podAnnotations Annotations for Thanos Store Gateway pods 2305 ## ref: https://kubernetes.io/docs/concepts/overview/working-with-objects/annotations/ 2306 ## 2307 podAnnotations: {} 2308 ## @param storegateway.hostAliases Deployment pod host aliases 2309 ## https://kubernetes.io/docs/concepts/services-networking/add-entries-to-pod-etc-hosts-with-host-aliases/ 2310 ## 2311 hostAliases: [] 2312 ## @param storegateway.lifecycleHooks for the Thanos Store Gateway container(s) to automate configuration before or after startup 2313 ## 2314 lifecycleHooks: {} 2315 ## @param storegateway.priorityClassName Thanos Store Gateway priorityClassName 2316 ## ref: https://kubernetes.io/docs/concepts/configuration/pod-priority-preemption/ 2317 ## 2318 priorityClassName: "" 2319 ## @param storegateway.topologySpreadConstraints Topology Spread Constraints for Thanos Store Gateway pods assignment spread across your cluster among failure-domains 2320 ## Ref: https://kubernetes.io/docs/concepts/workloads/pods/pod-topology-spread-constraints/#spread-constraints-for-pods 2321 ## 2322 topologySpreadConstraints: [] 2323 ## @param storegateway.schedulerName Name of the k8s scheduler (other than default) for Thanos Store Gateway pods 2324 ## ref: https://kubernetes.io/docs/tasks/administer-cluster/configure-multiple-schedulers/ 2325 ## 2326 schedulerName: "" 2327 ## Service parameters 2328 ## 2329 service: 2330 ## @param storegateway.service.type Kubernetes service type 2331 ## 2332 type: ClusterIP 2333 ## @param storegateway.service.ports.http Thanos Store Gateway service HTTP port 2334 ## @param storegateway.service.ports.grpc Thanos Store Gateway service GRPC port 2335 ## 2336 ports: 2337 http: 9090 2338 grpc: 10901 2339 ## @param storegateway.service.nodePorts.http Specify the Thanos Store Gateway HTTP nodePort value for the LoadBalancer and NodePort service types 2340 ## @param storegateway.service.nodePorts.grpc Specify the Thanos Store Gateway GRPC nodePort value for the LoadBalancer and NodePort service types 2341 ## ref: https://kubernetes.io/docs/concepts/services-networking/service/#type-nodeport 2342 ## 2343 nodePorts: 2344 http: "" 2345 grpc: "" 2346 ## @param storegateway.service.clusterIP Thanos Store Gateway service clusterIP IP 2347 ## e.g: 2348 ## clusterIP: None 2349 ## 2350 clusterIP: "" 2351 ## @param storegateway.service.loadBalancerIP Load balancer IP if service type is `LoadBalancer` 2352 ## Set the LoadBalancer service type to internal only 2353 ## ref: https://kubernetes.io/docs/concepts/services-networking/service/#internal-load-balancer 2354 ## 2355 loadBalancerIP: "" 2356 ## @param storegateway.service.loadBalancerSourceRanges Addresses that are allowed when service is LoadBalancer 2357 ## https://kubernetes.io/docs/tasks/access-application-cluster/configure-cloud-provider-firewall/#restrict-access-for-loadbalancer-service 2358 ## e.g: 2359 ## loadBalancerSourceRanges: 2360 ## - 10.10.10.0/24 2361 ## 2362 loadBalancerSourceRanges: [] 2363 ## @param storegateway.service.externalTrafficPolicy Thanos Store Gateway service externalTrafficPolicy 2364 ## Denotes if this Service desires to route external traffic to node-local or cluster-wide endpoints 2365 ## 2366 externalTrafficPolicy: Cluster 2367 ## @param storegateway.service.annotations Annotations for Thanos Store Gateway service 2368 ## 2369 annotations: {} 2370 ## @param storegateway.service.extraPorts Extra ports to expose in the Thanos Store Gateway service 2371 ## 2372 extraPorts: [] 2373 ## @param storegateway.service.labelSelectorsOverride Selector for Thanos Query service 2374 ## 2375 labelSelectorsOverride: {} 2376 ## @param storegateway.service.additionalHeadless Additional Headless service 2377 ## 2378 additionalHeadless: false 2379 ## Persistence parameters 2380 ## 2381 persistence: 2382 ## @param storegateway.persistence.enabled Enable data persistence using PVC(s) on Thanos Store Gateway pods 2383 ## 2384 enabled: true 2385 ## @param storegateway.persistence.storageClass Specify the `storageClass` used to provision the volume 2386 ## If defined, storageClassName: <storageClass> 2387 ## If set to "-", storageClassName: "", which disables dynamic provisioning 2388 ## If undefined (the default) or set to null, no storageClassName spec is 2389 ## set, choosing the default provisioner. 2390 ## 2391 storageClass: "" 2392 ## @param storegateway.persistence.accessModes PVC Access Modes for data volume 2393 ## 2394 accessModes: 2395 - ReadWriteOnce 2396 ## @param storegateway.persistence.size PVC Storage Request for data volume 2397 ## 2398 size: 8Gi 2399 ## @param storegateway.persistence.labels Labels for the PVC 2400 ## 2401 labels: {} 2402 ## @param storegateway.persistence.annotations Annotations for the PVC 2403 ## 2404 annotations: {} 2405 ## @param storegateway.persistence.existingClaim Name of an existing PVC to use 2406 ## If defined, PVC must be created manually before volume will be bound 2407 ## 2408 existingClaim: "" 2409 ## @param storegateway.automountServiceAccountToken Enable/disable auto mounting of the service account token only for the sts 2410 ## 2411 automountServiceAccountToken: true 2412 ## ServiceAccount configuration 2413 ## @param storegateway.serviceAccount.create Specifies whether a ServiceAccount should be created 2414 ## @param storegateway.serviceAccount.name Name of the service account to use. If not set and create is true, a name is generated using the fullname template. 2415 ## @param storegateway.serviceAccount.annotations Annotations for Thanos Store Gateway Service Account 2416 ## @param storegateway.serviceAccount.automountServiceAccountToken Enable/disable auto mounting of the service account token 2417 ## DEPRECATED storegateway.serviceAccount.existingServiceAccount - This value has been deprecated and will be removed in a future release, please use `serviceAccount.name` in combination with `serviceAccount.create=false` instead 2418 ## 2419 serviceAccount: 2420 create: true 2421 name: "" 2422 annotations: {} 2423 automountServiceAccountToken: true 2424 ## existingServiceAccount: "" 2425 ## Thanos Store Gateway Autoscaling configuration 2426 ## ref: https://kubernetes.io/docs/tasks/run-application/horizontal-pod-autoscale/ 2427 ## @param storegateway.autoscaling.enabled Enable autoscaling for Thanos Store Gateway 2428 ## @param storegateway.autoscaling.minReplicas Minimum number of Thanos Store Gateway replicas 2429 ## @param storegateway.autoscaling.maxReplicas Maximum number of Thanos Store Gateway replicas 2430 ## @param storegateway.autoscaling.targetCPU Target CPU utilization percentage 2431 ## @param storegateway.autoscaling.targetMemory Target Memory utilization percentage 2432 ## 2433 autoscaling: 2434 enabled: false 2435 minReplicas: "" 2436 maxReplicas: "" 2437 targetCPU: "" 2438 targetMemory: "" 2439 ## Thanos Store Gateway Pod Disruption Budget configuration 2440 ## ref: https://kubernetes.io/docs/tasks/run-application/configure-pdb 2441 ## @param storegateway.pdb.create Enable/disable a Pod Disruption Budget creation for Thanos Store Gateway 2442 ## @param storegateway.pdb.minAvailable Minimum number/percentage of pods that should remain scheduled 2443 ## @param storegateway.pdb.maxUnavailable Maximum number/percentage of pods that may be made unavailable 2444 ## 2445 pdb: 2446 create: false 2447 minAvailable: 1 2448 maxUnavailable: "" 2449 ## Configure the ingress resource that allows you to access Thanos Query Frontend 2450 ## ref: https://kubernetes.io/docs/user-guide/ingress/ 2451 ## 2452 ingress: 2453 ## @param storegateway.ingress.enabled Enable ingress controller resource 2454 ## 2455 enabled: false 2456 ## @param storegateway.ingress.hostname Default host for the ingress resource 2457 ## 2458 hostname: thanos-storegateway.local 2459 ## @param storegateway.ingress.ingressClassName IngressClass that will be be used to implement the Ingress (Kubernetes 1.18+) 2460 ## This is supported in Kubernetes 1.18+ and required if you have more than one IngressClass marked as the default for your cluster . 2461 ## ref: https://kubernetes.io/blog/2020/04/02/improvements-to-the-ingress-api-in-kubernetes-1.18/ 2462 ## 2463 ingressClassName: "" 2464 ## @param storegateway.ingress.annotations Additional annotations for the Ingress resource. To enable certificate autogeneration, place here your cert-manager annotations. 2465 ## For a full list of possible ingress annotations, please see 2466 ## ref: https://github.com/kubernetes/ingress-nginx/blob/master/docs/user-guide/nginx-configuration/annotations.md 2467 ## Use this parameter to set the required annotations for cert-manager, see 2468 ## ref: https://cert-manager.io/docs/usage/ingress/#supported-annotations 2469 ## 2470 ## e.g: 2471 ## annotations: 2472 ## kubernetes.io/ingress.class: nginx 2473 ## cert-manager.io/cluster-issuer: cluster-issuer-name 2474 ## 2475 annotations: {} 2476 ## @param storegateway.ingress.extraHosts The list of additional hostnames to be covered with this ingress record. 2477 ## Most likely the hostname above will be enough, but in the event more hosts are needed, this is an array 2478 ## extraHosts: 2479 ## - name: thanos.local 2480 ## path: / 2481 ## pathType: ImplementationSpecific 2482 ## 2483 extraHosts: [] 2484 ## @param storegateway.ingress.extraTls The tls configuration for additional hostnames to be covered with this ingress record. 2485 ## see: https://kubernetes.io/docs/concepts/services-networking/ingress/#tls 2486 ## extraTls: 2487 ## - hosts: 2488 ## - thanos.local 2489 ## secretName: thanos.local-tls 2490 ## 2491 extraTls: [] 2492 ## @param storegateway.ingress.secrets If you're providing your own certificates, please use this to add the certificates as secrets 2493 ## key and certificate should start with -----BEGIN CERTIFICATE----- or 2494 ## -----BEGIN RSA PRIVATE KEY----- 2495 ## 2496 ## name should line up with a tlsSecret set further up 2497 ## If you're using cert-manager, this is unneeded, as it will create the secret for you if it is not set 2498 ## 2499 ## It is also possible to create and manage the certificates outside of this helm chart 2500 ## Please see README.md for more information 2501 ## e.g: 2502 ## - name: thanos.local-tls 2503 ## key: 2504 ## certificate: 2505 ## 2506 secrets: [] 2507 ## @param storegateway.ingress.extraRules Additional rules to be covered with this ingress record 2508 ## ref: https://kubernetes.io/docs/concepts/services-networking/ingress/#ingress-rules 2509 ## e.g: 2510 ## extraRules: 2511 ## - host: example.local 2512 ## http: 2513 ## path: / 2514 ## backend: 2515 ## service: 2516 ## name: example-svc 2517 ## port: 2518 ## name: http 2519 ## 2520 extraRules: [] 2521 ## @param storegateway.ingress.tls Enable TLS configuration for the hostname defined at `storegateway.ingress.hostname` parameter 2522 ## TLS certificates will be retrieved from a TLS secret with name: `{{- printf "%s-tls" .Values.storegateway.ingress.hostname }}` 2523 ## You can: 2524 ## - Use the `storegateway.ingress.secrets` parameter to create this TLS secret 2525 ## - Rely on cert-manager to create it by setting the corresponding annotations 2526 ## - Rely on Helm to create self-signed certificates by setting `storegateway.ingress.selfSigned=true` 2527 ## 2528 tls: false 2529 ## @param storegateway.ingress.selfSigned Create a TLS secret for this ingress record using self-signed certificates generated by Helm 2530 ## 2531 selfSigned: false 2532 ## @param storegateway.ingress.apiVersion Force Ingress API version (automatically detected if not set) 2533 ## 2534 apiVersion: "" 2535 ## @param storegateway.ingress.path Ingress path 2536 ## 2537 path: / 2538 ## @param storegateway.ingress.pathType Ingress path type 2539 ## 2540 pathType: ImplementationSpecific 2541 ## Create an ingress object for the GRPC service. This requires an HTTP/2 2542 ## capable Ingress controller (eg. traefik using AWS NLB). Example annotations 2543 ## - ingress.kubernetes.io/protocol: h2c 2544 ## - service.beta.kubernetes.io/aws-load-balancer-type: nlb 2545 ## - service.beta.kubernetes.io/aws-load-balancer-backend-protocol: tcp 2546 ## For more information see https://kubernetes.io/docs/concepts/cluster-administration/cloud-providers/ 2547 ## and also the documentation for your ingress controller. 2548 ## 2549 ## The options that are accepted are identical to the HTTP one listed above 2550 ## 2551 grpc: 2552 ## @param storegateway.ingress.grpc.enabled Enable ingress controller resource (GRPC) 2553 ## 2554 enabled: false 2555 ## @param storegateway.ingress.grpc.hostname Default host for the ingress resource (GRPC) 2556 ## 2557 hostname: thanos-grpc.local 2558 ## @param storegateway.ingress.grpc.ingressClassName IngressClass that will be be used to implement the Ingress (Kubernetes 1.18+) 2559 ## This is supported in Kubernetes 1.18+ and required if you have more than one IngressClass marked as the default for your cluster . 2560 ## ref: https://kubernetes.io/blog/2020/04/02/improvements-to-the-ingress-api-in-kubernetes-1.18/ 2561 ## 2562 ingressClassName: "" 2563 ## @param storegateway.ingress.grpc.annotations Additional annotations for the Ingress resource (GRPC). To enable certificate autogeneration, place here your cert-manager annotations. 2564 ## For a full list of possible ingress annotations, please see 2565 ## ref: https://github.com/kubernetes/ingress-nginx/blob/master/docs/user-guide/nginx-configuration/annotations.md 2566 ## Use this parameter to set the required annotations for cert-manager, see 2567 ## ref: https://cert-manager.io/docs/usage/ingress/#supported-annotations 2568 ## 2569 ## Examples: 2570 ## kubernetes.io/ingress.class: nginx 2571 ## cert-manager.io/cluster-issuer: cluster-issuer-name 2572 ## 2573 annotations: {} 2574 ## @param storegateway.ingress.grpc.extraHosts The list of additional hostnames to be covered with this ingress record. 2575 ## Most likely the hostname above will be enough, but in the event more hosts are needed, this is an array 2576 ## extraHosts: 2577 ## - name: thanos-grpc.local 2578 ## path: / 2579 ## 2580 extraHosts: [] 2581 ## @param storegateway.ingress.grpc.extraTls The tls configuration for additional hostnames to be covered with this ingress record. 2582 ## see: https://kubernetes.io/docs/concepts/services-networking/ingress/#tls 2583 ## extraTls: 2584 ## - hosts: 2585 ## - thanos-grpc.local 2586 ## secretName: thanos-grpc.local-tls 2587 ## 2588 extraTls: [] 2589 ## @param storegateway.ingress.grpc.secrets If you're providing your own certificates, please use this to add the certificates as secrets 2590 ## key and certificate should start with -----BEGIN CERTIFICATE----- or 2591 ## -----BEGIN RSA PRIVATE KEY----- 2592 ## 2593 ## name should line up with a tlsSecret set further up 2594 ## If you're using cert-manager, this is unneeded, as it will create the secret for you if it is not set 2595 ## 2596 ## It is also possible to create and manage the certificates outside of this helm chart 2597 ## Please see README.md for more information 2598 ## e.g: 2599 ## - name: thanos-grpc.local-tls 2600 ## key: 2601 ## certificate: 2602 ## 2603 secrets: [] 2604 ## @param storegateway.ingress.grpc.extraRules Additional rules to be covered with this ingress record 2605 ## ref: https://kubernetes.io/docs/concepts/services-networking/ingress/#ingress-rules 2606 ## e.g: 2607 ## extraRules: 2608 ## - host: example.local 2609 ## http: 2610 ## path: / 2611 ## backend: 2612 ## service: 2613 ## name: example-svc 2614 ## port: 2615 ## name: http 2616 ## 2617 extraRules: [] 2618 ## @param storegateway.ingress.grpc.tls Enable TLS configuration for the hostname defined at `storegateway.ingress.grpc.hostname` parameter 2619 ## TLS certificates will be retrieved from a TLS secret with name: `{{- printf "%s-tls" .Values.storegateway.ingress.grpc.hostname }}` 2620 ## You can: 2621 ## - Use the `storegateway.ingress.grpc.secrets` parameter to create this TLS secret 2622 ## - Rely on cert-manager to create it by setting the corresponding annotations 2623 ## - Rely on Helm to create self-signed certificates by setting `storegateway.ingress.grpc.selfSigned=true` 2624 ## 2625 tls: false 2626 ## @param storegateway.ingress.grpc.selfSigned Create a TLS secret for this ingress record using self-signed certificates generated by Helm 2627 ## 2628 selfSigned: false 2629 ## @param storegateway.ingress.grpc.apiVersion Override API Version (automatically detected if not set) 2630 ## 2631 apiVersion: "" 2632 ## @param storegateway.ingress.grpc.path Ingress Path 2633 ## 2634 path: / 2635 ## @param storegateway.ingress.grpc.pathType Ingress Path type 2636 ## 2637 pathType: ImplementationSpecific 2638 ## Sharded parameters 2639 ## @param storegateway.sharded.enabled Enable sharding for Thanos Store Gateway 2640 ## @param storegateway.sharded.hashPartitioning.shards Setting hashPartitioning will create multiple store statefulsets based on the number of shards specified using the hashmod of the blocks 2641 ## @param storegateway.sharded.timePartitioning [array] Setting time timePartitioning will create multiple store deployments based on the number of partitions 2642 ## @param storegateway.sharded.service.clusterIPs Array of cluster IPs for each Store Gateway service. Length must be the same as the number of shards 2643 ## e.g: 2644 ## clusterIPs: 2645 ## - X.X.X.X 2646 ## - Y.Y.Y.Y 2647 ## @param storegateway.sharded.service.loadBalancerIPs Array of load balancer IPs for each Store Gateway service. Length must be the same as the number of shards 2648 ## e.g: 2649 ## loadBalancerIPs: 2650 ## - X.X.X.X 2651 ## - Y.Y.Y.Y 2652 ## @param storegateway.sharded.service.http.nodePorts Array of http node ports used for Store Gateway service. Length must be the same as the number of shards 2653 ## e.g: 2654 ## nodePorts: 2655 ## - 30001 2656 ## - 30002 2657 ## @param storegateway.sharded.service.grpc.nodePorts Array of grpc node ports used for Store Gateway service. Length must be the same as the number of shards 2658 ## e.g: 2659 ## nodePorts: 2660 ## - 30011 2661 ## - 30012 2662 ## 2663 sharded: 2664 enabled: false 2665 hashPartitioning: 2666 shards: "" 2667 timePartitioning: 2668 - min: "" 2669 max: "" 2670 service: 2671 clusterIPs: [] 2672 loadBalancerIPs: [] 2673 http: 2674 nodePorts: [] 2675 grpc: 2676 nodePorts: [] 2677 2678 ## @section Thanos Ruler parameters 2679 2680 ruler: 2681 ## @param ruler.enabled Enable/disable Thanos Ruler component 2682 ## 2683 enabled: false 2684 ## @param ruler.logLevel Thanos Ruler log level 2685 ## 2686 logLevel: info 2687 ## @param ruler.logFormat Thanos Ruler log format 2688 ## 2689 logFormat: logfmt 2690 ## @param ruler.replicaLabel Label to treat as a replica indicator along which data is de-duplicated 2691 ## 2692 replicaLabel: replica 2693 ## @param ruler.dnsDiscovery.enabled Dynamically configure Query APIs using DNS discovery 2694 ## 2695 dnsDiscovery: 2696 enabled: true 2697 ## @param ruler.alertmanagers Alert managers URLs array 2698 ## NOTE: This is only used when ruler.alertmanagersConfig is not set 2699 ## 2700 alertmanagers: [] 2701 ## @param ruler.alertmanagersConfig Alert managers configuration 2702 ## NOTE: This is only used when ruler.alertmanagers is not set 2703 ## ref: https://thanos.io/tip/components/rule.md/#alertmanager 2704 ## e.g: 2705 ## alertmanagersConfig: 2706 ## alertmanagers: 2707 ## - http_config: 2708 ## basic_auth: 2709 ## username: some_user 2710 ## password: some_pass 2711 ## static_configs: 2712 ## - alertmanager.thanos.io 2713 ## scheme: http 2714 ## timeout: 10s 2715 ## api_version: v2 2716 ## 2717 alertmanagersConfig: "" 2718 ## @param ruler.evalInterval The default evaluation interval to use 2719 ## 2720 evalInterval: 1m 2721 ## @param ruler.clusterName Used to set the 'ruler_cluster' label 2722 ## 2723 clusterName: "" 2724 ## @param ruler.config Ruler configuration 2725 ## Specify content for ruler.yml 2726 ## 2727 config: "" 2728 ## @param ruler.existingConfigmap Name of existing ConfigMap with Ruler configuration 2729 ## NOTE: This will override ruler.config 2730 ## 2731 existingConfigmap: "" 2732 ## @param ruler.extraEnvVars Extra environment variables for Thanos Ruler container 2733 ## e.g: 2734 ## extraEnvVars: 2735 ## - name: FOO 2736 ## value: "bar" 2737 ## 2738 extraEnvVars: [] 2739 ## @param ruler.extraEnvVarsCM Name of existing ConfigMap containing extra env vars for Thanos Ruler nodes 2740 ## 2741 extraEnvVarsCM: "" 2742 ## @param ruler.extraEnvVarsSecret Name of existing Secret containing extra env vars for Thanos Ruler nodes 2743 ## 2744 extraEnvVarsSecret: "" 2745 ## @param ruler.extraFlags Extra Flags to passed to Thanos Ruler 2746 ## 2747 extraFlags: [] 2748 ## @param ruler.command Override default container command (useful when using custom images) 2749 ## 2750 command: [] 2751 ## @param ruler.args Override default container args (useful when using custom images) 2752 ## 2753 args: [] 2754 ## @param ruler.replicaCount Number of Thanos Ruler replicas to deploy 2755 ## 2756 replicaCount: 1 2757 ## @param ruler.updateStrategy.type Update strategy type for Thanos Ruler replicas 2758 ## 2759 updateStrategy: 2760 type: RollingUpdate 2761 ## @param ruler.podManagementPolicy Statefulset Pod Management Policy Type 2762 ## ref: https://kubernetes.io/docs/concepts/workloads/controllers/statefulset/#pod-management-policies 2763 ## 2764 podManagementPolicy: OrderedReady 2765 ## K8s Pod Security Context for Thanos Ruler pods 2766 ## https://kubernetes.io/docs/tasks/configure-pod-container/security-context/ 2767 ## @param ruler.podSecurityContext.enabled Enable security context for the Thanos Ruler pods 2768 ## @param ruler.podSecurityContext.fsGroup Group ID for the filesystem used by Thanos Ruler pods 2769 ## 2770 podSecurityContext: 2771 enabled: true 2772 fsGroup: 1001 2773 ## K8s containers' Security Context for Thanos Ruler containers 2774 ## ref: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/#set-the-security-context-for-a-container 2775 ## @param ruler.containerSecurityContext.enabled Enable container security context for the Thanos Ruler containers 2776 ## @param ruler.containerSecurityContext.runAsUser User ID for the service user running the Thanos Ruler containers 2777 ## @param ruler.containerSecurityContext.runAsNonRoot Force the Thanos Ruler containers to run as a non root user 2778 ## @param ruler.containerSecurityContext.allowPrivilegeEscalation Switch privilegeEscalation possibility on or off for Thanos Ruler containers 2779 ## @param ruler.containerSecurityContext.readOnlyRootFilesystem mount / (root) as a readonly filesystem on Thanos Ruler containers 2780 ## 2781 containerSecurityContext: 2782 enabled: true 2783 runAsUser: 1001 2784 runAsNonRoot: true 2785 allowPrivilegeEscalation: false 2786 readOnlyRootFilesystem: true 2787 ## Thanos Ruler containers' resource requests and limits 2788 ## ref: https://kubernetes.io/docs/user-guide/compute-resources/ 2789 ## @param ruler.resources.limits The resources limits for the Thanos Ruler container 2790 ## @param ruler.resources.requests The requested resources for the Thanos Ruler container 2791 ## 2792 resources: 2793 limits: {} 2794 requests: {} 2795 ## Configure extra options for Thanos Ruler containers' liveness and readiness probes 2796 ## ref: https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-probes/#configure-probes 2797 ## @param ruler.livenessProbe.enabled Enable livenessProbe on Thanos Ruler containers 2798 ## @param ruler.livenessProbe.initialDelaySeconds Initial delay seconds for livenessProbe 2799 ## @param ruler.livenessProbe.periodSeconds Period seconds for livenessProbe 2800 ## @param ruler.livenessProbe.timeoutSeconds Timeout seconds for livenessProbe 2801 ## @param ruler.livenessProbe.failureThreshold Failure threshold for livenessProbe 2802 ## @param ruler.livenessProbe.successThreshold Success threshold for livenessProbe 2803 ## 2804 livenessProbe: 2805 enabled: true 2806 initialDelaySeconds: 30 2807 timeoutSeconds: 30 2808 periodSeconds: 10 2809 successThreshold: 1 2810 failureThreshold: 6 2811 ## @param ruler.readinessProbe.enabled Enable readinessProbe on Thanos Ruler containers 2812 ## @param ruler.readinessProbe.initialDelaySeconds Initial delay seconds for readinessProbe 2813 ## @param ruler.readinessProbe.periodSeconds Period seconds for readinessProbe 2814 ## @param ruler.readinessProbe.timeoutSeconds Timeout seconds for readinessProbe 2815 ## @param ruler.readinessProbe.failureThreshold Failure threshold for readinessProbe 2816 ## @param ruler.readinessProbe.successThreshold Success threshold for readinessProbe 2817 ## 2818 readinessProbe: 2819 enabled: true 2820 initialDelaySeconds: 30 2821 timeoutSeconds: 30 2822 periodSeconds: 10 2823 successThreshold: 1 2824 failureThreshold: 6 2825 ## @param ruler.startupProbe.enabled Enable startupProbe on Thanos Ruler containers 2826 ## @param ruler.startupProbe.initialDelaySeconds Initial delay seconds for startupProbe 2827 ## @param ruler.startupProbe.periodSeconds Period seconds for startupProbe 2828 ## @param ruler.startupProbe.timeoutSeconds Timeout seconds for startupProbe 2829 ## @param ruler.startupProbe.failureThreshold Failure threshold for startupProbe 2830 ## @param ruler.startupProbe.successThreshold Success threshold for startupProbe 2831 ## 2832 startupProbe: 2833 enabled: false 2834 initialDelaySeconds: 5 2835 periodSeconds: 5 2836 timeoutSeconds: 1 2837 failureThreshold: 15 2838 successThreshold: 1 2839 ## @param ruler.customLivenessProbe Custom livenessProbe that overrides the default one 2840 ## 2841 customLivenessProbe: {} 2842 ## @param ruler.customReadinessProbe Custom readinessProbe that overrides the default one 2843 ## 2844 customReadinessProbe: {} 2845 ## @param ruler.customStartupProbe Custom startupProbe that overrides the default one 2846 ## 2847 customStartupProbe: {} 2848 ## @param ruler.initContainers Add additional init containers to the Thanos Ruler pods 2849 ## ref: https://kubernetes.io/docs/concepts/workloads/pods/init-containers/ 2850 ## e.g: 2851 ## initContainers: 2852 ## - name: your-image-name 2853 ## image: your-image 2854 ## imagePullPolicy: Always 2855 ## command: ['sh', '-c', 'echo "hello world"'] 2856 ## 2857 initContainers: [] 2858 ## @param ruler.sidecars Extra containers running as sidecars to Thanos Ruler pods 2859 ## e.g: 2860 ## sidecars: 2861 ## - name: your-image-name 2862 ## image: your-image 2863 ## imagePullPolicy: Always 2864 ## ports: 2865 ## - name: portname 2866 ## containerPort: 1234 2867 ## 2868 sidecars: [] 2869 ## @param ruler.extraVolumes Extra volumes to add to Thanos Ruler 2870 ## 2871 extraVolumes: [] 2872 ## @param ruler.extraVolumeMounts Extra volume mounts to add to the ruler container 2873 ## 2874 extraVolumeMounts: [] 2875 ## @param ruler.podAffinityPreset Thanos Ruler pod affinity preset 2876 ## ref: https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/#inter-pod-affinity-and-anti-affinity 2877 ## 2878 podAffinityPreset: "" 2879 ## @param ruler.podAntiAffinityPreset Thanos Ruler pod anti-affinity preset. Ignored if `ruler.affinity` is set. Allowed values: `soft` or `hard` 2880 ## ref: https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/#inter-pod-affinity-and-anti-affinity 2881 ## 2882 podAntiAffinityPreset: soft 2883 ## Thanos Ruler node affinity preset 2884 ## ref: https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/#node-affinity 2885 ## 2886 nodeAffinityPreset: 2887 ## @param ruler.nodeAffinityPreset.type Thanos Ruler node affinity preset type. Ignored if `ruler.affinity` is set. Allowed values: `soft` or `hard` 2888 ## 2889 type: "" 2890 ## @param ruler.nodeAffinityPreset.key Thanos Ruler node label key to match. Ignored if `ruler.affinity` is set. 2891 ## e.g: 2892 ## key: "kubernetes.io/e2e-az-name" 2893 ## 2894 key: "" 2895 ## @param ruler.nodeAffinityPreset.values Thanos Ruler node label values to match. Ignored if `ruler.affinity` is set. 2896 ## e.g: 2897 ## values: 2898 ## - e2e-az1 2899 ## - e2e-az2 2900 ## 2901 values: [] 2902 ## @param ruler.affinity Thanos Ruler affinity for pod assignment 2903 ## ref: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/#affinity-and-anti-affinity 2904 ## Note: ruler.podAffinityPreset, ruler.podAntiAffinityPreset, and ruler.nodeAffinityPreset will be ignored when it's set 2905 ## 2906 affinity: {} 2907 ## @param ruler.nodeSelector Thanos Ruler node labels for pod assignment 2908 ## ref: https://kubernetes.io/docs/user-guide/node-selection/ 2909 ## 2910 nodeSelector: {} 2911 ## @param ruler.tolerations Thanos Ruler tolerations for pod assignment 2912 ## ref: https://kubernetes.io/docs/concepts/configuration/taint-and-toleration/ 2913 ## 2914 tolerations: [] 2915 ## @param ruler.podLabels Thanos Ruler pod labels 2916 ## ref: https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/ 2917 ## 2918 podLabels: {} 2919 ## @param ruler.podAnnotations Annotations for Thanos Ruler pods 2920 ## ref: https://kubernetes.io/docs/concepts/overview/working-with-objects/annotations/ 2921 ## 2922 podAnnotations: {} 2923 ## @param ruler.hostAliases Deployment pod host aliases 2924 ## https://kubernetes.io/docs/concepts/services-networking/add-entries-to-pod-etc-hosts-with-host-aliases/ 2925 ## 2926 hostAliases: [] 2927 ## @param ruler.lifecycleHooks for the Thanos Ruler container(s) to automate configuration before or after startup 2928 ## 2929 lifecycleHooks: {} 2930 ## @param ruler.priorityClassName Thanos Ruler priorityClassName 2931 ## ref: https://kubernetes.io/docs/concepts/configuration/pod-priority-preemption/ 2932 ## 2933 priorityClassName: "" 2934 ## @param ruler.schedulerName Name of the k8s scheduler (other than default) for Thanos Ruler pods 2935 ## ref: https://kubernetes.io/docs/tasks/administer-cluster/configure-multiple-schedulers/ 2936 ## 2937 schedulerName: "" 2938 ## @param ruler.topologySpreadConstraints Topology Spread Constraints for Thanos Ruler pods assignment spread across your cluster among failure-domains 2939 ## Ref: https://kubernetes.io/docs/concepts/workloads/pods/pod-topology-spread-constraints/#spread-constraints-for-pods 2940 ## 2941 topologySpreadConstraints: [] 2942 ## Service parameters 2943 ## 2944 service: 2945 ## @param ruler.service.type Kubernetes service type 2946 ## 2947 type: ClusterIP 2948 ## @param ruler.service.ports.http Thanos Ruler service HTTP port 2949 ## @param ruler.service.ports.grpc Thanos Ruler service GRPC port 2950 ## 2951 ports: 2952 http: 9090 2953 grpc: 10901 2954 ## @param ruler.service.nodePorts.http Specify the Thanos Ruler HTTP nodePort value for the LoadBalancer and NodePort service types 2955 ## @param ruler.service.nodePorts.grpc Specify the Thanos Ruler GRPC nodePort value for the LoadBalancer and NodePort service types 2956 ## ref: https://kubernetes.io/docs/concepts/services-networking/service/#type-nodeport 2957 ## 2958 nodePorts: 2959 http: "" 2960 grpc: "" 2961 ## @param ruler.service.clusterIP Thanos Ruler service clusterIP IP 2962 ## e.g: 2963 ## clusterIP: None 2964 ## 2965 clusterIP: "" 2966 ## @param ruler.service.loadBalancerIP Load balancer IP if service type is `LoadBalancer` 2967 ## Set the LoadBalancer service type to internal only 2968 ## ref: https://kubernetes.io/docs/concepts/services-networking/service/#internal-load-balancer 2969 ## 2970 loadBalancerIP: "" 2971 ## @param ruler.service.loadBalancerSourceRanges Address that are allowed when service is LoadBalancer 2972 ## https://kubernetes.io/docs/tasks/access-application-cluster/configure-cloud-provider-firewall/#restrict-access-for-loadbalancer-service 2973 ## e.g: 2974 ## loadBalancerSourceRanges: 2975 ## - 10.10.10.0/24 2976 ## 2977 loadBalancerSourceRanges: [] 2978 ## @param ruler.service.externalTrafficPolicy Thanos Ruler service externalTrafficPolicy 2979 ## Denotes if this Service desires to route external traffic to node-local or cluster-wide endpoints 2980 ## 2981 externalTrafficPolicy: Cluster 2982 ## @param ruler.service.annotations Annotations for Thanos Ruler service 2983 ## 2984 annotations: {} 2985 ## @param ruler.service.extraPorts Extra ports to expose in the Thanos Ruler service 2986 ## 2987 extraPorts: [] 2988 ## @param ruler.service.labelSelectorsOverride Selector for Thanos Query service 2989 ## 2990 labelSelectorsOverride: {} 2991 ## @param ruler.service.additionalHeadless Additional Headless service 2992 ## 2993 additionalHeadless: false 2994 ## Persistence parameters 2995 ## 2996 persistence: 2997 ## @param ruler.persistence.enabled Enable data persistence using PVC(s) on Thanos Ruler pods 2998 ## 2999 enabled: true 3000 ## @param ruler.persistence.storageClass Specify the `storageClass` used to provision the volume 3001 ## If defined, storageClassName: <storageClass> 3002 ## If set to "-", storageClassName: "", which disables dynamic provisioning 3003 ## If undefined (the default) or set to null, no storageClassName spec is 3004 ## set, choosing the default provisioner. 3005 ## 3006 storageClass: "" 3007 ## @param ruler.persistence.accessModes PVC Access Modes for data volume 3008 ## 3009 accessModes: 3010 - ReadWriteOnce 3011 ## @param ruler.persistence.size PVC Storage Request for data volume 3012 ## 3013 size: 8Gi 3014 ## @param ruler.persistence.annotations Annotations for the PVC 3015 ## 3016 annotations: {} 3017 ## @param ruler.persistence.existingClaim Name of an existing PVC to use 3018 ## If defined, PVC must be created manually before volume will be bound 3019 ## 3020 existingClaim: "" 3021 ## @param ruler.automountServiceAccountToken Enable/disable auto mounting of the service account token only for the sts 3022 ## 3023 automountServiceAccountToken: true 3024 ## ServiceAccount configuration 3025 ## @param ruler.serviceAccount.create Specifies whether a ServiceAccount should be created 3026 ## @param ruler.serviceAccount.name Name of the service account to use. If not set and create is true, a name is generated using the fullname template. 3027 ## @param ruler.serviceAccount.annotations Annotations for Thanos Ruler Service Account 3028 ## @param ruler.serviceAccount.automountServiceAccountToken Enable/disable auto mounting of the service account token 3029 ## DEPRECATED ruler.serviceAccount.existingServiceAccount - This value has been deprecated and will be removed in a future release, please use `serviceAccount.name` in combination with `serviceAccount.create=false` instead 3030 ## 3031 serviceAccount: 3032 create: true 3033 name: "" 3034 annotations: {} 3035 automountServiceAccountToken: true 3036 ## existingServiceAccount: "" 3037 ## Thanos Ruler Autoscaling configuration 3038 ## ref: https://kubernetes.io/docs/tasks/run-application/horizontal-pod-autoscale/ 3039 ## @param ruler.autoscaling.enabled Enable autoscaling for Thanos Ruler 3040 ## @param ruler.autoscaling.minReplicas Minimum number of Thanos Ruler replicas 3041 ## @param ruler.autoscaling.maxReplicas Maximum number of Thanos Ruler replicas 3042 ## @param ruler.autoscaling.targetCPU Target CPU utilization percentage 3043 ## @param ruler.autoscaling.targetMemory Target Memory utilization percentage 3044 ## 3045 autoscaling: 3046 enabled: false 3047 minReplicas: "" 3048 maxReplicas: "" 3049 targetCPU: "" 3050 targetMemory: "" 3051 ## Thanos Ruler Pod Disruption Budget configuration 3052 ## ref: https://kubernetes.io/docs/tasks/run-application/configure-pdb 3053 ## @param ruler.pdb.create Enable/disable a Pod Disruption Budget creation for Thanos Ruler 3054 ## @param ruler.pdb.minAvailable Minimum number/percentage of pods that should remain scheduled 3055 ## @param ruler.pdb.maxUnavailable Maximum number/percentage of pods that may be made unavailable 3056 ## 3057 pdb: 3058 create: false 3059 minAvailable: 1 3060 maxUnavailable: "" 3061 ## Configure the ingress resource that allows you to access Thanos Ruler 3062 ## ref: https://kubernetes.io/docs/user-guide/ingress/ 3063 ## 3064 ingress: 3065 ## @param ruler.ingress.enabled Enable ingress controller resource 3066 ## 3067 enabled: false 3068 ## @param ruler.ingress.hostname Default host for the ingress resource 3069 ## 3070 hostname: thanos-ruler.local 3071 ## @param ruler.ingress.ingressClassName IngressClass that will be be used to implement the Ingress (Kubernetes 1.18+) 3072 ## This is supported in Kubernetes 1.18+ and required if you have more than one IngressClass marked as the default for your cluster . 3073 ## ref: https://kubernetes.io/blog/2020/04/02/improvements-to-the-ingress-api-in-kubernetes-1.18/ 3074 ## 3075 ingressClassName: "" 3076 ## @param ruler.ingress.annotations Additional annotations for the Ingress resource. To enable certificate autogeneration, place here your cert-manager annotations. 3077 ## For a full list of possible ingress annotations, please see 3078 ## ref: https://github.com/kubernetes/ingress-nginx/blob/master/docs/user-guide/nginx-configuration/annotations.md 3079 ## Use this parameter to set the required annotations for cert-manager, see 3080 ## ref: https://cert-manager.io/docs/usage/ingress/#supported-annotations 3081 ## 3082 ## e.g: 3083 ## annotations: 3084 ## kubernetes.io/ingress.class: nginx 3085 ## cert-manager.io/cluster-issuer: cluster-issuer-name 3086 ## 3087 annotations: {} 3088 ## @param ruler.ingress.extraHosts The list of additional hostnames to be covered with this ingress record. 3089 ## Most likely the hostname above will be enough, but in the event more hosts are needed, this is an array 3090 ## extraHosts: 3091 ## - name: thanos.local 3092 ## path: / 3093 ## pathType: ImplementationSpecific 3094 ## 3095 extraHosts: [] 3096 ## @param ruler.ingress.extraTls The tls configuration for additional hostnames to be covered with this ingress record. 3097 ## see: https://kubernetes.io/docs/concepts/services-networking/ingress/#tls 3098 ## extraTls: 3099 ## - hosts: 3100 ## - thanos.local 3101 ## secretName: thanos.local-tls 3102 ## 3103 extraTls: [] 3104 ## @param ruler.ingress.secrets If you're providing your own certificates, please use this to add the certificates as secrets 3105 ## key and certificate should start with -----BEGIN CERTIFICATE----- or 3106 ## -----BEGIN RSA PRIVATE KEY----- 3107 ## 3108 ## name should line up with a tlsSecret set further up 3109 ## If you're using cert-manager, this is unneeded, as it will create the secret for you if it is not set 3110 ## 3111 ## It is also possible to create and manage the certificates outside of this helm chart 3112 ## Please see README.md for more information 3113 ## e.g: 3114 ## - name: thanos.local-tls 3115 ## key: 3116 ## certificate: 3117 ## 3118 secrets: [] 3119 ## @param ruler.ingress.extraRules Additional rules to be covered with this ingress record 3120 ## ref: https://kubernetes.io/docs/concepts/services-networking/ingress/#ingress-rules 3121 ## e.g: 3122 ## extraRules: 3123 ## - host: example.local 3124 ## http: 3125 ## path: / 3126 ## backend: 3127 ## service: 3128 ## name: example-svc 3129 ## port: 3130 ## name: http 3131 ## 3132 extraRules: [] 3133 ## @param ruler.ingress.apiVersion Force Ingress API version (automatically detected if not set) 3134 ## 3135 apiVersion: "" 3136 ## @param ruler.ingress.path Ingress path 3137 ## 3138 path: / 3139 ## @param ruler.ingress.pathType Ingress path type 3140 ## 3141 pathType: ImplementationSpecific 3142 3143 ## @section Thanos Receive parameters 3144 3145 receive: 3146 ## @param receive.enabled Enable/disable Thanos Receive component 3147 ## 3148 enabled: false 3149 ## @param receive.mode Mode to run receiver in. Valid options are "standalone" or "dual-mode" 3150 ## ref: https://github.com/thanos-io/thanos/blob/release-0.22/docs/proposals-accepted/202012-receive-split.md 3151 ## Enables running the Thanos Receiver in dual mode. Setting this to "dual-mode" will create a deployment for 3152 ## the stateless thanos distributor. 3153 mode: standalone 3154 ## @param receive.logLevel Thanos Receive log level 3155 ## 3156 logLevel: info 3157 ## @param receive.logFormat Thanos Receive log format 3158 ## 3159 logFormat: logfmt 3160 ## @param receive.tsdbRetention Thanos Receive TSDB retention period 3161 ## 3162 tsdbRetention: 15d 3163 ## @param receive.replicationFactor Thanos Receive replication-factor 3164 ## 3165 replicationFactor: 1 3166 ## @param receive.config Receive Hashring configuration 3167 ## Note: json formatted string and yaml allowed. 3168 ## e.g: 3169 ## config: 3170 ## - endpoints: 3171 ## - "127.0.0.1:10901" 3172 ## 3173 config: [] 3174 ## @param receive.existingConfigmap Name of existing ConfigMap with Thanos Receive Hashring configuration 3175 ## NOTE: This will override receive.config 3176 ## 3177 existingConfigmap: "" 3178 ## @param receive.replicaLabel Label to treat as a replica indicator along which data is de-duplicated 3179 ## 3180 replicaLabel: replica 3181 ## Thanos Receive parameters 3182 ## ref: https://github.com/thanos-io/thanos/blob/master/docs/components/receive.md#flags 3183 ## 3184 grpc: 3185 ## GRPC server side 3186 ## 3187 server: 3188 ## TLS configuration 3189 ## @param receive.grpc.server.tls.enabled Enable TLS encryption in the GRPC server 3190 ## @param receive.grpc.server.tls.autoGenerated Create self-signed TLS certificates. Currently only supports PEM certificates 3191 ## @param receive.grpc.server.tls.cert TLS Certificate for GRPC server - ignored if existingSecret is provided 3192 ## @param receive.grpc.server.tls.key TLS Key for GRPC server - ignored if existingSecret is provided 3193 ## @param receive.grpc.server.tls.ca TLS CA to verify clients against - ignored if existingSecret is provided 3194 ## @param receive.grpc.server.tls.existingSecret Existing secret containing your own TLS certificates 3195 ## e.g: 3196 ## existingSecret: 3197 ## name: foo 3198 ## keyMapping: 3199 ## ca-cert: ca.pem 3200 ## tls-cert: cert.pem 3201 ## tls-key: key.pem 3202 ## 3203 tls: 3204 enabled: false 3205 autoGenerated: false 3206 cert: "" 3207 key: "" 3208 ca: "" 3209 existingSecret: {} 3210 ## @param receive.extraEnvVars Extra environment variables for Thanos Receive container 3211 ## e.g: 3212 ## extraEnvVars: 3213 ## - name: FOO 3214 ## value: "bar" 3215 ## 3216 extraEnvVars: [] 3217 ## @param receive.extraEnvVarsCM Name of existing ConfigMap containing extra env vars for Thanos Receive nodes 3218 ## 3219 extraEnvVarsCM: "" 3220 ## @param receive.extraEnvVarsSecret Name of existing Secret containing extra env vars for Thanos Receive nodes 3221 ## 3222 extraEnvVarsSecret: "" 3223 ## @param receive.extraFlags Extra Flags to passed to Thanos Receive 3224 ## 3225 extraFlags: [] 3226 ## @param receive.command Override default container command (useful when using custom images) 3227 ## 3228 command: [] 3229 ## @param receive.args Override default container args (useful when using custom images) 3230 ## 3231 args: [] 3232 ## @param receive.replicaCount Number of Thanos Receive replicas to deploy 3233 ## 3234 replicaCount: 1 3235 ## @param receive.updateStrategy.type Update strategy type for Thanos Receive replicas 3236 ## 3237 updateStrategy: 3238 type: RollingUpdate 3239 ## @param receive.podManagementPolicy 3240 ## @param receive.podManagementPolicy Statefulset Pod management policy: OrderedReady (default) or Parallel 3241 ## ref: https://kubernetes.io/docs/concepts/workloads/controllers/statefulset/#pod-management-policies 3242 ## 3243 podManagementPolicy: OrderedReady 3244 ## K8s Pod Security Context for Thanos Receive pods 3245 ## https://kubernetes.io/docs/tasks/configure-pod-container/security-context/ 3246 ## @param receive.podSecurityContext.enabled Enable security context for the Thanos Receive pods 3247 ## @param receive.podSecurityContext.fsGroup Group ID for the filesystem used by Thanos Receive pods 3248 ## 3249 podSecurityContext: 3250 enabled: true 3251 fsGroup: 1001 3252 ## K8s containers' Security Context for Thanos Receive containers 3253 ## ref: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/#set-the-security-context-for-a-container 3254 ## @param receive.containerSecurityContext.enabled Enable container security context for the Thanos Receive containers 3255 ## @param receive.containerSecurityContext.runAsUser User ID for the service user running the Thanos Receive containers 3256 ## @param receive.containerSecurityContext.runAsNonRoot Force the Thanos Receive containers to run as a non root user 3257 ## @param receive.containerSecurityContext.allowPrivilegeEscalation Switch privilegeEscalation possibility on or off for Thanos Receive containers 3258 ## @param receive.containerSecurityContext.readOnlyRootFilesystem mount / (root) as a readonly filesystem on Thanos Receive containers 3259 ## 3260 containerSecurityContext: 3261 enabled: true 3262 runAsUser: 1001 3263 runAsNonRoot: true 3264 allowPrivilegeEscalation: false 3265 readOnlyRootFilesystem: true 3266 ## Thanos Receive containers' resource requests and limits 3267 ## ref: https://kubernetes.io/docs/user-guide/compute-resources/ 3268 ## @param receive.resources.limits The resources limits for the Thanos Receive container 3269 ## @param receive.resources.requests The requested resources for the Thanos Receive container 3270 ## 3271 resources: 3272 limits: {} 3273 requests: {} 3274 ## Configure extra options for Thanos Receive containers' liveness and readiness probes 3275 ## ref: https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-probes/#configure-probes 3276 ## @param receive.livenessProbe.enabled Enable livenessProbe on Thanos Receive containers 3277 ## @param receive.livenessProbe.initialDelaySeconds Initial delay seconds for livenessProbe 3278 ## @param receive.livenessProbe.periodSeconds Period seconds for livenessProbe 3279 ## @param receive.livenessProbe.timeoutSeconds Timeout seconds for livenessProbe 3280 ## @param receive.livenessProbe.failureThreshold Failure threshold for livenessProbe 3281 ## @param receive.livenessProbe.successThreshold Success threshold for livenessProbe 3282 ## 3283 livenessProbe: 3284 enabled: true 3285 initialDelaySeconds: 30 3286 timeoutSeconds: 30 3287 periodSeconds: 10 3288 successThreshold: 1 3289 failureThreshold: 6 3290 ## @param receive.readinessProbe.enabled Enable readinessProbe on Thanos Receive containers 3291 ## @param receive.readinessProbe.initialDelaySeconds Initial delay seconds for readinessProbe 3292 ## @param receive.readinessProbe.periodSeconds Period seconds for readinessProbe 3293 ## @param receive.readinessProbe.timeoutSeconds Timeout seconds for readinessProbe 3294 ## @param receive.readinessProbe.failureThreshold Failure threshold for readinessProbe 3295 ## @param receive.readinessProbe.successThreshold Success threshold for readinessProbe 3296 ## 3297 readinessProbe: 3298 enabled: true 3299 initialDelaySeconds: 30 3300 timeoutSeconds: 30 3301 periodSeconds: 10 3302 successThreshold: 1 3303 failureThreshold: 6 3304 ## @param receive.startupProbe.enabled Enable startupProbe on Thanos Receive containers 3305 ## @param receive.startupProbe.initialDelaySeconds Initial delay seconds for startupProbe 3306 ## @param receive.startupProbe.periodSeconds Period seconds for startupProbe 3307 ## @param receive.startupProbe.timeoutSeconds Timeout seconds for startupProbe 3308 ## @param receive.startupProbe.failureThreshold Failure threshold for startupProbe 3309 ## @param receive.startupProbe.successThreshold Success threshold for startupProbe 3310 ## 3311 startupProbe: 3312 enabled: false 3313 initialDelaySeconds: 5 3314 periodSeconds: 5 3315 timeoutSeconds: 1 3316 failureThreshold: 15 3317 successThreshold: 1 3318 ## @param receive.customLivenessProbe Custom livenessProbe that overrides the default one 3319 ## 3320 customLivenessProbe: {} 3321 ## @param receive.customReadinessProbe Custom readinessProbe that overrides the default one 3322 ## 3323 customReadinessProbe: {} 3324 ## @param receive.customStartupProbe Custom startupProbe that overrides the default one 3325 ## 3326 customStartupProbe: {} 3327 ## @param receive.initContainers Add additional init containers to the Thanos Receive pods 3328 ## ref: https://kubernetes.io/docs/concepts/workloads/pods/init-containers/ 3329 ## e.g: 3330 ## initContainers: 3331 ## - name: your-image-name 3332 ## image: your-image 3333 ## imagePullPolicy: Always 3334 ## command: ['sh', '-c', 'echo "hello world"'] 3335 ## 3336 initContainers: [] 3337 ## @param receive.sidecars Extra containers running as sidecars to Thanos Receive pods 3338 ## e.g: 3339 ## sidecars: 3340 ## - name: your-image-name 3341 ## image: your-image 3342 ## imagePullPolicy: Always 3343 ## ports: 3344 ## - name: portname 3345 ## containerPort: 1234 3346 ## 3347 sidecars: [] 3348 ## @param receive.extraVolumes Extra volumes to add to Thanos Receive 3349 ## 3350 extraVolumes: [] 3351 ## @param receive.extraVolumeMounts Extra volume mounts to add to the receive container 3352 ## 3353 extraVolumeMounts: [] 3354 ## @param receive.podAffinityPreset Thanos Receive pod affinity preset 3355 ## ref: https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/#inter-pod-affinity-and-anti-affinity 3356 ## Allowed values: soft, hard 3357 ## 3358 podAffinityPreset: "" 3359 ## @param receive.podAntiAffinityPreset Thanos Receive pod anti-affinity preset. Ignored if `ruler.affinity` is set. Allowed values: `soft` or `hard` 3360 ## ref: https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/#inter-pod-affinity-and-anti-affinity 3361 ## 3362 podAntiAffinityPreset: soft 3363 ## Thanos Receive node affinity preset 3364 ## ref: https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/#node-affinity 3365 ## 3366 nodeAffinityPreset: 3367 ## @param receive.nodeAffinityPreset.type Thanos Receive node affinity preset type. Ignored if `receive.affinity` is set. Allowed values: `soft` or `hard` 3368 ## 3369 type: "" 3370 ## @param receive.nodeAffinityPreset.key Thanos Receive node label key to match. Ignored if `receive.affinity` is set. 3371 ## e.g: 3372 ## key: "kubernetes.io/e2e-az-name" 3373 ## 3374 key: "" 3375 ## @param receive.nodeAffinityPreset.values Thanos Receive node label values to match. Ignored if `receive.affinity` is set. 3376 ## e.g: 3377 ## values: 3378 ## - e2e-az1 3379 ## - e2e-az2 3380 ## 3381 values: [] 3382 ## @param receive.affinity Thanos Receive affinity for pod assignment 3383 ## ref: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/#affinity-and-anti-affinity 3384 ## Note: receive.podAffinityPreset, receive.podAntiAffinityPreset, and receive.nodeAffinityPreset will be ignored when it's set 3385 ## 3386 affinity: {} 3387 ## @param receive.nodeSelector Thanos Receive node labels for pod assignment 3388 ## ref: https://kubernetes.io/docs/user-guide/node-selection/ 3389 ## 3390 nodeSelector: {} 3391 ## @param receive.tolerations Thanos Receive tolerations for pod assignment 3392 ## ref: https://kubernetes.io/docs/concepts/configuration/taint-and-toleration/ 3393 ## 3394 tolerations: [] 3395 ## @param receive.podLabels Thanos Receive pod labels 3396 ## ref: https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/ 3397 ## 3398 podLabels: {} 3399 ## @param receive.podAnnotations Annotations for Thanos Receive pods 3400 ## ref: https://kubernetes.io/docs/concepts/overview/working-with-objects/annotations/ 3401 ## 3402 podAnnotations: {} 3403 ## @param receive.hostAliases Deployment pod host aliases 3404 ## https://kubernetes.io/docs/concepts/services-networking/add-entries-to-pod-etc-hosts-with-host-aliases/ 3405 ## 3406 hostAliases: [] 3407 ## @param receive.lifecycleHooks for the Thanos Receive container(s) to automate configuration before or after startup 3408 ## 3409 lifecycleHooks: {} 3410 ## @param receive.priorityClassName Thanos Receive priorityClassName 3411 ## ref: https://kubernetes.io/docs/concepts/configuration/pod-priority-preemption/ 3412 ## 3413 priorityClassName: "" 3414 ## @param receive.schedulerName Name of the k8s scheduler (other than default) for Thanos Receive pods 3415 ## ref: https://kubernetes.io/docs/tasks/administer-cluster/configure-multiple-schedulers/ 3416 ## 3417 schedulerName: "" 3418 ## @param receive.topologySpreadConstraints Topology Spread Constraints for Thanos Receive pods assignment spread across your cluster among failure-domains 3419 ## Ref: https://kubernetes.io/docs/concepts/workloads/pods/pod-topology-spread-constraints/#spread-constraints-for-pods 3420 ## 3421 topologySpreadConstraints: [] 3422 ## Service parameters 3423 ## 3424 service: 3425 ## @param receive.service.type Kubernetes service type 3426 ## 3427 type: ClusterIP 3428 ## @param receive.service.ports.http Thanos Ruler service HTTP port 3429 ## @param receive.service.ports.grpc Thanos Ruler service GRPC port 3430 ## @param receive.service.ports.remote Thanos Ruler service remote port 3431 ## 3432 ports: 3433 http: 10902 3434 grpc: 10901 3435 remote: 19291 3436 ## @param receive.service.nodePorts.http Specify the Thanos Ruler HTTP nodePort value for the LoadBalancer and NodePort service types 3437 ## @param receive.service.nodePorts.grpc Specify the Thanos Ruler GRPC nodePort value for the LoadBalancer and NodePort service types 3438 ## @param receive.service.nodePorts.remote Specify the Thanos Ruler remote nodePort value for the LoadBalancer and NodePort service types 3439 ## ref: https://kubernetes.io/docs/concepts/services-networking/service/#type-nodeport 3440 ## 3441 nodePorts: 3442 http: "" 3443 grpc: "" 3444 remote: "" 3445 ## @param receive.service.clusterIP Thanos Ruler service clusterIP IP 3446 ## e.g: 3447 ## clusterIP: None 3448 ## 3449 clusterIP: "" 3450 ## @param receive.service.loadBalancerIP Load balancer IP if service type is `LoadBalancer` 3451 ## ref: https://kubernetes.io/docs/concepts/services-networking/service/#internal-load-balancer 3452 ## 3453 loadBalancerIP: "" 3454 ## @param receive.service.loadBalancerSourceRanges Addresses that are allowed when service is LoadBalancer 3455 ## https://kubernetes.io/docs/tasks/access-application-cluster/configure-cloud-provider-firewall/#restrict-access-for-loadbalancer-service 3456 ## e.g: 3457 ## loadBalancerSourceRanges: 3458 ## - 10.10.10.0/24 3459 ## 3460 loadBalancerSourceRanges: [] 3461 ## @param receive.service.externalTrafficPolicy Thanos Ruler service externalTrafficPolicy 3462 ## Denotes if this Service desires to route external traffic to node-local or cluster-wide endpoints 3463 ## 3464 externalTrafficPolicy: Cluster 3465 ## @param receive.service.annotations Annotations for Thanos Receive service 3466 ## 3467 annotations: {} 3468 ## @param receive.service.extraPorts Extra ports to expose in the Thanos Receive service 3469 ## 3470 extraPorts: [] 3471 ## @param receive.service.labelSelectorsOverride Selector for Thanos receive service 3472 ## 3473 labelSelectorsOverride: {} 3474 ## @param receive.service.additionalHeadless Additional Headless service 3475 ## 3476 additionalHeadless: false 3477 ## @param receive.automountServiceAccountToken Enable/disable auto mounting of the service account token only for the sts 3478 ## 3479 automountServiceAccountToken: true 3480 ## ServiceAccount configuration 3481 ## @param receive.serviceAccount.create Specifies whether a ServiceAccount should be created 3482 ## @param receive.serviceAccount.name Name of the service account to use. If not set and create is true, a name is generated using the fullname template. 3483 ## @param receive.serviceAccount.annotations Annotations for Thanos Receive Service Account 3484 ## @param receive.serviceAccount.automountServiceAccountToken Enable/disable auto mounting of the service account token 3485 ## DEPRECATED receive.serviceAccount.existingServiceAccount - This value has been deprecated and will be removed in a future release, please use `serviceAccount.name` in combination with `serviceAccount.create=false` instead 3486 ## 3487 serviceAccount: 3488 create: true 3489 name: "" 3490 annotations: {} 3491 automountServiceAccountToken: true 3492 ## existingServiceAccount: "" 3493 ## Thanos Receive Autoscaling configuration 3494 ## ref: https://kubernetes.io/docs/tasks/run-application/horizontal-pod-autoscale/ 3495 ## @param receive.autoscaling.enabled Enable autoscaling for Thanos Receive 3496 ## @param receive.autoscaling.minReplicas Minimum number of Thanos Receive replicas 3497 ## @param receive.autoscaling.maxReplicas Maximum number of Thanos Receive replicas 3498 ## @param receive.autoscaling.targetCPU Target CPU utilization percentage 3499 ## @param receive.autoscaling.targetMemory Target Memory utilization percentage 3500 ## 3501 autoscaling: 3502 enabled: false 3503 minReplicas: "" 3504 maxReplicas: "" 3505 targetCPU: "" 3506 targetMemory: "" 3507 ## Thanos Receive Pod Disruption Budget configuration 3508 ## ref: https://kubernetes.io/docs/tasks/run-application/configure-pdb 3509 ## @param receive.pdb.create Enable/disable a Pod Disruption Budget creation for Thanos Receive 3510 ## @param receive.pdb.minAvailable Minimum number/percentage of pods that should remain scheduled 3511 ## @param receive.pdb.maxUnavailable Maximum number/percentage of pods that may be made unavailable 3512 ## 3513 pdb: 3514 create: false 3515 minAvailable: 1 3516 maxUnavailable: "" 3517 ## Persistence parameters 3518 ## 3519 persistence: 3520 ## @param receive.persistence.enabled Enable data persistence using PVC(s) on Thanos Receive pods 3521 ## 3522 enabled: true 3523 ## @param receive.persistence.storageClass Specify the `storageClass` used to provision the volume 3524 ## If defined, storageClassName: <storageClass> 3525 ## If set to "-", storageClassName: "", which disables dynamic provisioning 3526 ## If undefined (the default) or set to null, no storageClassName spec is 3527 ## set, choosing the default provisioner. 3528 ## 3529 storageClass: "" 3530 ## @param receive.persistence.accessModes PVC Access Modes for data volume 3531 ## 3532 accessModes: 3533 - ReadWriteOnce 3534 ## @param receive.persistence.size PVC Storage Request for data volume 3535 ## 3536 size: 8Gi 3537 ## @param receive.persistence.annotations Annotations for the PVC 3538 ## 3539 annotations: {} 3540 ## @param receive.persistence.existingClaim Name of an existing PVC to use 3541 ## If defined, PVC must be created manually before volume will be bound 3542 ## 3543 existingClaim: "" 3544 ## Configure the ingress resource that allows you to access Thanos Receive 3545 ## ref: https://kubernetes.io/docs/user-guide/ingress/ 3546 ## 3547 ingress: 3548 ## @param receive.ingress.enabled Set to true to enable ingress record generation 3549 ## 3550 enabled: false 3551 ## @param receive.ingress.hostname When the ingress is enabled, a host pointing to this will be created 3552 ## 3553 hostname: thanos-receive.local 3554 ## @param receive.ingress.ingressClassName IngressClass that will be be used to implement the Ingress (Kubernetes 1.18+) 3555 ## This is supported in Kubernetes 1.18+ and required if you have more than one IngressClass marked as the default for your cluster . 3556 ## ref: https://kubernetes.io/blog/2020/04/02/improvements-to-the-ingress-api-in-kubernetes-1.18/ 3557 ## 3558 ingressClassName: "" 3559 ## @param receive.ingress.annotations Additional annotations for the Ingress resource. To enable certificate autogeneration, place here your cert-manager annotations. 3560 ## For a full list of possible ingress annotations, please see 3561 ## ref: https://github.com/kubernetes/ingress-nginx/blob/master/docs/user-guide/nginx-configuration/annotations.md 3562 ## Use this parameter to set the required annotations for cert-manager, see 3563 ## ref: https://cert-manager.io/docs/usage/ingress/#supported-annotations 3564 ## 3565 ## e.g: 3566 ## annotations: 3567 ## kubernetes.io/ingress.class: nginx 3568 ## cert-manager.io/cluster-issuer: cluster-issuer-name 3569 ## 3570 annotations: {} 3571 ## @param receive.ingress.extraHosts The list of additional hostnames to be covered with this ingress record. 3572 ## Most likely the hostname above will be enough, but in the event more hosts are needed, this is an array 3573 ## extraHosts: 3574 ## - name: thanos.local 3575 ## path: / 3576 ## pathType: ImplementationSpecific 3577 ## 3578 extraHosts: [] 3579 ## @param receive.ingress.extraTls The tls configuration for additional hostnames to be covered with this ingress record. 3580 ## see: https://kubernetes.io/docs/concepts/services-networking/ingress/#tls 3581 ## extraTls: 3582 ## - hosts: 3583 ## - thanos.local 3584 ## secretName: thanos.local-tls 3585 ## 3586 extraTls: [] 3587 ## @param receive.ingress.secrets If you're providing your own certificates, please use this to add the certificates as secrets 3588 ## key and certificate should start with -----BEGIN CERTIFICATE----- or 3589 ## -----BEGIN RSA PRIVATE KEY----- 3590 ## 3591 ## name should line up with a tlsSecret set further up 3592 ## If you're using cert-manager, this is unneeded, as it will create the secret for you if it is not set 3593 ## 3594 ## It is also possible to create and manage the certificates outside of this helm chart 3595 ## Please see README.md for more information 3596 ## e.g: 3597 ## - name: thanos.local-tls 3598 ## key: 3599 ## certificate: 3600 ## 3601 secrets: [] 3602 ## @param receive.ingress.extraRules Additional rules to be covered with this ingress record 3603 ## ref: https://kubernetes.io/docs/concepts/services-networking/ingress/#ingress-rules 3604 ## e.g: 3605 ## extraRules: 3606 ## - host: example.local 3607 ## http: 3608 ## path: / 3609 ## backend: 3610 ## service: 3611 ## name: example-svc 3612 ## port: 3613 ## name: http 3614 ## 3615 extraRules: [] 3616 ## @param receive.ingress.tls Enable TLS configuration for the hostname defined at `receive.ingress.hostname` parameter 3617 ## TLS certificates will be retrieved from a TLS secret with name: `{{- printf "%s-tls" .Values.receive.ingress.hostname }}` 3618 ## You can: 3619 ## - Use the `receive.ingress.secrets` parameter to create this TLS secret 3620 ## - Rely on cert-manager to create it by setting the corresponding annotations 3621 ## - Rely on Helm to create self-signed certificates by setting `receive.ingress.selfSigned=true` 3622 ## 3623 tls: false 3624 ## @param receive.ingress.selfSigned Create a TLS secret for this ingress record using self-signed certificates generated by Helm 3625 ## 3626 selfSigned: false 3627 ## @param receive.ingress.apiVersion Override API Version (automatically detected if not set) 3628 ## 3629 apiVersion: "" 3630 ## @param receive.ingress.path Ingress Path 3631 ## 3632 path: / 3633 ## @param receive.ingress.pathType Ingress Path type 3634 ## 3635 pathType: ImplementationSpecific 3636 3637 ## @section Thanos Receive Distributor parameters 3638 3639 receiveDistributor: 3640 ## @param receiveDistributor.enabled Enable/disable Thanos Receive Distributor component 3641 ## 3642 enabled: false 3643 ## @param receiveDistributor.logLevel Thanos Receive Distributor log level 3644 ## 3645 logLevel: info 3646 ## @param receiveDistributor.logFormat Thanos Receive Distributor log format 3647 ## 3648 logFormat: logfmt 3649 ## @param receiveDistributor.replicaLabel Label to treat as a replica indicator along which data is de-duplicated 3650 ## 3651 replicaLabel: replica 3652 ## @param receiveDistributor.replicationFactor Thanos Receive Distributor replication-factor 3653 ## 3654 replicationFactor: 1 3655 ## @param receiveDistributor.extraEnvVars Extra environment variables for Thanos Receive Distributor container 3656 ## e.g: 3657 ## extraEnvVars: 3658 ## - name: FOO 3659 ## value: "bar" 3660 ## 3661 extraEnvVars: [] 3662 ## @param receiveDistributor.extraEnvVarsCM Name of existing ConfigMap containing extra env vars for Thanos Receive Distributor nodes 3663 ## 3664 extraEnvVarsCM: "" 3665 ## @param receiveDistributor.extraEnvVarsSecret Name of existing Secret containing extra env vars for Thanos Receive Distributor nodes 3666 ## 3667 extraEnvVarsSecret: "" 3668 ## @param receiveDistributor.extraFlags Extra Flags to passed to Thanos Receive Distributor 3669 ## 3670 extraFlags: [] 3671 ## @param receiveDistributor.command Override default container command (useful when using custom images) 3672 ## 3673 command: [] 3674 ## @param receiveDistributor.args Override default container args (useful when using custom images) 3675 ## 3676 args: [] 3677 ## @param receiveDistributor.replicaCount Number of Thanos Receive Distributor replicas to deploy 3678 ## 3679 replicaCount: 1 3680 ## @param receiveDistributor.updateStrategy.type Update strategy type for Thanos Receive Distributor replicas 3681 ## 3682 updateStrategy: 3683 type: RollingUpdate 3684 ## K8s Pod Security Context for Thanos Receive Distributor pods 3685 ## https://kubernetes.io/docs/tasks/configure-pod-container/security-context/ 3686 ## @param receiveDistributor.podSecurityContext.enabled Enable security context for the Thanos Receive Distributor pods 3687 ## @param receiveDistributor.podSecurityContext.fsGroup Group ID for the filesystem used by Thanos Receive Distributor pods 3688 ## 3689 podSecurityContext: 3690 enabled: true 3691 fsGroup: 1001 3692 ## K8s containers' Security Context for Thanos Receive Distributor containers 3693 ## ref: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/#set-the-security-context-for-a-container 3694 ## @param receiveDistributor.containerSecurityContext.enabled Enable container security context for the Thanos Receive Distributor containers 3695 ## @param receiveDistributor.containerSecurityContext.runAsUser User ID for the service user running the Thanos Receive Distributor containers 3696 ## @param receiveDistributor.containerSecurityContext.runAsNonRoot Force the Thanos Receive Distributor containers to run as a non root user 3697 ## @param receiveDistributor.containerSecurityContext.allowPrivilegeEscalation Switch privilegeEscalation possibility on or off for Thanos Receive Distributor containers 3698 ## @param receiveDistributor.containerSecurityContext.readOnlyRootFilesystem mount / (root) as a readonly filesystem on Thanos Receive Distributor containers 3699 ## 3700 containerSecurityContext: 3701 enabled: true 3702 runAsUser: 1001 3703 runAsNonRoot: true 3704 allowPrivilegeEscalation: false 3705 readOnlyRootFilesystem: true 3706 ## Thanos Receive Distributor containers' resource requests and limits 3707 ## ref: https://kubernetes.io/docs/user-guide/compute-resources/ 3708 ## @param receiveDistributor.resources.limits The resources limits for the Thanos Receive container 3709 ## @param receiveDistributor.resources.requests The requested resources for the Thanos Receive container 3710 ## 3711 resources: 3712 limits: {} 3713 requests: {} 3714 ## Configure extra options for Thanos Receive Distributor containers' liveness and readiness probes 3715 ## ref: https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-probes/#configure-probes 3716 ## @param receiveDistributor.livenessProbe.enabled Enable livenessProbe on Thanos Receive Distributor containers 3717 ## @param receiveDistributor.livenessProbe.initialDelaySeconds Initial delay seconds for livenessProbe 3718 ## @param receiveDistributor.livenessProbe.periodSeconds Period seconds for livenessProbe 3719 ## @param receiveDistributor.livenessProbe.timeoutSeconds Timeout seconds for livenessProbe 3720 ## @param receiveDistributor.livenessProbe.failureThreshold Failure threshold for livenessProbe 3721 ## @param receiveDistributor.livenessProbe.successThreshold Success threshold for livenessProbe 3722 ## 3723 livenessProbe: 3724 enabled: true 3725 initialDelaySeconds: 30 3726 timeoutSeconds: 30 3727 periodSeconds: 10 3728 successThreshold: 1 3729 failureThreshold: 6 3730 ## @param receiveDistributor.readinessProbe.enabled Enable readinessProbe on Thanos Receive Distributor containers 3731 ## @param receiveDistributor.readinessProbe.initialDelaySeconds Initial delay seconds for readinessProbe 3732 ## @param receiveDistributor.readinessProbe.periodSeconds Period seconds for readinessProbe 3733 ## @param receiveDistributor.readinessProbe.timeoutSeconds Timeout seconds for readinessProbe 3734 ## @param receiveDistributor.readinessProbe.failureThreshold Failure threshold for readinessProbe 3735 ## @param receiveDistributor.readinessProbe.successThreshold Success threshold for readinessProbe 3736 ## 3737 readinessProbe: 3738 enabled: true 3739 initialDelaySeconds: 30 3740 timeoutSeconds: 30 3741 periodSeconds: 10 3742 successThreshold: 1 3743 failureThreshold: 6 3744 ## @param receiveDistributor.startupProbe.enabled Enable startupProbe on Thanos Receive Distributor containers 3745 ## @param receiveDistributor.startupProbe.initialDelaySeconds Initial delay seconds for startupProbe 3746 ## @param receiveDistributor.startupProbe.periodSeconds Period seconds for startupProbe 3747 ## @param receiveDistributor.startupProbe.timeoutSeconds Timeout seconds for startupProbe 3748 ## @param receiveDistributor.startupProbe.failureThreshold Failure threshold for startupProbe 3749 ## @param receiveDistributor.startupProbe.successThreshold Success threshold for startupProbe 3750 ## 3751 startupProbe: 3752 enabled: false 3753 initialDelaySeconds: 5 3754 periodSeconds: 5 3755 timeoutSeconds: 1 3756 failureThreshold: 15 3757 successThreshold: 1 3758 ## @param receiveDistributor.customLivenessProbe Custom livenessProbe that overrides the default one 3759 ## 3760 customLivenessProbe: {} 3761 ## @param receiveDistributor.customReadinessProbe Custom readinessProbe that overrides the default one 3762 ## 3763 customReadinessProbe: {} 3764 ## @param receiveDistributor.customStartupProbe Custom startupProbe that overrides the default one 3765 ## 3766 customStartupProbe: {} 3767 ## @param receiveDistributor.initContainers Add additional init containers to the Thanos Receive Distributor pods 3768 ## ref: https://kubernetes.io/docs/concepts/workloads/pods/init-containers/ 3769 ## e.g: 3770 ## initContainers: 3771 ## - name: your-image-name 3772 ## image: your-image 3773 ## imagePullPolicy: Always 3774 ## command: ['sh', '-c', 'echo "hello world"'] 3775 ## 3776 initContainers: [] 3777 ## @param receiveDistributor.sidecars Extra containers running as sidecars to Thanos Receive Distributor pods 3778 ## e.g: 3779 ## sidecars: 3780 ## - name: your-image-name 3781 ## image: your-image 3782 ## imagePullPolicy: Always 3783 ## ports: 3784 ## - name: portname 3785 ## containerPort: 1234 3786 ## 3787 sidecars: [] 3788 ## @param receiveDistributor.extraVolumes Extra volumes to add to Thanos Receive Distributor 3789 ## 3790 extraVolumes: [] 3791 ## @param receiveDistributor.extraVolumeMounts Extra volume mounts to add to the receive distributor container 3792 ## 3793 extraVolumeMounts: [] 3794 ## @param receiveDistributor.podAffinityPreset Thanos Receive pod affinity preset 3795 ## ref: https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/#inter-pod-affinity-and-anti-affinity 3796 ## Allowed values: soft, hard 3797 ## 3798 podAffinityPreset: "" 3799 ## @param receiveDistributor.podAntiAffinityPreset Thanos Receive pod anti-affinity preset. Ignored if `receiveDistributor.affinity` is set. Allowed values: `soft` or `hard` 3800 ## ref: https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/#inter-pod-affinity-and-anti-affinity 3801 ## 3802 podAntiAffinityPreset: soft 3803 ## Thanos Receive node affinity preset 3804 ## ref: https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/#node-affinity 3805 ## 3806 nodeAffinityPreset: 3807 ## @param receiveDistributor.nodeAffinityPreset.type Thanos Receive node affinity preset type. Ignored if `receiveDistributor.affinity` is set. Allowed values: `soft` or `hard` 3808 ## 3809 type: "" 3810 ## @param receiveDistributor.nodeAffinityPreset.key Thanos Receive node label key to match. Ignored if `receiveDistributor.affinity` is set. 3811 ## e.g: 3812 ## key: "kubernetes.io/e2e-az-name" 3813 ## 3814 key: "" 3815 ## @param receiveDistributor.nodeAffinityPreset.values Thanos Receive node label values to match. Ignored if `receiveDistributor.affinity` is set. 3816 ## e.g: 3817 ## values: 3818 ## - e2e-az1 3819 ## - e2e-az2 3820 ## 3821 values: [] 3822 ## @param receiveDistributor.affinity Thanos Receive Distributor affinity for pod assignment 3823 ## ref: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/#affinity-and-anti-affinity 3824 ## Note: receiveDistributor.podAffinityPreset, receiveDistributor.podAntiAffinityPreset, and receiveDistributor.nodeAffinityPreset will be ignored when it's set 3825 ## 3826 affinity: {} 3827 ## @param receiveDistributor.nodeSelector Thanos Receive Distributor node labels for pod assignment 3828 ## ref: https://kubernetes.io/docs/user-guide/node-selection/ 3829 ## 3830 nodeSelector: {} 3831 ## @param receiveDistributor.tolerations Thanos Receive Distributor tolerations for pod assignment 3832 ## ref: https://kubernetes.io/docs/concepts/configuration/taint-and-toleration/ 3833 ## 3834 tolerations: [] 3835 ## @param receiveDistributor.podLabels Thanos Receive Distributor pod labels 3836 ## ref: https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/ 3837 ## 3838 podLabels: {} 3839 ## @param receiveDistributor.podAnnotations Annotations for Thanos Receive Distributor pods 3840 ## ref: https://kubernetes.io/docs/concepts/overview/working-with-objects/annotations/ 3841 ## 3842 podAnnotations: {} 3843 ## @param receiveDistributor.hostAliases Deployment pod host aliases 3844 ## https://kubernetes.io/docs/concepts/services-networking/add-entries-to-pod-etc-hosts-with-host-aliases/ 3845 ## 3846 hostAliases: [] 3847 ## @param receiveDistributor.lifecycleHooks for the Thanos Receive Distributor container(s) to automate configuration before or after startup 3848 ## 3849 lifecycleHooks: {} 3850 ## @param receiveDistributor.priorityClassName Thanos Receive Distributor priorityClassName 3851 ## ref: https://kubernetes.io/docs/concepts/configuration/pod-priority-preemption/ 3852 ## 3853 priorityClassName: "" 3854 ## @param receiveDistributor.schedulerName Name of the k8s scheduler (other than default) for Thanos Receive Distributor pods 3855 ## ref: https://kubernetes.io/docs/tasks/administer-cluster/configure-multiple-schedulers/ 3856 ## 3857 schedulerName: "" 3858 ## @param receiveDistributor.topologySpreadConstraints Topology Spread Constraints for Thanos Receive Distributor pods assignment spread across your cluster among failure-domains 3859 ## Ref: https://kubernetes.io/docs/concepts/workloads/pods/pod-topology-spread-constraints/#spread-constraints-for-pods 3860 ## 3861 topologySpreadConstraints: [] 3862 ## @param receiveDistributor.automountServiceAccountToken Enable/disable auto mounting of the service account token only for the deployment 3863 ## 3864 automountServiceAccountToken: true 3865 ## ServiceAccount configuration 3866 ## @param receiveDistributor.serviceAccount.create Specifies whether a ServiceAccount should be created 3867 ## @param receiveDistributor.serviceAccount.name Name of the service account to use. If not set and create is true, a name is generated using the fullname template. 3868 ## @param receiveDistributor.serviceAccount.annotations Annotations for Thanos Receive Distributor Service Account 3869 ## @param receiveDistributor.serviceAccount.automountServiceAccountToken Enable/disable auto mounting of the service account token 3870 ## DEPRECATED receive.serviceAccount.existingServiceAccount - This value has been deprecated and will be removed in a future release, please use `serviceAccount.name` in combination with `serviceAccount.create=false` instead 3871 ## 3872 serviceAccount: 3873 create: true 3874 name: "" 3875 annotations: {} 3876 automountServiceAccountToken: true 3877 ## existingServiceAccount: "" 3878 ## Thanos Receive Distributor Autoscaling configuration 3879 ## ref: https://kubernetes.io/docs/tasks/run-application/horizontal-pod-autoscale/ 3880 ## @param receiveDistributor.autoscaling.enabled Enable autoscaling for Thanos Receive Distributor 3881 ## @param receiveDistributor.autoscaling.minReplicas Minimum number of Thanos Receive Distributor replicas 3882 ## @param receiveDistributor.autoscaling.maxReplicas Maximum number of Thanos Receive Distributor replicas 3883 ## @param receiveDistributor.autoscaling.targetCPU Target CPU utilization percentage 3884 ## @param receiveDistributor.autoscaling.targetMemory Target Memory utilization percentage 3885 ## 3886 autoscaling: 3887 enabled: false 3888 minReplicas: "" 3889 maxReplicas: "" 3890 targetCPU: "" 3891 targetMemory: "" 3892 ## Thanos Receive Distributor Pod Disruption Budget configuration 3893 ## ref: https://kubernetes.io/docs/tasks/run-application/configure-pdb 3894 ## @param receiveDistributor.pdb.create Enable/disable a Pod Disruption Budget creation for Thanos Receive Distributor 3895 ## @param receiveDistributor.pdb.minAvailable Minimum number/percentage of pods that should remain scheduled 3896 ## @param receiveDistributor.pdb.maxUnavailable Maximum number/percentage of pods that may be made unavailable 3897 ## 3898 pdb: 3899 create: false 3900 minAvailable: 1 3901 maxUnavailable: "" 3902 3903 ## @section Metrics parameters 3904 3905 ## Prometheus metrics 3906 ## 3907 metrics: 3908 ## @param metrics.enabled Enable the export of Prometheus metrics 3909 ## 3910 enabled: false 3911 ## Prometheus Operator ServiceMonitor configuration 3912 ## 3913 serviceMonitor: 3914 ## @param metrics.serviceMonitor.enabled Specify if a ServiceMonitor will be deployed for Prometheus Operator 3915 ## 3916 enabled: false 3917 ## @param metrics.serviceMonitor.namespace Namespace in which Prometheus is running 3918 ## 3919 namespace: "" 3920 ## @param metrics.serviceMonitor.labels Extra labels for the ServiceMonitor 3921 ## 3922 labels: {} 3923 ## @param metrics.serviceMonitor.jobLabel The name of the label on the target service to use as the job name in Prometheus 3924 ## 3925 jobLabel: "" 3926 ## @param metrics.serviceMonitor.interval How frequently to scrape metrics 3927 ## e.g: 3928 ## interval: 10s 3929 ## 3930 interval: "" 3931 ## @param metrics.serviceMonitor.scrapeTimeout Timeout after which the scrape is ended 3932 ## e.g: 3933 ## scrapeTimeout: 10s 3934 ## 3935 scrapeTimeout: "" 3936 ## @param metrics.serviceMonitor.metricRelabelings [array] Specify additional relabeling of metrics 3937 ## 3938 metricRelabelings: [] 3939 ## @param metrics.serviceMonitor.relabelings [array] Specify general relabeling 3940 ## 3941 relabelings: [] 3942 ## @param metrics.serviceMonitor.selector Prometheus instance selector labels 3943 ## ref: https://github.com/bitnami/charts/tree/main/bitnami/prometheus-operator#prometheus-configuration 3944 ## 3945 selector: {} 3946 3947 ## PrometheusRule CRD configuration 3948 ## 3949 prometheusRule: 3950 ## @param metrics.prometheusRule.enabled If `true`, creates a Prometheus Operator PrometheusRule (also requires `metrics.enabled` to be `true`) 3951 ## 3952 enabled: false 3953 ## Configure prometheus rules 3954 ## 3955 default: 3956 ## @extra metrics.prometheusRule.default.absent_rules Enable absent_rules when metrics.prometheusRule.default.create is false (also requires `metrics.enabled` to be `true`) 3957 ## @extra metrics.prometheusRule.default.compaction Enable compaction rules when metrics.prometheusRule.default.create is false (also requires `metrics.enabled` to be `true`) 3958 ## @extra metrics.prometheusRule.default.query Enable query when metrics.prometheusRule.default.create is false (also requires `metrics.enabled` to be `true`) 3959 ## @extra metrics.prometheusRule.default.receive Enable receive rules when metrics.prometheusRule.default.create is false (also requires `metrics.enabled` to be `true`) 3960 ## @extra metrics.prometheusRule.default.replicate Enable replicate rules when metrics.prometheusRule.default.create is false (also requires `metrics.enabled` to be `true`) 3961 ## @extra metrics.prometheusRule.default.ruler Enable ruler rules when metrics.prometheusRule.default.create is false (also requires `metrics.enabled` to be `true`) 3962 ## @extra metrics.prometheusRule.default.sidecar Enable sidecar rules when metrics.prometheusRule.default.create is false (also requires `metrics.enabled` to be `true`) 3963 ## @extra metrics.prometheusRule.default.store_gateway Enable store_gateway rules when metrics.prometheusRule.default.create is false (also requires `metrics.enabled` to be `true`) 3964 ## @param metrics.prometheusRule.default.create would create all default prometheus alerts 3965 ## 3966 create: false 3967 ## @extra metrics.prometheusRule.default.disabled.ThanosCompactIsDown Disable ThanosCompactIsDown rule when metrics.prometheusRule.default.create or metrics.prometheusRule.default.absent_rules is true 3968 ## @extra metrics.prometheusRule.default.disabled.ThanosQueryIsDown Disable ThanosQueryIsDown rule when metrics.prometheusRule.default.create or metrics.prometheusRule.default.absent_rules is true 3969 ## @extra metrics.prometheusRule.default.disabled.ThanosReceiveIsDown Disable ThanosReceiveIsDown rule when metrics.prometheusRule.default.create or metrics.prometheusRule.default.absent_rules is true 3970 ## @extra metrics.prometheusRule.default.disabled.ThanosRuleIsDown Disable ThanosRuleIsDown rule when metrics.prometheusRule.default.create or metrics.prometheusRule.default.absent_rules is true 3971 ## @extra metrics.prometheusRule.default.disabled.ThanosSidecarIsDown Disable ThanosSidecarIsDown rule when metrics.prometheusRule.default.create or metrics.prometheusRule.default.absent_rules is true 3972 ## @extra metrics.prometheusRule.default.disabled.ThanosStoreIsDown Disable ThanosStoreIsDown rule when metrics.prometheusRule.default.create or metrics.prometheusRule.default.absent_rules is true 3973 ## @extra metrics.prometheusRule.default.disabled.ThanosCompactMultipleRunning Disable ThanosCompactMultipleRunning rule when metrics.prometheusRule.default.create or metrics.prometheusRule.default.compaction is true 3974 ## @extra metrics.prometheusRule.default.disabled.ThanosCompactHalted Disable ThanosCompactMultipleRunning rule when metrics.prometheusRule.default.create or metrics.prometheusRule.default.compaction is true 3975 ## @extra metrics.prometheusRule.default.disabled.ThanosCompactHighCompactionFailures Disable ThanosCompactMultipleRunning rule when metrics.prometheusRule.default.create or metrics.prometheusRule.default.compaction is true 3976 ## @extra metrics.prometheusRule.default.disabled.ThanosCompactBucketHighOperationFailures Disable ThanosCompactMultipleRunning rule when metrics.prometheusRule.default.create or metrics.prometheusRule.default.compaction is true 3977 ## @extra metrics.prometheusRule.default.disabled.ThanosCompactHasNotRun Disable ThanosCompactMultipleRunning rule when metrics.prometheusRule.default.create or metrics.prometheusRule.default.compaction is true 3978 ## @extra metrics.prometheusRule.default.disabled.ThanosQueryHttpRequestQueryErrorRateHigh Disable ThanosQueryHttpRequestQueryErrorRateHigh rule when metrics.prometheusRule.default.create or metrics.prometheusRule.default.query is true 3979 ## @extra metrics.prometheusRule.default.disabled.ThanosQueryHttpRequestQueryRangeErrorRateHigh Disable ThanosQueryHttpRequestQueryRangeErrorRateHigh rule when metrics.prometheusRule.default.create or metrics.prometheusRule.default.query is true 3980 ## @extra metrics.prometheusRule.default.disabled.ThanosQueryGrpcServerErrorRate Disable ThanosQueryGrpcServerErrorRate rule when metrics.prometheusRule.default.create or metrics.prometheusRule.default.query is true 3981 ## @extra metrics.prometheusRule.default.disabled.ThanosQueryGrpcClientErrorRate Disable ThanosQueryGrpcClientErrorRate rule when metrics.prometheusRule.default.create or metrics.prometheusRule.default.query is true 3982 ## @extra metrics.prometheusRule.default.disabled.ThanosQueryHighDNSFailures Disable ThanosQueryHighDNSFailures rule when metrics.prometheusRule.default.create or metrics.prometheusRule.default.query is true 3983 ## @extra metrics.prometheusRule.default.disabled.ThanosQueryInstantLatencyHigh Disable ThanosQueryInstantLatencyHigh rule when metrics.prometheusRule.default.create or metrics.prometheusRule.default.query is true 3984 ## @extra metrics.prometheusRule.default.disabled.ThanosQueryRangeLatencyHigh Disable ThanosQueryRangeLatencyHigh rule when metrics.prometheusRule.default.create or metrics.prometheusRule.default.query is true 3985 ## @extra metrics.prometheusRule.default.disabled.ThanosQueryOverload Disable ThanosQueryOverload rule when metrics.prometheusRule.default.create or metrics.prometheusRule.default.query is true 3986 ## @extra metrics.prometheusRule.default.disabled.ThanosReceiveHttpRequestErrorRateHigh Disable ThanosReceiveHttpRequestErrorRateHigh rule when metrics.prometheusRule.default.create or metrics.prometheusRule.default.receive is true 3987 ## @extra metrics.prometheusRule.default.disabled.ThanosReceiveHttpRequestLatencyHigh Disable ThanosReceiveHttpRequestLatencyHigh rule when metrics.prometheusRule.default.create or metrics.prometheusRule.default.receive is true 3988 ## @extra metrics.prometheusRule.default.disabled.ThanosReceiveHighReplicationFailures Disable ThanosReceiveHighReplicationFailures rule when metrics.prometheusRule.default.create or metrics.prometheusRule.default.receive is true 3989 ## @extra metrics.prometheusRule.default.disabled.ThanosReceiveHighForwardRequestFailures Disable ThanosReceiveHighForwardRequestFailures rule when metrics.prometheusRule.default.create or metrics.prometheusRule.default.receive is true 3990 ## @extra metrics.prometheusRule.default.disabled.ThanosReceiveHighHashringFileRefreshFailures Disable ThanosReceiveHighHashringFileRefreshFailures rule when metrics.prometheusRule.default.create or metrics.prometheusRule.default.receive is true 3991 ## @extra metrics.prometheusRule.default.disabled.ThanosReceiveConfigReloadFailure Disable ThanosReceiveConfigReloadFailure rule when metrics.prometheusRule.default.create or metrics.prometheusRule.default.receive is true 3992 ## @extra metrics.prometheusRule.default.disabled.ThanosReceiveNoUpload Disable ThanosReceiveNoUpload rule when metrics.prometheusRule.default.create or metrics.prometheusRule.default.receive is true 3993 ## @extra metrics.prometheusRule.default.disabled.ThanosReceiveTrafficBelowThreshold Disable ThanosReceiveTrafficBelowThreshold rule when metrics.prometheusRule.default.create or metrics.prometheusRule.default.receive is true 3994 ## @extra metrics.prometheusRule.default.disabled.ThanosBucketReplicateErrorRate Disable ThanosBucketReplicateErrorRate rule when metrics.prometheusRule.default.create or metrics.prometheusRule.default.receive is true 3995 ## @extra metrics.prometheusRule.default.disabled.ThanosBucketReplicateRunLatency Disable ThanosBucketReplicateRunLatency rule when metrics.prometheusRule.default.create or metrics.prometheusRule.default.receive is true 3996 ## @extra metrics.prometheusRule.default.disabled.ThanosRuleQueueIsDroppingAlerts Disable ThanosRuleQueueIsDroppingAlerts rule when metrics.prometheusRule.default.create or metrics.prometheusRule.default.ruler is true 3997 ## @extra metrics.prometheusRule.default.disabled.ThanosRuleSenderIsFailingAlerts Disable ThanosRuleSenderIsFailingAlerts rule when metrics.prometheusRule.default.create or metrics.prometheusRule.default.ruler is true 3998 ## @extra metrics.prometheusRule.default.disabled.ThanosRuleHighRuleEvaluationFailures Disable ThanosRuleHighRuleEvaluationFailures rule when metrics.prometheusRule.default.create or metrics.prometheusRule.default.ruler is true 3999 ## @extra metrics.prometheusRule.default.disabled.ThanosRuleHighRuleEvaluationWarnings Disable ThanosRuleHighRuleEvaluationWarnings rule when metrics.prometheusRule.default.create or metrics.prometheusRule.default.ruler is true 4000 ## @extra metrics.prometheusRule.default.disabled.ThanosRuleRuleEvaluationLatencyHigh Disable ThanosRuleRuleEvaluationLatencyHigh rule when metrics.prometheusRule.default.create or metrics.prometheusRule.default.ruler is true 4001 ## @extra metrics.prometheusRule.default.disabled.ThanosRuleGrpcErrorRate Disable ThanosRuleGrpcErrorRate rule when metrics.prometheusRule.default.create or metrics.prometheusRule.default.ruler is true 4002 ## @extra metrics.prometheusRule.default.disabled.ThanosRuleConfigReloadFailure Disable ThanosRuleConfigReloadFailure rule when metrics.prometheusRule.default.create or metrics.prometheusRule.default.ruler is true 4003 ## @extra metrics.prometheusRule.default.disabled.ThanosRuleQueryHighDNSFailures Disable ThanosRuleQueryHighDNSFailures rule when metrics.prometheusRule.default.create or metrics.prometheusRule.default.ruler is true 4004 ## @extra metrics.prometheusRule.default.disabled.ThanosRuleAlertmanagerHighDNSFailures Disable ThanosRuleAlertmanagerHighDNSFailures rule when metrics.prometheusRule.default.create or metrics.prometheusRule.default.ruler is true 4005 ## @extra metrics.prometheusRule.default.disabled.ThanosRuleNoEvaluationFor10Intervals Disable ThanosRuleNoEvaluationFor10Intervals rule when metrics.prometheusRule.default.create or metrics.prometheusRule.default.ruler is true 4006 ## @extra metrics.prometheusRule.default.disabled.ThanosNoRuleEvaluations Disable ThanosNoRuleEvaluations rule when metrics.prometheusRule.default.create or metrics.prometheusRule.default.ruler is true 4007 ## @extra metrics.prometheusRule.default.disabled.ThanosSidecarBucketOperationsFailed Disable ThanosSidecarBucketOperationsFailed rule when metrics.prometheusRule.default.create or metrics.prometheusRule.default.sidecar is true 4008 ## @extra metrics.prometheusRule.default.disabled.ThanosSidecarNoConnectionToStartedPrometheus Disable ThanosSidecarNoConnectionToStartedPrometheus rule when metrics.prometheusRule.default.create or metrics.prometheusRule.default.sidecar is true 4009 ## @extra metrics.prometheusRule.default.disabled.ThanosStoreGrpcErrorRate Disable ThanosSidecarNoConnectionToStartedPrometheus rule when metrics.prometheusRule.default.create or metrics.prometheusRule.default.store_gateway is true 4010 ## @extra metrics.prometheusRule.default.disabled.ThanosStoreSeriesGateLatencyHigh Disable ThanosStoreSeriesGateLatencyHigh rule when metrics.prometheusRule.default.create or metrics.prometheusRule.default.store_gateway is true 4011 ## @extra metrics.prometheusRule.default.disabled.ThanosStoreBucketHighOperationFailures Disable ThanosStoreBucketHighOperationFailures rule when metrics.prometheusRule.default.create or metrics.prometheusRule.default.store_gateway is true 4012 ## @extra metrics.prometheusRule.default.disabled.ThanosStoreObjstoreOperationLatencyHigh Disable ThanosStoreObjstoreOperationLatencyHigh rule when metrics.prometheusRule.default.create or metrics.prometheusRule.default.store_gateway is true 4013 ## @param metrics.prometheusRule.default.disabled disable one specific prometheus alert rule 4014 ## 4015 disabled: {} 4016 ## @param metrics.prometheusRule.namespace Namespace in which the PrometheusRule CRD is created 4017 ## 4018 namespace: "" 4019 ## @param metrics.prometheusRule.additionalLabels Additional labels for the prometheusRule 4020 ## 4021 additionalLabels: {} 4022 ## @param metrics.prometheusRule.groups Prometheus Rule Groups for Thanos components 4023 ## These are just examples rules, please adapt them to your needs. 4024 ## groups: 4025 ## - name: Compactor 4026 ## rules: 4027 ## - alert: ThanosCompactMultipleRunning 4028 ## annotations: 4029 ## description: No more than one Thanos Compact instance should be running at once. There are {{`{{`}}$value{{`}}`}} instances running. 4030 ## runbook_url: https://github.com/thanos-io/thanos/tree/main/mixin/runbook.md#alert-name-thanoscompactmultiplerunning 4031 ## summary: Thanos Compact has multiple instances running. 4032 ## expr: sum by (job) (up{job=~"{{ template "common.names.fullname" . }}-compact.*"}) > 1 4033 ## for: 5m 4034 ## labels: 4035 ## severity: warning 4036 groups: [] 4037 4038 ## @section Volume Permissions parameters 4039 4040 ## 'volumePermissions' init container parameters 4041 ## Changes the owner and group of the persistent volume mount point to runAsUser:fsGroup values 4042 ## based on the *podSecurityContext/*containerSecurityContext parameters 4043 ## 4044 volumePermissions: 4045 ## @param volumePermissions.enabled Enable init container that changes the owner/group of the PV mount point to `runAsUser:fsGroup` 4046 ## 4047 enabled: false 4048 ## @param volumePermissions.image.registry Init container volume-permissions image registry 4049 ## @param volumePermissions.image.repository Init container volume-permissions image repository 4050 ## @param volumePermissions.image.tag Init container volume-permissions image tag 4051 ## @param volumePermissions.image.digest Init container volume-permissions image digest in the way sha256:aa.... Please note this parameter, if set, will override the tag 4052 ## @param volumePermissions.image.pullPolicy Init container volume-permissions image pull policy 4053 ## @param volumePermissions.image.pullSecrets Specify docker-registry secret names as an array 4054 ## 4055 image: 4056 registry: docker.io 4057 repository: bitnami/bitnami-shell 4058 tag: 11-debian-11-r92 4059 digest: "" 4060 ## Specify a imagePullPolicy. Defaults to 'Always' if image tag is 'latest', else set to 'IfNotPresent' 4061 ## ref: https://kubernetes.io/docs/user-guide/images/#pre-pulling-images 4062 ## 4063 pullPolicy: IfNotPresent 4064 ## Optionally specify an array of imagePullSecrets. 4065 ## Secrets must be manually created in the namespace. 4066 ## ref: https://kubernetes.io/docs/tasks/configure-pod-container/pull-image-private-registry/ 4067 ## e.g: 4068 ## pullSecrets: 4069 ## - myRegistryKeySecretName 4070 ## 4071 pullSecrets: [] 4072 4073 ## @section MinIO® chart parameters 4074 ## @extra minio For full list of MinIO® values configurations please refere [here](https://github.com/bitnami/charts/tree/main/bitnami/minio) 4075 4076 minio: 4077 ## @param minio.enabled Enable/disable MinIO® chart installation 4078 ## to be used as an objstore for Thanos 4079 ## 4080 enabled: false 4081 ## MinIO® authentication parameters 4082 ## 4083 auth: 4084 ## @param minio.auth.rootUser MinIO® root username 4085 ## 4086 rootUser: admin 4087 ## @param minio.auth.rootPassword Password for MinIO® root user 4088 ## 4089 rootPassword: "" 4090 ## @param minio.defaultBuckets Comma, semi-colon or space separated list of MinIO® buckets to create 4091 ## 4092 defaultBuckets: 'thanos' 4093 4094 ## @section NetWorkPolicy parameters 4095 4096 networkPolicy: 4097 ## @param networkPolicy.enabled Enable creation of NetworkPolicy resources. Only Ingress traffic is filtered for now. 4098 ## 4099 enabled: false 4100 ## @param networkPolicy.allowExternal Don't require client label for connections 4101 ## The Policy model to apply. When set to false, only pods with the correct 4102 ## client label will have network access to http and grpc thanos port. 4103 ## When true, thanos will accept connections from any source 4104 ## (with the correct destination port). 4105 ## 4106 allowExternal: true 4107 ## @param networkPolicy.explicitNamespacesSelector A Kubernetes LabelSelector to explicitly select namespaces from which traffic could be allowed 4108 ## If explicitNamespacesSelector is missing or set to {}, only client Pods that are in the networkPolicy's namespace 4109 ## and that match other criteria, the ones that have the good label, can reach thanos. 4110 ## But sometimes, we want thanos to be accessible to clients from other namespaces, in this case, we can use this 4111 ## LabelSelector to select these namespaces, note that the networkPolicy's namespace should also be explicitly added. 4112 ## 4113 ## Example: 4114 ## explicitNamespacesSelector: 4115 ## matchLabels: 4116 ## role: frontend 4117 ## matchExpressions: 4118 ## - {key: role, operator: In, values: [frontend]} 4119 ## 4120 explicitNamespacesSelector: {} 4121 4122 verrazzano: 4123 isIstioEnabled: true