diff --git a/CHANGELOG.md b/CHANGELOG.md index c8c3f023c62..b2265bc9146 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,11 +1,12 @@ ## main / unreleased * [CHANGE] tempo: check configuration returns now a list of warnings [#1663](https://github.com/grafana/tempo/pull/1663) (@frzifus) +* [CHANGE] Make DNS address fully qualified to reduce DNS lookups in Kubernetes [#1687](https://github.com/grafana/tempo/pull/1687) (@electron0zero) +* [CHANGE] Improve parquet compaction memory profile when dropping spans [#1692](https://github.com/grafana/tempo/pull/1692) (@joe-elliott) * [CHANGE] Increase default values for `server.grpc_server_max_recv_msg_size` and `server.grpc_server_max_send_msg_size` from 4MB to 16MB [#1688](https://github.com/grafana/tempo/pull/1688) (@mapno) * [ENHANCEMENT] metrics-generator: expose span size as a metric [#1662](https://github.com/grafana/tempo/pull/1662) (@ie-pham) * [ENHANCEMENT] Set Max Idle connections to 100 for Azure, should reduce DNS errors in Azure [#1632](https://github.com/grafana/tempo/pull/1632) (@electron0zero) -* [CHANGE] Make DNS address fully qualified to reduce DNS lookups in Kubernetes [#1687](https://github.com/grafana/tempo/pull/1687) (@electron0zero) -* [CHANGE] Improve parquet compaction memory profile when dropping spans [#1692](https://github.com/grafana/tempo/pull/1692) (@joe-elliott) +* [ENHANCEMENT] Add PodDisruptionBudget to ingesters in jsonnet [#1691](https://github.com/grafana/tempo/pull/1691) (@joe-elliott) ## v1.5.0 / 2022-08-17 diff --git a/example/tk/tempo-microservices/main.jsonnet b/example/tk/tempo-microservices/main.jsonnet index 3aa3b674603..25e2e6f0b35 100644 --- a/example/tk/tempo-microservices/main.jsonnet +++ b/example/tk/tempo-microservices/main.jsonnet @@ -35,6 +35,10 @@ minio + metrics + load + tempo { }, }, }, + metrics_generator+: { + ephemeral_storage_limit_size: '2Gi', + ephemeral_storage_request_size: '1Gi', + }, memcached+: { replicas: 1, }, diff --git a/operations/jsonnet-compiled/PodDisruptionBudget-ingester.yaml b/operations/jsonnet-compiled/PodDisruptionBudget-ingester.yaml new file mode 100644 index 00000000000..3baa0ebece1 --- /dev/null +++ b/operations/jsonnet-compiled/PodDisruptionBudget-ingester.yaml @@ -0,0 +1,12 @@ +apiVersion: policy/v1beta1 +kind: PodDisruptionBudget +metadata: + labels: + name: ingester + name: ingester + namespace: tracing +spec: + maxUnavailable: 1 + selector: + matchLabels: + name: ingester diff --git a/operations/jsonnet/microservices/ingester.libsonnet b/operations/jsonnet/microservices/ingester.libsonnet index 38c002209b9..1863d17790d 100644 --- a/operations/jsonnet/microservices/ingester.libsonnet +++ b/operations/jsonnet/microservices/ingester.libsonnet @@ -79,4 +79,12 @@ servicePort.withProtocol('TCP'), ], ) + service.mixin.spec.withClusterIp('None'), // headless service + + local podDisruptionBudget = k.policy.v1beta1.podDisruptionBudget, + ingester_pdb: + podDisruptionBudget.new() + + podDisruptionBudget.mixin.metadata.withName(target_name) + + podDisruptionBudget.mixin.metadata.withLabels({ name: target_name }) + + podDisruptionBudget.mixin.spec.selector.withMatchLabels({ name: target_name }) + + podDisruptionBudget.mixin.spec.withMaxUnavailable(1), }