-
Notifications
You must be signed in to change notification settings - Fork 133
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
IMDSv2 Support and IMDSv1 Breaking Compatibility in 2.21.0: causes Fluent Bit to hang #259
Comments
WTF, i am debugging like 1 day why my logs are not showing up in Elasticsearch and after googling like 4 hours came up with this breaking changes, don't get me wrong but this kind of changes must be notified at least in AWS notifications bar, as a lot of companies rely on this functionality and would be like 5 minute fix and not 1 day checking everything to find out that logs are not showing up for more then a week. |
Thank you for your feedback. As a team we will try harder to prevent breaking backwards compatibility in the future. Please make sure to not deploy “latest” directly to prod without going through a test stage or consider using a specific aws-for-fluent-bit version tag and reviewing the release notes on migrating to a new image version. That's why we put a notice in the release notes for 2.21.0 warning of the change. Defaulting to IMDSv2 over IMDSv1 is the general best practice/requirement for AWS tools; unfortunately, that leads to this hang problem right now due to limitations in Fluent Bit's core networking library. I am actively working on fixing that limitation. |
This issue is resolved in aws-for-fluent-bit version 2.21.2. v2.21.2 behavior: On IMDSv1 fallback, a single network error will occur:
If you would like to continue using IMDSv1, which is not recommended by AWS, please ignore this error message. Please see: |
aws-for-fluent-bit release note for 2.21.0:
IMDSv2 Support
This release introduces IMDSv2 support BUT breaks backwards compatibility for IMDSv1.
Instances that rely on IMDS for security credentials must set EC2's instance-metadata-option
http-put-response-hop-limit
to2
. It should be noted that if ECS is used without a taskRoleArn, IMDS will be used to retrieve the instances role and each ECS instance must have the instance-metadata-optionhttp-put-response-hop-limit
to2
.A patch is being worked on to allow IMDSv1 to be used as a fallback option.
Setting Hop Limit
The AWS cli can be used to set
http-put-response-hop-limit
to2
via the following:The AWS cli can also be used to require IMDSv2 for security purposes:
The text was updated successfully, but these errors were encountered: