Azure Соединение между Azure MyWebRole и nonazure сервер не работает
Мое веб-приложение, размещенное на Windows Azure, должно взаимодействовать с TFS Server. Когда кто-либо входит в мое веб-приложение с использованием действующего идентификатора, я хочу, чтобы вошедший в систему пользователь использовал свои учетные данные Team Foundation server (TFS) - имя пользователя, пароль и домен для программной аутентификации, подключения к нашему TFS-серверу и создания некоторых рабочих элементов.
Я настроил свое соединение Azure для связи между Azure WebRole и TFS-сервером (наш TFS не является Azure). Я добавил и WebRole, и TFS-сервер в одну группу соединений
В моем AzurePortal я вижу mywebrole и мой TFSServer как подключенный, конечная точка компьютера активна, и она обновляется с момента последних подключенных обновлений
.Но когда я пытаюсь запустить свое веб-приложение из Azure и когда оно пытается связаться с нашим TFS-сервером, оно выдает сообщение об ошибке с сообщением об ошибке: службы Team Foundation недоступны с сервера, например,http://xyz-abcxyx-01:8080/ TFS / EAS /. Техническая информация (для администратора): удаленное имя не может быть разрешено: 'xyz-abcxyx-01'
Любые предложения по решению этой проблемы?
2 ответа
Вы должны включить удаленный рабочий стол на WebRole и подключиться к одному из ваших экземпляров. Затем попробуйте пропинговать IP-адрес вашего сервера TFS (не имя хоста xyz-abcxyx-01). Возможно, это просто проблема DNS (хотя использование имен хостов работает с Windows Azure Connect).
Если проверка IP-адреса работает, но проверка имени узла не работает, у вас осталось несколько вариантов:
- Используйте IP вместо имени хоста. Это не будет работать, если вы настроили TFS для использования заголовков хоста.
- Создайте задачу запуска с повышенными правами, чтобы изменить файл hosts и сопоставить IP с именем хоста. В вашем коде вы можете продолжать работать с именем хоста.
- Попробуйте изменить DNS-сервер, настроенный в вашей WebRole, для использования DNS-сервера по умолчанию + вашего внутреннего DNS-сервера. Но для меня это не похоже на чистое решение.
В любом случае, в каждом решении вы хотите сохранить IP/ имя хоста в ServiceConfiguration и убедиться, что ваш код поддерживает изменения в ServiceConfiguration. Это позволит вам изменить IP/ имя хоста без необходимости повторного развертывания.
Вы должны проверить, прослушивает ли сервер TFS все сетевые интерфейсы, включая тот, который создан Azure Connect (начиная с 2a01). Затем попробуйте подключиться к TFS с компьютера в локальной сети, просто чтобы убедиться, что он настроен правильно. Вам не нужно использовать IP для ссылки на TFS, DNS-имя определенно поддерживается из коробки.