-
Notifications
You must be signed in to change notification settings - Fork 524
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
Support EKS Pod Identity feature #3899
Comments
We actually use the minio s3 client. Here is our Tempo s3 config: tempo/tempodb/backend/s3/config.go Lines 13 to 39 in 9951e7c
And here is where we use it to build a minio client: tempo/tempodb/backend/s3/s3.go Line 615 in 9951e7c
This appears relevant to our interests: Looks like this was released here: https://github.com/minio/minio-go/releases/tag/v7.0.70 We updated to this version here: So with a little luck this will be supported in 2.6.0? |
@AnhQKatalon 🧐 I was not able to make it work even with Mimir, I'm getting similar error as for Tempo:
@joe-elliott Thank yout for that claryfication about Go library 😇. |
@Rohlik I can confirm Mimir works with Pod Identity. We're running most Grafana OSS services and Tempo + Pyroscope are the only two that don't work with Pod Identity at the moment. |
This issue has been automatically marked as stale because it has not had any activity in the past 60 days. |
bump |
So we have released 2.6.0 with a version of the minio client that presumably supports this feature. Can those who are interested in this feature confirm/disconfirm it works in 2.6.0? |
I did a quick test and it works. |
Relates to grafana#3899.
Sounds like this is fixed! Thanks for confirming @Rohlik and updating the docs 🙏 |
Is your feature request related to a problem? Please describe.
A very common solution for granting permission to S3 buckets is via IAM roles for Service Accounts (IRSA), but recently (2023), AWS introduced EKS Pod Identity functionality, which simplifies granting AWS services access to pods running in an EKS cluster.
However, Tempo (and other Grafana components) seems to be incompatible based on the docs and my tests:
Describe the solution you'd like
Support this modern way of granting access to AWS services to pods via EKS Pod Identity.
Describe alternatives you've considered
The mentioned alternative solution with IRSA works fine. However, it can be unnecessarily complicated, especially in big deployments.
Additional context
The primary prerequisite is
aws-sdk-go
with version> v1.47.11
, which Tempo fulfills.We use
tempo-distributed
Helm chart.Related pod's output of compactor, which shows that the container has proper ENVs/mounts auto-set, but the container itself doesn't use them for some reason:
The text was updated successfully, but these errors were encountered: