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

httpPutResponseHopLimit: 1 not compatible with EBS csi driver #7200

Open
drawnwren opened this issue Oct 14, 2024 · 4 comments
Open

httpPutResponseHopLimit: 1 not compatible with EBS csi driver #7200

drawnwren opened this issue Oct 14, 2024 · 4 comments
Assignees
Labels
documentation Improvements or additions to documentation

Comments

@drawnwren
Copy link

Description

Karpenter defaults to httpPutResponseLimit: 1, but according to this (rather hard to find) ebs csi documentation, https://github.com/kubernetes-sigs/aws-ebs-csi-driver/blob/master/docs/install.md#imds-ec2-metadata, httpPutResponseLimit: 2 is required for EBS compatibility. 2 might be a default that makes more sense (give that I think ebs is a fairly common add-on to use?).

@drawnwren drawnwren added bug Something isn't working needs-triage Issues that need to be triaged labels Oct 14, 2024
@engedaam
Copy link
Contributor

The team wanted to take in security best practice by Disabling IMDS Access from Containers by Default. However, I do think this should be called out in our documentation to give some guidance to customers

@engedaam engedaam added documentation Improvements or additions to documentation and removed bug Something isn't working needs-triage Issues that need to be triaged labels Oct 17, 2024
@engedaam
Copy link
Contributor

engedaam commented Oct 17, 2024

@drawnwren Why are not able to use Kubernetes Metadata? Seems like that would a reasonable fallback

If the driver is unable to reach IMDS, it will fallback to using the Kubernetes API. For this metadata source to work, the driver pods must have access to the Kubernetes API server. Additionally, the Kubernetes node objects must include the following information:

  • Instance ID (in the Node's ProviderID)
  • Instance Type (in the label node.kubernetes.io/instance-type)
  • Instance Region (in the label topology.kubernetes.io/region)
  • Instance AZ (in the label topology.kubernetes.io/zone)

@drawnwren
Copy link
Author

I'm not sure. I'm just using the default eks method for adding the ebs-csi-controller to the cluster (through the aws dashboard) and it seems like it doesn't actually fallback to kubernetes metadata or there's something on the cluster that I would need to configure for this to work but I'm not aware of what it would be?

@engedaam
Copy link
Contributor

These values are typically set by the AWS CCM. You must have the AWS CCM or a similar tool installed in your cluster providing these values for Kubernetes metadata to function.

Are you using AWS CCM in your cluster?

@engedaam engedaam self-assigned this Oct 21, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
documentation Improvements or additions to documentation
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants