2017-02-08 20 views
1

Я пытаюсь автоматизировать мою установку сборки. Он работает неплохо. Но у меня проблема с этапом «PowerShell на целевых машинах».Team Foundation Server (TFS) PowerShell на целевой машине

Этот шаг работает нормально, пока сервер TFS и другой сервер находятся в одном домене. Теперь у меня есть сервер, который не находится внутри домена. Работает «Копия файла Windows Machine File». Но шаг «PowerShell on Target Machines» не работает. Скрипт powershell находится на удаленной машине. Мне нужно только выполнить скрипт.

На сервере у меня есть локальный пользователь с правами администратора. я уже проверил:

  • Firewall не является проблемой
  • WinRM устанавливается
  • TFS сервер находится в списке доверенных хост
  • Настроенные «PowerShell на компьютеры» с IP-адреса, машины Группа и Имя машины

Когда я использую HTTP я получать следующее сообщение об ошибке

WinRM cannot process the request. The following error with errorcode 0x80090311 occurred while using Kerberos authentication: There are currently no logon servers available to service the logon request. 
Possible causes are: 
-The user name or password specified are invalid. 
-Kerberos is used when no authentication method and no user name are specified. 
-Kerberos accepts domain user names, but not local user names. 
-The Service Principal Name (SPN) for the remote computer name and port does not exist. 
-The client and remote computers are in different domains and there is no trust between the two domains. 
After checking for the above issues, try the following: 
-Check the Event Viewer for events related to authentication. 
-Change the authentication method; add the destination computer to the WinRM TrustedHosts configuration setting or use HTTPS transport. 
Note that computers in the TrustedHosts list might not be authenticated. 
-For more information about WinRM configuration, run the following command: winrm help config. For more information, see the about_Remote_Troubleshooting Help topic. For more info please refer to http://aka.ms/powershellontargetmachinesreadme

При использовании HTTPS я получаю следующее сообщение об ошибке

The client cannot connect to the destination specified in the request.
Verify that the service on the destination is running and is accepting requests.
Consult the logs and documentation for the WS-Management service running on the destination, most commonly IIS or WinRM. If the destination is the WinRM service, run the following command on the destination to analyze and configure the WinRM service: "winrm quickconfig".
For more information, see the about_Remote_Troubleshooting Help topic.
For more info please refer to http://aka.ms/powershellontargetmachinesreadme

Прямо сейчас я теряюсь и не знаю, что делать. Кто-нибудь знает, что проверить дальше?

Спасибо заранее

ответ

0

Кажется, вы хотите сделать TFS работает PS на целевых машинах, располагающихся за пределами строительной области машина AD. Это не так просто, даже если вы напрямую используете задачу tfs, получите ту же ошибку.

Для этого у вас есть два варианта.

  1. Setup один путь доверие между основным доменом ансом все вашими поддоменов так, что учетные данные домена производства могут быть использованы на все ваши поддомены.
  2. использовать теневые учетные записи, чтобы разрешить междоменную аутентификацию. Это локальные учетные записи с одинаковым именем пользователя и паролем между машинами , которые позволяют auth. Это официальная работа MSFT для не доверяющего домена .

Пожалуйста, обратите внимание на этот похожий вопрос: TFS 'Powershell on Target Machines' task for machines in different AD domain


Update

Работала с OP: Добавление клиента к серверу список доверенных узлов, а другой (добавьте сервер на клиенте в список доверенных хостов) *

+1

Наконец-то это работает.
Все, что нам нужно было сделать, - это добавить клиента в список доверенных хостов сервера и наоборот (добавить сервер на клиент в список доверенных хостов) – iduntyr