Share via


Azure Linux Diagnostic: MDSD documentation and source code?

Question

Thursday, September 15, 2016 7:37 PM

Hi,

I am looking for some kind of documentation for MDSD protocols and it's source code.
Is anything freely available online?

Why am I doing this:
I am currently engaged by a customer to build an environment on top of azure which heavily relies on the autoscaling feature. The linux distribution of choice in this case is NixOS which is not officially supported by Microsoft Azure.  (No, switching the distro is not an acceptable alternative ;) )

It turns out someone already put in some work to get the WAAgent working on NixOS ( https://github.com/NixOS/nixpkgs/blob/master/nixos/modules/virtualisation/azure-agent.nix ). Apparently the WAAgent alone is not enough to use the autoscaling feature based on CPU usage. I traced the issue to the MDSD (mandatory diagnostics service daemon?) binary which will not run without special preparation on NixOS (and some other distributions).

My goals are

  • (short term) Get MDSD working on NixOS to populate the required tables for the autoscaling with the usage data
  • (long term) Replace the mdsd binary blob with a properly documented (open source) application

I would appreciate any help (especially code and/or documentation) regarding the MDSD.

Thanks!

All replies (7)

Friday, September 16, 2016 2:46 PM

Hello Richard,

Greetings from Microsoft Azure.

I found the below links related to MDSD protocols:

https://github.com/Azure/azure-linux-extensions/commit/5ab581bc336b701371a783a143768951fe8ed630

https://github.com/Azure/WALinuxAgent/issues/148

Hope this helps !!!

Regards,

Sapna Girish

Sapna G


Saturday, September 17, 2016 10:22 AM

Hi Sapna,

nope, those links do not help at all!
They show an option to configure alternative ports and how to resolve issues with missing libraries. Both are no problems I face.

I require documentation of the protocol and/or source code of the mdsd.

Regards


Saturday, September 17, 2016 1:08 PM

Hello Richard,

Thanks for getting back to us.

Apologies that my post didn't help you. I am researching on your query and hence, please provide time to get back to you with an update.

Regards,

Sapna Girish

Sapna G


Wednesday, September 21, 2016 1:02 PM

Hello Richard,

Thank you for your patience while I was checking on your query.

The most recent release of the Linux Diagnostic Extension (LAD 2.3.9009) includes a nearly completely static build of MDSD. Satisfying the requirements for the current MDSD binary at runtime shouldn’t be too difficult; the MDSD binary itself will tell you what libraries are required. In order to enable collection of metrics via LAD, you’ll need to install OMI plus System Center Cross-platform providers (SCX), which are all available in source form. Once OMI and SCX are installed and the OMI service is running, and the small number of shared-object dependencies of MDSD have been satisfied, LAD should operate. The source for LAD itself is available on GitHub.

Regards,

Sapna Girish

Sapna G


Wednesday, September 21, 2016 6:15 PM

Hi Sapna,

thank you for the detailed response :)

Unfortunately I (and my customer) am not satisfied with a "nearly completely static build" of some binary.

Some issues that are unacceptable for the environment I am currently building are:
* Unknown functionality (and therefore impact on the system)
* Unknown security issues (audits are disproportionately costly without source being provided)
* workaround required to get it working (not just dependencies need to be provided but also interpreter in the ELF binary needs to be patched)

Furthermore I could not find the mdsd binary in the linked GitHub repository. Can you point me to an exakt download location of the version you are referring to?

Thanks!


Saturday, September 24, 2016 2:27 PM

Hello Richard,

Thank you again for getting back to us.

I am again researching on your query and hence, please provide time to get back to you with an update.

Regards,

Sapna Girish

Sapna G


Tuesday, September 27, 2016 12:31 PM

Hello Richard,

Thank you for your patience while I was researching about your query. As per my understanding, MDSD is not yet available open-source and so we are unable to support this request at this time.

Regards,

Sapna Girish

Sapna G