Standalone Service Fabric - AWS - FileStoreService - Copy-ServiceFabricApplicationPackage Fails

0

I have a 3 node standalone windows service fabric setup in AWS. The TestConfiguration and CreateCluster scripts run successfully, however on attempting to deploy any applications into the cluster I get the following error from powershell.

Copy-ServiceFabricApplicationPackage -ApplicationPackagePath .\pkg\<packagename> -ImageStoreConnectionString fabric:ImageStore

Copy-ServiceFabricApplicationPackage : An error occurred during this operation.  Please check the trace logs for more
details.
At line:1 char:1
+ Copy-ServiceFabricApplicationPackage -ApplicationPackagePath .\pkg\ ...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : InvalidOperation: (:) [Copy-ServiceFabricApplicationPackage], FabricException
    + FullyQualifiedErrorId : CopyApplicationPackageErrorId,Microsoft.ServiceFabric.Powershell.CopyApplicationPackage

Not sure which trace logs would be useful in diagnosing the error, however checking the windows event log on one of the nodes I see the following errors, all for the FileStoreService.

ImpersonateAndCopyFile for SourcePath:\\<ipaddress>\StoreShare_Node3\131601795137630192\6.0.232.9494_0\131601794828730764_8589934592_1.ClusterManifest.xml, DestinationPath:C:\ProgramData\SF\Node1\Fabric\work\Applications\__FabricSystem_App4294967295\work\Store\131601795317314061\6.0.232.9494_0\131601794828730764_8589934592_1.ClusterManifest.xml failed: 0x8007052e. Have tried all access tokens.


CopyFile: SourcePath:\\<ip address>\StoreShare_Node3\131601795137630192\6.0.232.9494_0\131601794828730764_8589934592_1.ClusterManifest.xml, DestinationPath:C:\ProgramData\SF\Node1\Fabric\work\Applications\__FabricSystem_App4294967295\work\Store\131601795317314061\6.0.232.9494_0\131601794828730764_8589934592_1.ClusterManifest.xml, Error:0x8007052e, ElapsedTime:80


CopyFile: no new token is found. current token count: 2

Any ideas what this could be? I have recreated a new cluster with no security, firewall has all ports opened both in AWS and on the node machines (trying to remove all things that could be blocking the copying). Within AWS am using SimpleAD so all nodes are running with the same AD administrator, and can communicate to create the cluster.

Below is the cluster config I'm using, kept it as simple as I could to try to limit the causes of the problems.

Any help with diagnosing the copy file issues, or even pointing me at the relevant trace logs would be great.

Additionally I notice the ImageStoreService is showing warnings within Service Fabric Explorer

Unhealthy event: SourceId='System.FM', Property='State', HealthState='Warning', ConsiderWarningAsError=false.
Partition reconfiguration is taking longer than expected.
ImageStoreService 3 3 00000000-0000-0000-0000-000000003000
   P/P Ready Node3 131601795137630192
   S/S InBuild Node1 131601795317314061
   S/S InBuild Node2 131601795317314062   
(Showing 3 out of 3 replicas. Total available replicas: 1)  

EDIT
Additional Information

On investigating the problem more I ran the Copy-ServiceFabricApplicationPackage with -Debug flag and it now gives the below error, suggesting the user name or password being used to either upload the package from my computer into the cluster, or for the cluster to distribute node to node is incorrect. I presume for node to node it is using the local accounts it creates ending in fffff for which I don't know why it would be creating invalid user credentials. If its between the computer uploading the package and the cluster, then currently I'm running with no security turned on, so don't know why this would be an issue?? Any help much appreciated.

Copy-ServiceFabricApplicationPackage -ApplicationPackagePath ..\pkg\Release -ImageStoreConnectionString fabric:imagestore -Debug
VERBOSE: System.Fabric.FabricException: An error occurred during this operation.  Please check the trace logs for more details. ---> System.Runtime.InteropServices.COMException: The user name or password is incorrect. (Exception from HRESULT: 0x8007052E)

Thanks

{
    "name": "SampleCluster",
    "clusterConfigurationVersion": "1.0.0",
    "apiVersion": "08-2017",
    "nodes": [
      {
        "nodeName": "Node1",
        "iPAddress": "<node 1 internal ip address>",
        "nodeTypeRef": "StandardNodeType",
        "faultDomain": "fd:/0",
        "upgradeDomain": "UD0"
      },
      {
        "nodeName": "Node2",
        "iPAddress": "<node 2 internal ip address>",
        "nodeTypeRef": "StandardNodeType",
        "faultDomain": "fd:/1",
        "upgradeDomain": "UD1"
      },
      {
        "nodeName": "Node3",
        "iPAddress": "<node 3 internal ip address>",
        "nodeTypeRef": "StandardNodeType",
        "faultDomain": "fd:/2",
        "upgradeDomain": "UD2"
      }
    ],
    "properties": {
        "diagnosticsStore": {
            "metadata":  "Please replace the diagnostics store with an actual file share accessible from all cluster machines.",
            "dataDeletionAgeInDays": "7",
            "storeType": "FileShare",
            "IsEncrypted": "false",
            "connectionstring": "c:\\ProgramData\\SF\\DiagnosticsStore"
        },
        "nodeTypes": [
          {
            "name": "StandardNodeType",
            "clientConnectionEndpointPort": "19000",
            "clusterConnectionEndpointPort": "19001",
            "leaseDriverEndpointPort": "19002",
            "serviceConnectionEndpointPort": "19003",
            "httpGatewayEndpointPort": "19080",
            "reverseProxyEndpointPort": "19081",
            "applicationPorts": {
                "startPort": "20000",
                "endPort": "30000"
            },
            "ephemeralPorts": {
                "startPort": "49152",
                "endPort": "65534"
            },
            "isPrimary": true
          }
        ],
        "fabricSettings": [
            {
                "name": "Setup",
                "parameters": [
                    {
                        "name": "FabricDataRoot",
                        "value": "C:\\ProgramData\\SF"
                    },
                    {
                        "name": "FabricLogRoot",
                        "value": "C:\\ProgramData\\SF\\Log"
                    }
                ]
            }
        ],
        "addOnFeatures": [
            "DnsService",
            "RepairManager"
        ]
    }
}
azure-service-fabric
service-fabric-on-premises
asked on Stack Overflow Jan 12, 2018 by Michael Ball • edited Jan 13, 2018 by Michael Ball

1 Answer

0

After more investigating, I discovered it was due to not correctly enabling File Sharing on the windows boxes. Although shown as enabled within the Properties of the Network Adaptor. I failed to realise the settings needed to be enabled under the Advanced Sharing Centre Options (Control Panel\Network and Internet\Network and Sharing Center\Advanced sharing settings).

answered on Stack Overflow Jan 14, 2018 by Michael Ball

User contributions licensed under CC BY-SA 3.0