无法访问基本的 Fabric Azure WebAPI OWIN 无状态服务
Can't access a basic Fabric Azure WebAPI OWIN stateless service
在遵循 tutorial 之后,我在 localhost:8534/simpleprime/api/values/
* 上成功 运行,结果与 tut 相同。
后来将解决方案发布到远程云集群,我无法使用 www.clusterurl:8534/api/values
访问它,每次都超时。即使我在部署期间从 Visual Studio 获得了令人放心的事件诊断。
我也单独尝试了每个节点,打算
http://node_ip:8543/simpleprime/api/values
,运气不好
- simpleprime 是 appRoot
终于解决了,在服务端口配置里面(a.k.aServiceManifest.xml
)有一个端口设置。将其更改为 19080 - 我的集群正在侦听的默认 http 端口后,一切都开始工作了。
如果您想使用 Azure 上的 OWIN 侦听器访问您的服务,您应该定义您的应用程序将在集群创建期间用于 LoadBalancer 的端口。
如果您出于某种原因忘记了,您可以稍后通过以下方式完成:
服务部分
- 使用 OWIN Listener
转到您的服务的 PackageRoot/ServiceManifest.xml
直接定义您的端点(这样 SF 将使用您定义的端口号)(在我的示例中为 8081)
将应用程序重新发布到 Azure。
蔚蓝部分
- 转到 Azure 门户
- 找到分配给您的 SF 的负载均衡器 (LB-nameofyourSF-namofNodeSet)
- 在 LoadBalancer 设置中转到 Probes 并添加新的探测器,如下图所示,您的端口在 ServiceManifest.xml 中定义(在我的例子 8081)和协议 TCP
- 添加新的负载平衡规则,使用之前定义的端口和探测以及正确的端口映射(在我的示例中为 8081):
- 保存,现在您应该可以通过浏览器访问 Azure 上的服务了。
在遵循 tutorial 之后,我在 localhost:8534/simpleprime/api/values/
* 上成功 运行,结果与 tut 相同。
后来将解决方案发布到远程云集群,我无法使用 www.clusterurl:8534/api/values
访问它,每次都超时。即使我在部署期间从 Visual Studio 获得了令人放心的事件诊断。
我也单独尝试了每个节点,打算
http://node_ip:8543/simpleprime/api/values
,运气不好
- simpleprime 是 appRoot
终于解决了,在服务端口配置里面(a.k.aServiceManifest.xml
)有一个端口设置。将其更改为 19080 - 我的集群正在侦听的默认 http 端口后,一切都开始工作了。
如果您想使用 Azure 上的 OWIN 侦听器访问您的服务,您应该定义您的应用程序将在集群创建期间用于 LoadBalancer 的端口。
如果您出于某种原因忘记了,您可以稍后通过以下方式完成:
服务部分
- 使用 OWIN Listener 转到您的服务的 PackageRoot/ServiceManifest.xml
直接定义您的端点(这样 SF 将使用您定义的端口号)(在我的示例中为 8081)
将应用程序重新发布到 Azure。
蔚蓝部分
- 转到 Azure 门户
- 找到分配给您的 SF 的负载均衡器 (LB-nameofyourSF-namofNodeSet)
- 在 LoadBalancer 设置中转到 Probes 并添加新的探测器,如下图所示,您的端口在 ServiceManifest.xml 中定义(在我的例子 8081)和协议 TCP
- 添加新的负载平衡规则,使用之前定义的端口和探测以及正确的端口映射(在我的示例中为 8081):
- 保存,现在您应该可以通过浏览器访问 Azure 上的服务了。