Определите, работает ли на Azure IaaS VM (приложение .NET) - PullRequest
0 голосов
/ 27 февраля 2019

Я видел много постов, касающихся того, что, по моему мнению, должно быть относительно простой задачей.В рамках наших критериев лицензирования мы определяем, работаем ли мы в виртуализированной среде.Однако некоторые идентификаторы, которые мы использовали, могут измениться в результате освобождения виртуальных машин, поэтому мы начали искать замену некоторых из них уникальным идентификатором Azure (UUID).Но для этого нам нужно внести изменения в наш лицензионный код, чтобы правильно определить, что мы работаем в лазурной среде.Я видел много постов, касающихся использования Azure SDK и RoleEnvironment, но я считаю, что это не работает при работе на управляемых виртуальных машинах IaaS (при копировании необходимых библиотек DLL через).

Так что в идеале нам нужен способв приложении .NET, не имея зависимостей от Azure SDK, чтобы мы могли правильно идентифицировать виртуальную машину Azure, а не стандартную виртуальную машину.Это может включать в себя ключи реестра, поиск WMI и т. Д.

Я отмечу существующее решение, найденное на веб-сайте технической поддержки microsoft Сценарий обнаружения виртуальной машины Windows Azure , но поскольку код, который мы выполняем,в целом для работы со всеми типами сред это не очень практично.

1 Ответ

0 голосов
/ 27 февраля 2019

Служба метаданных экземпляра Azure предоставляет информацию о запущенных экземплярах виртуальных машин, которые можно использовать для управления и настройки виртуальных машин.Сюда входит такая информация, как SKU, конфигурация сети и предстоящие события обслуживания.Дополнительные сведения о том, какой тип информации доступен, см. В категориях метаданных.

Служба метаданных экземпляра Azure является конечной точкой REST, доступной для всех виртуальных машин IaaS, созданных с помощью диспетчера ресурсов Azure.Конечная точка доступна по общеизвестному не маршрутизируемому IP-адресу 169.254.169.254, доступ к которому возможен только из виртуальной машины.

https://docs.microsoft.com/en-us/azure/virtual-machines/windows/instance-metadata-service

...