Я пытаюсь запустить следующий тестовый сценарий с использованием гибридного работника Runbook через Azure Автоматизация:
Connect-ServiceFabricCluster -ConnectionEndpoint "the-service-fabric-azure-url" -FindType FindByThumbprint -FindValue "the-thumbprint" -X509Credential -ServerCertThumbprint "the-thumbprint" -StoreLocation CurrentUser -StoreName My -Verbose
$app = Get-ServiceFabricApplication -ApplicationName "fabric:/the-application-name"
Write-Output $app
Когда я запускаю этот сценарий локально на моей машине, он работает. Когда я запускаю этот скрипт, используя сеанс Powershell на виртуальной машине, он также работает.
Когда я помещаю этот сценарий в модуль Runbook, а затем запускаю модуль Runbook через гибридную рабочую группу (которая указывает на ту же виртуальную машину, поскольку в этой группе зарегистрирован только один работник), я получаю сообщение об ошибке:
Connect-ServiceFabricCluster : An error occurred during this operation. Please check the trace logs for more details. At line:1 char:1 +
Connect-ServiceFabricCluster -ConnectionEndpoint "my-service-fabric-url... +
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +
CategoryInfo : InvalidOperation: (:) [Connect-ServiceFabricCluster], FabricException +
FullyQualifiedErrorId : CreateClusterConnectionErrorId,Microsoft.ServiceFabric.Powershell.ConnectCluster
Что мне нужно настроить, чтобы гибридная группа могла выполнять тот же сценарий, который локальный сеанс Powershell уже может выполнять правильно?
Некоторые дополнительная информация:
- ServiceFabri c SDK установлен на ВМ. Поскольку я могу подключиться с виртуальной машины к ServiceFabri c через сеанс Powershell, подтверждает, что SDK доступен на виртуальной машине.
- Гибридная группа работает правильно. Если я запускаю небольшой скрипт Powershell, который выводит имя локального компьютера, он возвращает имя моей Azure виртуальной машины, поэтому я знаю, что он запускается на компьютере, на котором я хочу его запустить. Любой запущенный мной скрипт, не относящийся к ServiceFabri c, работал без проблем.
- Я удостоверился в установке сертификата ServiceFabri c на ВМ. На виртуальной машине я могу перейти на сайт SF Explorer и запустить скрипт через сеанс PowerShell, поэтому я знаю, что сертификат установлен правильно, потому что в противном случае это тоже не сработало бы.
- У меня также есть установил сертификат в саму учетную запись Azure Automation, но это не повлияло на полученную ошибку.
- В сообщении об ошибке упоминается проверка журналов трассировки, но я не знаю, где это is.
- Узлы Service Fabri c и рабочая виртуальная машина гибридного Runbook находятся в одной виртуальной сети. Поскольку я могу подключиться с виртуальной машины к ServiceFabri c через сеанс Powershell, похоже, это не проблема сети.