Я пытаюсь развернуть кластер HDInsight с помощью шаблона ARM через Visual Studio. Я создал проект группы ресурсов Azure в Visual Studio 2015 и добавил определения ресурсов в файлы шаблона JSON.
Однако, когда я перешел к его развертыванию (щелкнув проект правой кнопкой мыши, выбрав «Развернуть» -> «Новое развертывание», введя свои параметры), отображается вывод Visual Studio (я вырезал некоторые скучные вещи):
17:19:23 - Сборка началась.
17:19:23 — Проект «LaunchHdInsightCluster.deployproj» (цели StageArtifacts):
[отрезать]
17:20:27 — [ПОДВЕРГЛ.] 17:20:27 — статус подготовки ресурса Microsoft.HDInsight/clusters 'groupbhdinsight' выполняется
17:31:06 — [ОШИБКА] New-AzureRmResourceGroupDeployment: ExpiredAuthenticationToken: время истечения срока действия токена доступа в формате UTC «14 марта 2016 г., 17:31:06» раньше, чем текущее время в формате UTC «14 марта 2016 г. 5». :31:07 PM'.
Обратите внимание, что развертывание выполнялось только в течение 12 минут до истечения срока действия маркера доступа — очевидно, что для развертывания кластера HDInsight это проблема (в среднем занимает 20 минут).
Я просто пытаюсь понять, что здесь происходит под капотом, так как я не могу найти документацию для этого. то есть:
Что создает токен доступа и как? Как долго это длится? Меня не спрашивали о каких-либо учетных данных Azure при развертывании — я предполагаю, что это должно быть связано с тем, что я вошел в Visual Studio, используя ту же учетную запись, которую использую в Azure, и он «заимствует» сеанс аутентификации, но это просто предположение
Что определяет время истечения срока действия токена доступа, чтобы я мог предотвратить повторение этого?
Как обновить токен аутентификации?
[Microsoft.Azure.Common.Authentication.AzureSession]::ClientFactory.AddUserAgent("VSAzureTools-$UI$($host.name)".replace(" ","_"), "2.8")
. Я думаю, что VS вызывает этот скрипт для развертывания. Похоже, это захватывает токен из VS. Я мог бы попробовать изменить это, например. вместо этого выполнить Login-AzureRmAccount и выполнить вход в интерактивном режиме - person James Allen   schedule 14.03.2016