Azure Service Fabric 5.1.150.9590内部部署群集

时间:2016-06-22 07:23:34

标签: azure-service-fabric

我正尝试在5台Windows Server 2012 R2虚拟机上使用Azure Service Fabric V5.1.150.9590部署内部部署的5节点集群。

使用ClusterConfig.Unsecure.json作为模式,我得到以下异常:

    Create Cluster failed with exception: System.AggregateException: One or more errors occurred. ---> System.ArgumentExcept
    ion: Primary node type node count is not sufficient for reliability level Bronze; You have total primary node type nodes
    : 1; the required seed node count for this reliability level is 3.
       at System.Fabric.WRPServiceCommon.Common.DeployAnywhereSettingsValidator.ValidatNodeTypes()
       at System.Fabric.WRPServiceCommon.Common.DeployAnywhereSettingsValidator.Validate()
       at System.Fabric.JsonImpl.ManifestConverter.ConstructClusterManifestBuilder(String jsonClusterConfigPath)
       at System.Fabric.JsonImpl.ManifestConverter.System.Fabric.JsonWrapper.IManifestConverter.ConvertFromJsonToXml(String jsonClusterConfigPath)
       at System.Fabric.DeploymentManager.<CreateClusterAsyncInternal>d__a.MoveNext()
    --- End of stack trace from previous location where exception was thrown ---
       at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
       at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
       at System.Fabric.DeploymentManager.<CreateClusterAsync>d__0.MoveNext()
       --- End of inner exception stack trace ---
       at System.Threading.Tasks.Task.ThrowIfExceptional(Boolean includeTaskCanceledExceptions)
       at System.Threading.Tasks.Task.Wait(Int32 millisecondsTimeout, CancellationToken cancellationToken)
       at Microsoft.ServiceFabric.Powershell.ClusterCmdletBase.NewCluster(String clusterConfigurationFilePath, String fabric PackageSourcePath, Boolean rollbackOnFailure)
    ---> (Inner Exception #0) System.ArgumentException: Primary node type node count is not sufficient for reliability level  Bronze; You have total primary node type nodes: 1; the required seed node count for this reliability level is 3.
       at System.Fabric.WRPServiceCommon.Common.DeployAnywhereSettingsValidator.ValidatNodeTypes()
       at System.Fabric.WRPServiceCommon.Common.DeployAnywhereSettingsValidator.Validate()
       at System.Fabric.JsonImpl.ManifestConverter.ConstructClusterManifestBuilder(String jsonClusterConfigPath)
       at System.Fabric.JsonImpl.ManifestConverter.System.Fabric.JsonWrapper.IManifestConverter.ConvertFromJsonToXml(String jsonClusterConfigPath)
       at System.Fabric.DeploymentManager.<CreateClusterAsyncInternal>d__a.MoveNext()
    --- End of stack trace from previous location where exception was thrown ---
       at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
       at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
       at System.Fabric.DeploymentManager.<CreateClusterAsync>d__0.MoveNext()<---

我尽力结束这项工作。有没有人使用与Azure Service Fabric V5.1.150.9590一起使用的ClusterConfig.json示例?

任何有关ClusterConfig.json的文档链接也会有所帮助。

1 个答案:

答案 0 :(得分:3)

几天前我遇到了同样的问题。我切换到最新的SF版本5.1.150.9590,但使用了旧的clusterConfig.json,它不包含 reliabilityLevel isPrimary 的值。但是通过以下配置,我设法设置了一个集群。请注意,这是一个三节点群集,其中一个 nodeType ,标记为主节点。所以这三个节点都是初选。

{
   "name":"SampleCluster",
   "clusterManifestVersion":"1.0.0",
   "apiVersion":"2015-01-01-alpha",
   "nodes":[
      {
         "nodeName":"vm1",
         "iPAddress":"10.0.10.12",
         "nodeTypeRef":"NodeType0",
         "faultDomain":"fd:/dc1/fd1",
         "upgradeDomain":"UD0"
      },
      {
         "nodeName":"vm2",
         "iPAddress":"10.0.11.12",
         "nodeTypeRef":"NodeType0",
         "faultDomain":"fd:/dc1/fd2",
         "upgradeDomain":"UD1"
      },
      {
         "nodeName":"vm3",
         "iPAddress":"10.0.12.12",
         "nodeTypeRef":"NodeType0",
         "faultDomain":"fd:/dc1/fd3",
         "upgradeDomain":"UD2"
      }
   ],
   "diagnosticsFileShare": {
        "etlReadIntervalInMinutes": "5",
        "uploadIntervalInMinutes": "10",
        "dataDeletionAgeInDays": "7",
        "etwStoreConnectionString": "file:c:\\ProgramData\\SF\\FileshareETW",
        "crashDumpConnectionString": "file:c:\\ProgramData\\SF\\FileshareCrashDump",
        "perfCtrConnectionString": "file:c:\\ProgramData\\SF\\FilesharePerfCtr"
    },
   "properties":{
       "reliabilityLevel": "Bronze",
        "nodeTypes": [
          {
            "name": "NodeType0",
            "clientConnectionEndpointPort": "19000",
            "clusterConnectionEndpoint": "19001",
            "httpGatewayEndpointPort": "19080",
            "applicationPorts": {
                "startPort": "20001",
                "endPort": "20031"
            },
            "ephemeralPorts": {
                "startPort": "20032",
                "endPort": "20062"
            },
            "isPrimary": true
          }
      ],
      "fabricSettings": [
        {
          "name": "Setup",
          "parameters": [
            {
                "name": "FabricDataRoot",
                "value": "C:\\ProgramData\\SF"
            },
            {
                "name": "FabricLogRoot",
                "value": "C:\\ProgramData\\SF\\Log"
            }
          ]
        }
      ]
   }
}

[免责声明] 准确地说:使用上面的配置我设法解决了特定的错误。但是,我仍然遇到其他一些与此问题无关的问题:Error creating an on-premise multi-machine Service Fabric Cluster