Closed tmsquill closed 2 months ago
Furthermore I am aware of issues #12949
Version(s)
v3.5.11
- [x] I have tested with the
:latest
image tag (i.e.quay.io/argoproj/workflow-controller:latest
) and can confirm the issue still exists on:latest
. If not, I have explained why, in detail, in my description below.
This should work on 3.6.0-rc1 and :latest
. You did not describe attempts with :latest
.
Paste a minimal workflow that reproduces the issue. We must be able to run the workflow; don't enter a workflows that uses private images.
See the description of issue.
The relevant excerpt from my workflow manifest is:
An excerpt is also not a reproducible workflow.
Oh I think I understand now, I just reviewed the comments in #12949 in detail and tried :latest
and it works. I am not comfortable running :latest
in my environment so I will wait for 3.6.X to release and use an alternative approach in the meantime. Thanks for clearing this up.
The documentation for v3.5.11
is misleading. The section here for IRSA / Pod Identity shows how to use a feature that does not work / is not implemented.
The documentation for
v3.5.11
is misleading. The section here for IRSA / Pod Identity shows how to use a feature that does not work / is not implemented.
IRSA apparently does work but not Pod Identity as far as I understand. I don't think anyone knew Pod Identity required specific SDK support until #12650, which was written by an AWS employee.
You're also reading the docs for latest
as opposed to the docs for release-3.5
, although I did accidentally backport the docs sentence on Pod Identity in https://github.com/argoproj/argo-workflows/commit/9b337f8ef95e1ae6db036febeb65ea7167ad8b9b. Both of those lines were added very recently and I only remembered #12650 myself this weekend
Correction on the above, the reference to Pod Identity in the above commit is for self-hosted set-ups, and that should indeed still work for EKS and non-EKS if you install it yourself.
But that's different from and predates the built-in EKS Pod Identity, which AWS released less than a year ago in Nov 2023 apparently. Meanwhile, the Pod Identity Webhook dates back to ~June 2019.
And both are different from IRSA, see also this AWS blog post comparing the two.
So uh, I'd chalk up that confusion to AWS itself 🙃
Pre-requisites
:latest
image tag (i.e.quay.io/argoproj/workflow-controller:latest
) and can confirm the issue still exists on:latest
. If not, I have explained why, in detail, in my description below.What happened? What did you expect to happen?
I am attempting to use the EKS Pod Identity feature to grant workflow pods access to an S3 bucket for use with artifacts. I have followed the documentation listed here and here. Furthermore I am aware of issues https://github.com/argoproj/argo-workflows/issues/12949 and https://github.com/argoproj/argo-workflows/issues/12650.
The relevant excerpt from my workflow manifest is:
This workflow is using the
argo-workflow
service account which is annotated correctly as per the EKS Pod Identity requirements:I have run
kubectl describe
on the relevant pod to see the environment variables assigned to theinit
container to confirm the Pod Identity association is working correctly, as you can see the five expected environment variables are present.Furthermore, I have tested this Pod Identity association with the following (note the use of the relevant service account) and it works:
Logs from the
init
container which is responsible for fetching the artifacts from the S3 bucket is listed below:Due to the format of the log
2024/09/24 21:46:23 Ignoring, HTTP credential provider invalid endpoint host, "169.254.170.23", only loopback hosts are allowed.
being different, it makes me think something outside of the Argo-related code in theinit
container is denying hitting the credentials endpoint.I am using EKS Pod Identity with other software in my EKS cluster without any problems.
EKS Version: v1.30.3-eks-a18cd3a Argo Workflows Helm Chart: 0.42.3
It's unclear to me if this feature does work and is not documented correctly, or if the feature does not work as intended, or if I am just doing something wrong.
Version(s)
v3.5.11
Paste a minimal workflow that reproduces the issue. We must be able to run the workflow; don't enter a workflows that uses private images.
See the description of issue.
Logs from the workflow controller
Logs from in your workflow's wait container