-
Notifications
You must be signed in to change notification settings - Fork 1.7k
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
out_azure_kusto: azure managed identity support added #10036
base: master
Are you sure you want to change the base?
Conversation
Please follow the contribution guidelines by updating your commit messages (and squash them ideally into a smaller amount) and resolve the failing DCO check. Until this is done we cannot review it. |
I think we need unit tests at least as well for the new functionality. |
953744e
to
d9b0f11
Compare
It might be better to rebase your PR off master rather than include the merge commits |
39f9c4e
to
3afe014
Compare
Rebased from master and squashed all the changes into a single commit. Will work on adding unit tests next. |
Signed-off-by: Ravi Gupta <dceravigupta@gmail.com>
Signed-off-by: Ravi Gupta <dceravigupta@gmail.com>
@patrick-stephens, while adding standard json_invalid, json_long and json_small UTs for out_azure_kusto, I'm running into an issue where since we don't have a real azure kusto account configured for tests, the json_long and jsong_small tests are giving following errors:
Test Config:
I believe, even if we configure a valid kusto account, they will continue to fail unless we run them on an actual Azure VM with managed identity configured? What do you recommend in this case? Should I simply add json_invalid test alone or add all three of them? |
Is there no way to simulate it? Relying on a managed service is not great for these unit tests as people want to run them locally/forks. |
Signed-off-by: Ravi Gupta <dceravigupta@gmail.com>
out_azure_kusto: unit test added
It is hard to simulate managed identity locally hence only keeping the test which works e2e locally. |
@patrick-stephens is there a way to trigger the pending checks against my PR? They haven't run in the last couple of days, so I'm wondering if they follow a predefined schedule or need to be triggered manually. I'm ready to put my PR in review queue. |
It's a security precaution to not run them for first time contributors so I've triggered them now |
Currently, the Azure Kusto output plugin supports only Service Principal-based authentication. This PR introduces support for Managed Service Identity (MSI), including both system-assigned and user-assigned identities.
https://learn.microsoft.com/en-us/entra/identity/managed-identities-azure-resources/overview
To implement this feature, I leveraged the existing OAuth2 support in Fluent Bit, as MSI follows the OAuth2.0 protocol (with the exception of the HTTP Request part), which significantly simplifies the implementation.
This feature has been asked multiple times in the past. Example:
#8763
Enter
[N/A]
in the box, if an item is not applicable to your change.Testing
Before we can approve your change; please submit the following in a comment:
If this is a change to packaging of containers or native binaries then please confirm it works for all targets.
ok-package-test
label to test for all targets (requires maintainer to do).Documentation
Managed Identity support in Azure Kusto output plugin fluent-bit-docs#1578
Backporting
Example configuration:
System assigned Managed Service Identity:
Fluent Bit is licensed under Apache 2.0, by submitting this pull request I understand that this code will be released under the terms of that license.