操作超时将Service Fabric应用程序发布到Azure

时间:2016-07-31 20:46:34

标签: azure azure-service-fabric

当我尝试将Service Fabric应用程序发布到Azure群集时,出现以下错误消息:

3>Copy-ServiceFabricApplicationPackage : Operation timed out.
3>At C:\Program Files\Microsoft SDKs\Service 
3>Fabric\Tools\PSModule\ServiceFabricSDK\Publish-NewServiceFabricApplication.ps1:230 char:9
3>+         Copy-ServiceFabricApplicationPackage -ApplicationPackagePath  ...
3>+         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
3>    + CategoryInfo          : OperationTimeout: (:) [Copy-ServiceFabricApplicationPackage], TimeoutException
3>    + FullyQualifiedErrorId : CopyApplicationPackageErrorId,Microsoft.ServiceFabric.Powershell.CopyApplicationPackage
3> 
3>Finished executing script 'Deploy-FabricApplication.ps1'.
3>Time elapsed: 00:12:45.2589165

您可以在此处阅读:https://github.com/Azure/service-fabric-issues/issues/10

此超时将在upcomming版本中删除,但同时我有哪些选择?有没有办法按服务发布我的应用服务?

欢迎任何建议!

3 个答案:

答案 0 :(得分:5)

我已经通过在azure中运行虚拟机解决了这个问题。我已经安装了Visual Studio 2015社区和服务结构SDK。

然后我使用Visual Studio Online来托管我的代码。我在本地构建和测试,当我很开心的时候,在线提交visual studio,然后在我的构建机器上进行RDP,然后从那里进行拉取,构建和部署。

我实际上通过创建构建和部署PowerShell脚本更进了一步,所以我不需要运行visual studio。

答案 1 :(得分:1)

此问题已在Service Fabric SDK的2.5.216版中得到解决。

在发布配置文件架构中,您现在可以:

  • 压缩包以加快转移
  • 将超时持续时间设置为大于10分钟的值

将以下行添加到PublishProfiles\Cloud.xml文件以启用压缩并将超时从10分钟更改为60分钟:

<CopyPackageParameters CopyPackageTimeoutSec="3600" CompressPackage="true" />

答案 2 :(得分:0)

我对Andrew Shepherd的建议采取了类似的方法。编辑位于<MyServiceFabricApp>\Scripts\Deploy-FabricApplication.ps1的powershell部署文件,并将$ CopyPackageTimeoutSec变量更改为3600.代码段如下所示:

Param
(
....

[int]
$CopyPackageTimeoutSec = 3600
)
...