Keep application old version running side-by-side with the newer version in Azure Service Fabric

前端 未结 2 768
醉酒成梦
醉酒成梦 2021-02-06 16:33

I need to keep several versions of a application running at the same time on Service Fabric.

1.0 1.1 ....

Instead of updating and replacing versions, I need to k

2条回答
  •  滥情空心
    2021-02-06 17:07

    As Matt Thalman said, is possible to have different versions of same app running in the Service Fabric cluster.

    I've tested with the sample app WordCount(http://aka.ms/servicefabric-wordcountapp). To see more details how download the app and deploy it, see https://azure.microsoft.com/en-us/documentation/articles/service-fabric-get-started-with-a-local-cluster/

    I've duplicated the WordCount as WordCountV1 and WordCountV2.

    Then I've changed the /ApplicationManifest.xml to have different ApplicationTypeVersion on each package. It's necessary for displaying the current version of the App in the Cluster Manager because both apps are shown grouped by the ApplicationTypeName.

    V1

    
    

    V2

    
    

    Yet I've changed the /WordCountWebServicePkg/Code/wwwroot/index.html file to have different content on both packages.

    Is necessary to specify different Endpoints, so I've changed the file /WordCountWebServicePkg/ServiceManifest.xml in both packages to respond on different Ports

    V1

    
    

    V2

    
    

    The last step is to use different a ApplicationName to publish packages:

    V1

    Publish-NewServiceFabricApplication -ApplicationPackagePath c:\ServiceFabric\WordCountV1.sfpkg -App
    licationName "fabric:/WordCountV1"
    

    V2

    Publish-NewServiceFabricApplication -ApplicationPackagePath c:\ServiceFabric\WordCountV2.sfpkg -App
    licationName "fabric:/WordCountV2"
    

    Both apps are published side-by-side and we can have more control on version update with that.

    V1

    http://localhost:8081/

    V2

    http://localhost:8082/

    Hope it helps!

    PS: Azure Service Fabric documentation team, this subject can be good to be in public docs

提交回复
热议问题