我有一个调用WCF服务的控制台应用程序 . 此WCF服务位于Azure Cloud 服务VM上,WCF服务仅可在内部访问(使用Windows信用卡) . Cloud Services VM已添加到我们的域中 .
我已将此控制台应用程序部署为Azure webjob . 它本身就存在于Azure App Services Web App中 - 没有相关的Web应用程序 .
当我运行webjob时,我得到一个“System.ServiceModel.EndpointNotFoundException:没有 endpoints 侦听......”异常 . 这似乎是预期的,因为Azure App Services Web App不在域上或与内部DNS通信 .
我的问题是,可以/如何将支持Azure App Services Wep App的VM添加到我们的域中?如果没有,有什么选择让这个webjob与内部DNS交谈?
1 回答
通常,当尝试从Azure中连接内部部署资源或其他专用网络时,您可以查看以下几个选项:
Option #1 :App Service Environents:https://azure.microsoft.com/en-us/documentation/articles/app-service-app-service-environment-intro/
由于虚拟网络,这将为您提供最大的灵活性,但成本最高,因为它是高级产品 .
Option #2 :应用服务混合连接:https://azure.microsoft.com/en-us/documentation/articles/integration-hybrid-connection-overview/
我不太熟悉这个选项,但它的设计是与App Service一起使用这些类型的场景 . 但是,如果您需要访问内部DNS或域控制器,可能很难使用 .
Option #3 :服务总线继电器:https://azure.microsoft.com/en-us/documentation/articles/service-bus-dotnet-how-to-use-relay/
此选项已存在一段时间,专门用于连接到WCF服务 . 它不是特定于Azure应用服务(正如您可以从文章中看到的那样),但它可能仍然是一个很好的,相当轻量级适合您的场景 . 但是,它也无法帮助您使用DNS和内部部署域控制器 .