ServiceFabric 警告“具有 ExplicitPort 的端点在应用程序端口范围内。这可能会导致端口冲突。”

Ale*_*AIT 1 azure azure-service-fabric

将我的 ServiceFabric 集群更新到 6.5 版后,我的应用程序开始弹出警告。

带有 ExplicitPort 27000 的端点 MyEndpoint 在应用程序端口范围内。这可能会导致端口冲突。请从应用程序端口范围之外选择一个端口。

为什么会发生此错误,我需要做什么来修复它?

Ale*_*AIT 6

从 ServiceFabric 6.5CU2 开始,ServiceFabric 开始显示这些错误配置的警告。这些警告将来可能会变成错误。

根据设计,静态端口不应与 ClusterManifest 中指定的应用程序端口范围重叠。如果指定静态端口,请在应用端口范围之外分配,否则会导致端口冲突。在 6.5CU2 版本中,我们将在检测到此类冲突时发出健康警告,但让部署继续与发布的 6.5 行为同步。但是,我们可能会阻止下一个主要版本的应用程序部署。

https://docs.microsoft.com/en-gb/azure/service-fabric/service-fabric-service-manifest-resources

应用程序端口范围是集群范围的,默认为 20000-30000。

您可以更改它,例如通过 ARM 模板或https://resources.azure.com

    "nodeTypes": [
      {
        "name": "nt",
...

        "applicationPorts": {
          "startPort": 20000,
          "endPort": 30000
        },
...
      }
    ],
Run Code Online (Sandbox Code Playgroud)

静态端点端口可以在servicemanifest.json您的服务中配置。

    "nodeTypes": [
      {
        "name": "nt",
...

        "applicationPorts": {
          "startPort": 20000,
          "endPort": 30000
        },
...
      }
    ],
Run Code Online (Sandbox Code Playgroud)