Azure / azure-sdk-for-cpp

This repository is for active development of the Azure SDK for C++. For consumers of the SDK we recommend visiting our versioned developer docs at https://azure.github.io/azure-sdk-for-cpp.
MIT License
175 stars 125 forks source link

Improve Probing Logic for Azure Instance Metadata Service (IMDS) for Virtual Machines #5279

Open joshfree opened 8 months ago

joshfree commented 8 months ago

Tracking issue for addressing customer feedback on IMDS VM delays with DefaultAzureCredential due to IMDS probing retry logic in Azure Identity SDK. @ahsonkhan is driving this investigation.

Currently our SDKs are inconsistent across languages where some languages have zero retries, some have a single 0.5 second retry, and others (.NET) have up to 8-seconds of retries.

We need to review all languages here and make them consistent across languages, as well as publish a Sample and Blog about IDMS on VMs with Azure Identity SDK and how customers can write 2-3 lines of cose to skip IMDS when needed.

joshfree commented 8 months ago

Related: https://github.com/Azure/azure-sdk-for-rust/issues/1503

ahsonkhan commented 5 months ago

Here's the gist with the design of a solution for this: https://gist.github.com/ahsonkhan/d6c4d3a9780bb058a729b76844923ef1