Ensure mTLS support for GRPC clients is available and consistent #4187
Description
I'm opening this issue after reviewing #4176.
There are a few places where we have specific inter-component grpc connections, namely querier->ingester
(which you've handled in this PR), querier->query-frontend|query-scheduler
(the latter is a recently added component), query-frontend->query-scheduler
, and querier->index-gateway
(another recently added component). We should ensure that mTLS over grpc works as expected, is configurable, and is applied consistently within the codebase.
This is already handled in the configuration chain:
https://github.com/cortexproject/cortex/blob/master/pkg/util/grpcclient/grpcclient.go#L78
https://github.com/cortexproject/cortex/blob/master/pkg/util/tls/tls.go#L78
Should we specify configuration blocks for each grpc client or should they be globally specified?