Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Expose S3 client TLS configuration #1981

Closed
jdbaldry opened this issue Jun 1, 2022 · 7 comments · Fixed by #7959
Closed

Expose S3 client TLS configuration #1981

jdbaldry opened this issue Jun 1, 2022 · 7 comments · Fixed by #7959
Labels
enhancement New feature or request storage/s3

Comments

@jdbaldry
Copy link
Member

jdbaldry commented Jun 1, 2022

Is your feature request related to a problem? Please describe.

When using an S3 compatible object storage provider, it might be the case that you need to provision the S3 client with the certificates in order to verify the server certificate. The only solution presently is to enable insecure verification as you cannot provide TLS config to the s3 client via our current configuration parameters.

Describe the solution you'd like

The Thanos S3 client used in Mimir supports TLS configuration (

TLSConfig objstore.TLSConfig `yaml:"tls_config"`
) which is passed to the MinIO client that itself has TLS configuration support. I would like to see the full set of TLS configuration options exposed in Mimir configuration parameters.

Describe alternatives you've considered

None yet.

Additional context

None yet.

@jdbaldry jdbaldry added enhancement New feature or request storage/s3 labels Jun 1, 2022
@zalegrala
Copy link
Contributor

The above PR was closed. Tempo has recently added support for the TLS config from dskit. https://github.com/grafana/dskit/blob/main/crypto/tls/tls.go#L87

Mimir may be able to embed this also for consistency of tls options.

@reidlai
Copy link

reidlai commented May 18, 2023

still can't find any information how to set up TLS CA cert file for S3/Minio connection

@benoitschipper
Copy link
Contributor

benoitschipper commented Jan 15, 2024

Same issue here, I would love an option where i could use the Helm Chart's Common Storage Section in order to list a configmap or a secret that allows me to set a TLS cert. Was able to get it working with skip_verify option, see PR for docs here: #7135 perhaps it, at least allows you to continue till a TLS cert injection is possible :)

@zalegrala
Copy link
Contributor

I was able to work around the lack of config by placing my CA cert in /etc/ssl/certs/, which is loaded by Go without config.

@benoitschipper
Copy link
Contributor

I was able to work around the lack of config by placing my CA cert in /etc/ssl/certs/, which is loaded by Go without config.

How did you get it there? Via the helm chart? Or did you adjust the Mimir image? I wonder :)

@zalegrala
Copy link
Contributor

I'm not using helm, but I just mounted a configmap at the location in k8s.
image

@Itaykal
Copy link
Contributor

Itaykal commented Apr 18, 2024

I was able to work around the lack of config by placing my CA cert in /etc/ssl/certs/, which is loaded by Go without config.

I think the way to go would be either implementing this workaround in the helm chart, or push forward #2652.
Is there any status on re-opening the PR?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request storage/s3
Projects
None yet
Development

Successfully merging a pull request may close this issue.

5 participants