无法访问基本Fabric Azure WebAPI OWIN无状态服务

时间:2016-04-12 23:15:03

标签: c# azure asp.net-web-api owin azure-service-fabric

在关注tutorial之后,我已成功在localhost:8534/simpleprime/api/values/ *上运行它,其结果与tut相同。

稍后将解决方案发布到远程云群集,我无法使用www.clusterurl:8534/api/values访问它,每次都超时。即使我在部署期间从Visual Studio获得了令人放心的事件诊断。

我也已经尝试了每个节点 http://node_ip:8543/simpleprime/api/values,没有任何运气

bunch of reassuring diagnostics

  • simpleprime是appRoot

2 个答案:

答案 0 :(得分:7)

如果要在Azure上使用OWIN侦听器访问服务,则应在群集创建期间定义应用程序将用于LoadBalancer的端口。

如果您因某种原因忘记了以后可以通过以下方式执行此操作:

服务部分

  1. 使用OWIN Listener转到服务的PackageRoot / ServiceManifest.xml
  2. 直接定义您的终端(因此SF将使用您的定义端口号)(在我的示例8081中) enter image description here

  3. 将应用程序重新发布到Azure。

  4. AZURE PART

    1. 转到Azure门户
    2. 找到分配给SF的负载均衡器(LB-nameofyourSF-namofNodeSet)
    3. 在LoadBalancer设置中,转到探测器并添加新探针,如下图所示,并在 ServiceManifest.xml 中定义端口(在我的示例8081上)和协议TCP enter image description here
      1. 使用之前定义的端口和探针以及正确的端口映射(在我的示例8081中)添加新的负载平衡规则
    4. enter image description here

      1. 保存,现在您应该可以通过浏览器访问Azure上的服务。

答案 1 :(得分:0)

最后解决了它,在服务端口配置(a.k.a ServiceManifest.xml )内有一个端口设置。将其更改为 19080 - 我的群集正在侦听的默认http端口,一切都开始有效。

ServiceManifest.xml