Не удается подключиться к удаленному серверу через Powershell / WinRm с сервера сборки

Я продолжаю получать эту ошибку, когда выполняется задача определения выпуска VSTS «Запуск сценариев SQL Server»:

[ошибка] System.Management.Automation.Remoting.PSRemotingTransportException: не удалось подключиться к удаленному серверу [МОЙ IP-адрес СЕРВЕРА БАЗЫ ДАННЫХ ЗДЕСЬ] со следующим сообщением об ошибке: WinRM не может завершить операцию. Убедитесь, что указанное имя компьютера допустимо, что компьютер доступен по сети и что исключение брандмауэра для службы WinRM включено и разрешает доступ с этого компьютера. По умолчанию исключение брандмауэра WinRM для общедоступных профилей ограничивает доступ к удаленным компьютерам в той же локальной подсети. Для получения дополнительной информации см. Раздел справки about_Remote_Troubleshooting.

У меня есть:

  • Проверено, что имя пользователя / пароль, которые я использую, имеют права администратора (он не использует домен)
  • Гарантированная работа службы WinRM (на сервере сборки и на целевом сервере)
  • Убедитесь, что удаленный сервер доступен через WinRM в консоли Powershell с помощью WinRM quickconfig, который возвращает мне:

    • WinRM service is already running on this machine.
    • WinRM уже настроен для удаленного управления на этом компьютере.
  • Отключил брандмауэр на целевом сервере (я также пробовал добавить исключение брандмауэра для соответствующего IP-адреса и т. Д. В правило удаленного управления Windows)

Должно быть, мне не хватает какой-то конфигурации, но я не знаю, что это такое!

Любая помощь очень ценится ...


person Mike Sowerbutts    schedule 01.02.2018    source источник
comment
В конечном итоге я использую эту книгу, чтобы помочь себе в устранении неполадок удаленного взаимодействия: Leanpub.com/secretsofpowershellremoting   -  person thom schumacher    schedule 01.02.2018
comment
›Не использует домен. Почему?   -  person Maximilian Burszley    schedule 01.02.2018
comment
Попробуйте запустить PowerShell удаленно на этом целевом сервере вручную и проверьте результат: howtogeek.com/117192/   -  person starian chen-MSFT    schedule 02.02.2018


Ответы (1)


Вы всегда можете использовать PowerShell для этого, например ..

$ content = Get-Content -Path "testsqlFile.sql" | Out-String Invoke-Sqlcmd -ServerInstance some-ip-address -Database database-name -Username user-name-Password password -Query $ content

person chris castle    schedule 02.02.2018