Tutorial de atualização de aplicativo Service Fabric usando o Visual StudioService Fabric application upgrade tutorial using Visual Studio


O Azure Service Fabric simplifica o processo de atualização de aplicativos em nuvem, garantindo que apenas os serviços alterados sejam atualizados e que a integridade do aplicativo seja monitorada durante todo o processo de atualização.Azure Service Fabric simplifies the process of upgrading cloud applications by ensuring that only changed services are upgraded, and that application health is monitored throughout the upgrade process. Ele também reverte automaticamente o aplicativo para a versão anterior após encontrar problemas.It also automatically rolls back the application to the previous version upon encountering issues. Service Fabric atualizações de aplicativo têm zero tempo de inatividade, pois o aplicativo pode ser atualizado sem tempo de inatividade.Service Fabric application upgrades are Zero Downtime, since the application can be upgraded with no downtime. Este tutorial aborda como concluir uma atualização sem interrupção do Visual Studio.This tutorial covers how to complete a rolling upgrade from Visual Studio.

Etapa 1: criar e publicar o exemplo de objetos visuaisStep 1: Build and publish the Visual Objects sample

Primeiro, baixe o aplicativo Visual Objects do github.First, download the Visual Objects application from GitHub. Em seguida, crie e publique o aplicativo clicando com o botão direito do mouse no projeto do aplicativo, VisualObjectse selecionando o comando publicar no item de menu Service Fabric.Then, build and publish the application by right-clicking on the application project, VisualObjects, and selecting the Publish command in the Service Fabric menu item.

Menu de contexto para um aplicativo Service Fabric

Selecionar publicar abre um pop-up e você pode definir o perfil de destino como PublishProfiles\Local.xml.Selecting Publish brings up a popup, and you can set the Target profile to PublishProfiles\Local.xml. A janela deve ser parecida com a seguinte antes de clicar em publicar.The window should look like the following before you click Publish.

Publicando um aplicativo Service Fabric

Agora você pode clicar em publicar na caixa de diálogo.Now you can click Publish in the dialog box. Você pode usar Service Fabric Explorer para exibir o cluster e o aplicativo.You can use Service Fabric Explorer to view the cluster and the application. O aplicativo Visual Objects tem um serviço Web que você pode acessar digitando http://localhost:8081/visualobjects/ na barra de endereços do seu navegador.The Visual Objects application has a web service that you can go to by typing http://localhost:8081/visualobjects/ in the address bar of your browser. Você deve ver 10 objetos visuais flutuantes passando pela tela.You should see 10 floating visual objects moving around on the screen.

Observação: Se estiver implantando no perfil Cloud.xml (Azure Service Fabric), o aplicativo deverá estar disponível em http://{Perfabricname}. { Região}. cloudapp. Azure. com: 8081/visualobjects/ .NOTE: If deploying to Cloud.xml profile (Azure Service Fabric), the application should then be available at http://{ServiceFabricName}.{Region}.cloudapp.azure.com:8081/visualobjects/. Verifique se você tem 8081/TCP configurado na Load Balancer (Localize o Load Balancer no mesmo grupo de recursos que a instância de Service Fabric).Make sure you do have 8081/TCP configured in the Load Balancer (find the Load Balancer in the same resource group as the Service Fabric instance).

Etapa 2: atualizar o exemplo de objetos visuaisStep 2: Update the Visual Objects sample

Você pode observar que, com a versão que foi implantada na etapa 1, os objetos visuais não giram.You might notice that with the version that was deployed in step 1, the visual objects do not rotate. Vamos atualizar esse aplicativo para um onde os objetos visuais também giram.Let's upgrade this application to one where the visual objects also rotate.

Selecione o projeto VisualObjects. ActorService na solução VisualObjects e abra o arquivo VisualObjectActor.cs .Select the VisualObjects.ActorService project within the VisualObjects solution, and open the VisualObjectActor.cs file. Dentro desse arquivo, vá para o método MoveObject, comente visualObject.Move(false) e remova a marca de comentário visualObject.Move(true).Within that file, go to the method MoveObject, comment out visualObject.Move(false), and uncomment visualObject.Move(true). Essa alteração de código gira os objetos depois que o serviço é atualizado.This code change rotates the objects after the service is upgraded. Agora você pode compilar (não recompilar) a solução, que cria os projetos modificados.Now you can build (not rebuild) the solution, which builds the modified projects. Se você selecionar Recompilar tudo, precisará atualizar as versões de todos os projetos.If you select Rebuild all, you have to update the versions for all the projects.

Também precisamos fazer a versão de nosso aplicativo.We also need to version our application. Para fazer as alterações de versão depois de clicar com o botão direito do mouse no projeto VisualObjects , você pode usar a opção Editar versões de manifesto do Visual Studio.To make the version changes after you right-click on the VisualObjects project, you can use the Visual Studio Edit Manifest Versions option. A seleção dessa opção abre a caixa de diálogo para as versões de edição da seguinte maneira:Selecting this option brings up the dialog box for edition versions as follows:

Caixa de diálogo controle de versão

Atualize as versões dos projetos modificados e seus pacotes de código, juntamente com o aplicativo para a versão 2.0.0.Update the versions for the modified projects and their code packages, along with the application to version 2.0.0. Depois que as alterações forem feitas, o manifesto deverá ser semelhante ao seguinte (as partes em negrito mostram as alterações):After the changes are made, the manifest should look like the following (bold portions show the changes):

Atualizando versões

As ferramentas do Visual Studio podem fazer rollups automáticos de versões na seleção de atualizar automaticamente as versões de aplicativo e serviço.The Visual Studio tools can do automatic rollups of versions upon selecting Automatically update application and service versions. Se você usar SemVer, precisará atualizar apenas o código e/ou a versão do pacote de configuração se essa opção estiver selecionada.If you use SemVer, you need to update the code and/or configuration package version alone if that option is selected.

Salve as alterações e agora marque a caixa atualizar o aplicativo .Save the changes, and now check the Upgrade the Application box.

Etapa 3: atualizar seu aplicativoStep 3: Upgrade your application

Familiarize-se com os parâmetros de atualização de aplicativos e o processo de atualização para obter uma boa compreensão dos vários parâmetros de atualização, tempos limite e critérios de integridade que podem ser aplicados.Familiarize yourself with the application upgrade parameters and the upgrade process to get a good understanding of the various upgrade parameters, time-outs, and health criterion that can be applied. Para este passo a passos, o critério de avaliação de integridade do serviço é definido como o padrão (modo não monitorado).For this walkthrough, the service health evaluation criterion is set to the default (unmonitored mode). Você pode definir essas configurações selecionando definir configurações de atualização e, em seguida, modificando os parâmetros conforme desejado.You can configure these settings by selecting Configure Upgrade Settings and then modifying the parameters as desired.

Agora, estamos configurados para iniciar a atualização do aplicativo selecionando publicar.Now we are all set to start the application upgrade by selecting Publish. Essa opção atualiza seu aplicativo para a versão 2.0.0, na qual os objetos giram.This option upgrades your application to version 2.0.0, in which the objects rotate. Service Fabric atualiza um domínio de atualização de cada vez (alguns objetos são atualizados primeiro, seguidos por outros) e o serviço permanece acessível durante a atualização.Service Fabric upgrades one update domain at a time (some objects are updated first, followed by others), and the service remains accessible during the upgrade. O acesso ao serviço pode ser verificado pelo cliente (navegador).Access to the service can be checked through your client (browser).

Agora, à medida que a atualização do aplicativo continua, você pode monitorá-lo com Service Fabric Explorer, usando a guia atualizações em andamento nos aplicativos.Now, as the application upgrade proceeds, you can monitor it with Service Fabric Explorer, by using the Upgrades in Progress tab under the applications.

Em alguns minutos, todos os domínios de atualização devem ser atualizados (concluídos) e a janela de saída do Visual Studio também deve declarar que a atualização foi concluída.In a few minutes, all update domains should be upgraded (completed), and the Visual Studio output window should also state that the upgrade is completed. E você deve descobrir que todos os objetos visuais na janela do navegador estão agora girando!And you should find that all the visual objects in your browser window are now rotating!

Talvez você queira tentar alterar as versões e migrar da versão 2.0.0 para a versão 3.0.0 como um exercício ou até mesmo da versão 2.0.0 de volta para a versão 1.0.0.You may want to try changing the versions, and moving from version 2.0.0 to version 3.0.0 as an exercise, or even from version 2.0.0 back to version 1.0.0. Jogue com tempos limite e políticas de integridade para se familiarizar com eles.Play with time-outs and health policies to make yourself familiar with them. Ao implantar em um cluster do Azure, em oposição a um cluster local, os parâmetros usados podem ter diferentes diferenças.When deploying to an Azure cluster as opposed to a local cluster, the parameters used may have to differ. Recomendamos que você defina os tempos limite de forma conservadora.We recommend that you set the time-outs conservatively.

Passos seguintesNext steps

Atualizar seu aplicativo usando o PowerShell orienta você durante uma atualização de aplicativo usando o PowerShell.Upgrading your application using PowerShell walks you through an application upgrade using PowerShell.

Controle como seu aplicativo é atualizado usando parâmetros de atualização.Control how your application is upgraded by using upgrade parameters.

Faça com que o aplicativo seja atualizado de forma compatível aprendendo a usar a serialização de dados.Make your application upgrades compatible by learning how to use data serialization.

Saiba como usar a funcionalidade avançada ao atualizar seu aplicativo consultando Tópicos avançados.Learn how to use advanced functionality while upgrading your application by referring to Advanced topics.

Corrija problemas comuns em atualizações de aplicativos consultando as etapas em solução de problemas de atualizações de aplicativos.Fix common problems in application upgrades by referring to the steps in Troubleshooting application upgrades.