Skip to content

Commit 71b1311

Browse files
authored
Merge branch 'master' into distributor-inflight-client-limit-5xx
Signed-off-by: Anna Tran <[email protected]>
2 parents ac14d64 + 020cc45 commit 71b1311

File tree

58 files changed

+1549
-611
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

58 files changed

+1549
-611
lines changed

CHANGELOG.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -33,13 +33,15 @@
3333
* [ENHANCEMENT] Distributor: Add new `cortex_reduced_resolution_histogram_samples_total` metric to track the number of histogram samples which resolution was reduced. #6182
3434
* [ENHANCEMENT] StoreGateway: Implement metadata API limit in queryable. #6195
3535
* [ENHANCEMENT] Ingester: Add matchers to ingester LabelNames() and LabelNamesStream() RPC. #6209
36+
* [ENHANCEMENT] KV: Add TLS configs to consul. #6374
3637
* [ENHANCEMENT] Ingester/Store Gateway Clients: Introduce an experimental HealthCheck handler to quickly fail requests directed to unhealthy targets. #6225 #6257
3738
* [ENHANCEMENT] Upgrade build image and Go version to 1.23.2. #6261 #6262
3839
* [ENHANCEMENT] Ingester: Introduce a new experimental feature for caching expanded postings on the ingester. #6296
3940
* [ENHANCEMENT] Querier/Ruler: Expose `store_gateway_consistency_check_max_attempts` for max retries when querying store gateway in consistency check. #6276
4041
* [ENHANCEMENT] StoreGateway: Add new `cortex_bucket_store_chunk_pool_inuse_bytes` metric to track the usage in chunk pool. #6310
4142
* [ENHANCEMENT] Distributor: Add new `cortex_distributor_inflight_client_requests` metric to track number of ingester client inflight requests. #6358
4243
* [ENHANCEMENT] Distributor: Expose `cortex_label_size_bytes` native histogram metric. #6372
44+
* [ENHANCEMENT] Add new option `-server.grpc_server-num-stream-workers` to configure the number of worker goroutines that should be used to process incoming streams. #6386
4345
* [ENHANCEMENT] Distributor: Return HTTP 5XX instead of HTTP 4XX when instance limits are hit. #6358
4446
* [BUGFIX] Runtime-config: Handle absolute file paths when working directory is not / #6224
4547
* [BUGFIX] Ruler: Allow rule evaluation to complete during shutdown. #6326

docs/configuration/config-file-reference.md

Lines changed: 34 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2445,7 +2445,7 @@ The `consul_config` configures the consul client. The supported CLI flags `<pref
24452445
# CLI flag: -<prefix>.consul.acl-token
24462446
[acl_token: <string> | default = ""]
24472447
2448-
# HTTP timeout when talking to Consul
2448+
# HTTP timeout when talking to Consul.
24492449
# CLI flag: -<prefix>.consul.client-timeout
24502450
[http_client_timeout: <duration> | default = 20s]
24512451
@@ -2461,6 +2461,33 @@ The `consul_config` configures the consul client. The supported CLI flags `<pref
24612461
# Burst size used in rate limit. Values less than 1 are treated as 1.
24622462
# CLI flag: -<prefix>.consul.watch-burst-size
24632463
[watch_burst_size: <int> | default = 1]
2464+
2465+
# Enable TLS.
2466+
# CLI flag: -<prefix>.consul.tls-enabled
2467+
[tls_enabled: <boolean> | default = false]
2468+
2469+
# Path to the client certificate file, which will be used for authenticating
2470+
# with the server. Also requires the key path to be configured.
2471+
# CLI flag: -<prefix>.consul.tls-cert-path
2472+
[tls_cert_path: <string> | default = ""]
2473+
2474+
# Path to the key file for the client certificate. Also requires the client
2475+
# certificate to be configured.
2476+
# CLI flag: -<prefix>.consul.tls-key-path
2477+
[tls_key_path: <string> | default = ""]
2478+
2479+
# Path to the CA certificates file to validate server certificate against. If
2480+
# not set, the host's root CA certificates are used.
2481+
# CLI flag: -<prefix>.consul.tls-ca-path
2482+
[tls_ca_path: <string> | default = ""]
2483+
2484+
# Override the expected name on the server certificate.
2485+
# CLI flag: -<prefix>.consul.tls-server-name
2486+
[tls_server_name: <string> | default = ""]
2487+
2488+
# Skip validating server certificate.
2489+
# CLI flag: -<prefix>.consul.tls-insecure-skip-verify
2490+
[tls_insecure_skip_verify: <boolean> | default = false]
24642491
```
24652492

24662493
### `distributor_config`
@@ -5390,6 +5417,12 @@ grpc_tls_config:
53905417
# CLI flag: -server.grpc-max-concurrent-streams
53915418
[grpc_server_max_concurrent_streams: <int> | default = 100]
53925419
5420+
# Number of worker goroutines that should be used to process incoming
5421+
# streams.Setting this 0 (default) will disable workers and spawn a new
5422+
# goroutine for each stream.
5423+
# CLI flag: -server.grpc_server-num-stream-workers
5424+
[grpc_server_num_stream_workers: <int> | default = 0]
5425+
53935426
# The duration after which an idle connection should be closed. Default:
53945427
# infinity
53955428
# CLI flag: -server.grpc.keepalive.max-connection-idle

go.mod

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -51,9 +51,9 @@ require (
5151
github.com/sony/gobreaker v1.0.0
5252
github.com/spf13/afero v1.11.0
5353
github.com/stretchr/testify v1.10.0
54-
github.com/thanos-io/objstore v0.0.0-20241028150459-cfdd0e50390d
55-
github.com/thanos-io/promql-engine v0.0.0-20240921092401-37747eddbd31
56-
github.com/thanos-io/thanos v0.35.2-0.20241118113652-f998fc59c171
54+
github.com/thanos-io/objstore v0.0.0-20241111205755-d1dd89d41f97
55+
github.com/thanos-io/promql-engine v0.0.0-20241106100125-097e6e9f425a
56+
github.com/thanos-io/thanos v0.37.0
5757
github.com/uber/jaeger-client-go v2.30.0+incompatible
5858
github.com/weaveworks/common v0.0.0-20230728070032-dd9e68f319d5
5959
go.etcd.io/etcd/api/v3 v3.5.17
@@ -80,7 +80,7 @@ require (
8080
github.com/bboreham/go-loser v0.0.0-20230920113527-fcc2c21820a3
8181
github.com/cespare/xxhash/v2 v2.3.0
8282
github.com/google/go-cmp v0.6.0
83-
github.com/sercand/kuberesolver/v4 v4.0.0
83+
github.com/sercand/kuberesolver/v5 v5.1.1
8484
go.opentelemetry.io/collector/pdata v1.20.0
8585
golang.org/x/exp v0.0.0-20240613232115-7f521ea00fb8
8686
google.golang.org/protobuf v1.35.2
@@ -246,6 +246,9 @@ require (
246246
k8s.io/utils v0.0.0-20240711033017-18e509b52bc8 // indirect
247247
)
248248

249+
// Using cortex fork of weaveworks/common
250+
replace github.com/weaveworks/common => github.com/cortexproject/weaveworks-common v0.0.0-20241129212437-96019edf21f1
251+
249252
// Override since git.apache.org is down. The docs say to fetch from github.
250253
replace git.apache.org/thrift.git => github.com/apache/thrift v0.0.0-20180902110319-2566ecd5d999
251254

@@ -270,8 +273,5 @@ replace github.com/google/gnostic => github.com/googleapis/gnostic v0.6.9
270273
// https://github.com/thanos-io/thanos/blob/fdeea3917591fc363a329cbe23af37c6fff0b5f0/go.mod#L265
271274
replace gopkg.in/alecthomas/kingpin.v2 => github.com/alecthomas/kingpin v1.3.8-0.20210301060133-17f40c25f497
272275

273-
// Pin kuberesolver/v5 to support new grpc version. Need to upgrade kuberesolver version on weaveworks/common.
274-
replace github.com/sercand/kuberesolver/v4 => github.com/sercand/kuberesolver/v5 v5.1.1
275-
276276
// gRPC 1.66 introduced memory pooling which breaks Cortex queries. Pin 1.65.0 until we have a fix.
277277
replace google.golang.org/grpc => google.golang.org/grpc v1.65.0

0 commit comments

Comments
 (0)