Tutorial de atualização de aplicações do Service Fabric com o Visual Studio


O Azure Service Fabric simplifica o processo de atualização de aplicações na cloud ao garantir que apenas os serviços alterados são atualizados e que o estado de funcionamento da aplicação é monitorizado durante todo o processo de atualização. Também reverte automaticamente a aplicação para a versão anterior ao encontrar problemas. As atualizações de aplicações do Service Fabric são Zero Tempo de Inatividade, uma vez que a aplicação pode ser atualizada sem tempo de inatividade. Este tutorial aborda como concluir uma atualização sem interrupção do Visual Studio.

Passo 1: criar e publicar o exemplo de Objetos Visuais

Primeiro, transfira a aplicação Objetos Visuais a partir do GitHub. Em seguida, crie e publique a aplicação ao clicar com o botão direito do rato no projeto da aplicação, VisualObjects e selecionar o comando Publicar no item de menu do Service Fabric.

Menu de contexto para uma aplicação do Service Fabric

Selecionar Publicar apresenta um pop-up e pode definir o Perfil de destino para PublishProfiles\Local.xml. A janela deverá ter o seguinte aspeto antes de clicar em Publicar.

Publicar uma aplicação do Service Fabric

Agora, pode clicar em Publicar na caixa de diálogo. Pode utilizar Service Fabric Explorer para ver o cluster e a aplicação. A aplicação Objetos Visuais tem um serviço Web para o qual pode aceder escrevendo http://localhost:8081/visualobjects/ na barra de endereço do browser. Deverá ver 10 objetos visuais flutuantes a moverem-se no ecrã.

NOTA: Se implementar no Cloud.xml perfil (Azure Service Fabric), a aplicação deverá estar disponível em http://{ServiceFabricName}.{ Region}.cloudapp.azure.com:8081/visualobjects/. Certifique-se de que 8081/TCP configurou no Balanceador de Carga (localize o Balanceador de Carga no mesmo grupo de recursos que a instância do Service Fabric).

Passo 2: Atualizar o exemplo de Objetos Visuais

Poderá reparar que, com a versão que foi implementada no passo 1, os objetos visuais não giram. Vamos atualizar esta aplicação para uma em que os objetos visuais também giram.

Selecione o projeto VisualObjects.ActorService na solução VisualObjects e abra o ficheiro VisualObjectActor.cs . Nesse ficheiro, aceda ao método MoveObject, comente visualObject.Move(false)e anule o comentário visualObject.Move(true). Esta alteração de código roda os objetos após a atualização do serviço. Agora pode criar (não reconstruir) a solução, que cria os projetos modificados. Se selecionar Reconstruir tudo, tem de atualizar as versões de todos os projetos.

Também precisamos de criar uma versão da nossa aplicação. Para fazer alterações à versão depois de clicar com o botão direito do rato no projeto VisualObjects , pode utilizar a opção Editar Versões de Manifesto do Visual Studio. Selecionar esta opção apresenta a caixa de diálogo para versões de edição da seguinte forma:

Caixa de diálogo Controlo de versões

Atualize as versões dos projetos modificados e os respetivos pacotes de código, juntamente com a aplicação para a versão 2.0.0. Depois de efetuar as alterações, o manifesto deverá ter o seguinte aspeto (as partes a negrito mostram as alterações):

Atualizar versões

As ferramentas do Visual Studio podem efetuar rollups automáticos de versões ao selecionar Atualizar automaticamente as versões da aplicação e do serviço. Se utilizar o SemVer, terá de atualizar o código e/ou a versão do pacote de configuração apenas se essa opção estiver selecionada.

Guarde as alterações e selecione agora a caixa Atualizar a Aplicação .

Passo 3: Atualizar a aplicação

Familiarize-se com os parâmetros de atualização da aplicação e o processo de atualização para compreender bem os vários parâmetros de atualização, tempos limite e critérios de estado de funcionamento que podem ser aplicados. Para estas instruções, o critério de avaliação do estado de funcionamento do serviço está definido como o modo predefinido (modo não monitorizado). Pode configurar estas definições ao selecionar Configurar Definições de Atualização e, em seguida, modificar os parâmetros conforme pretendido.

Agora, estamos todos prontos para iniciar a atualização da aplicação ao selecionar Publicar. Esta opção atualiza a sua aplicação para a versão 2.0.0, na qual os objetos giram. O 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. O acesso ao serviço pode ser verificado através do seu cliente (browser).

Agora, à medida que a atualização da aplicação prossegue, pode monitorizá-la com Service Fabric Explorer, utilizando o separador Atualizações em Curso nas aplicações.

Dentro de 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 indicar que a atualização está concluída. E deve descobrir que todos os objetos visuais na janela do browser estão agora a rodar!

Poderá querer tentar alterar as versões e mudar da versão 2.0.0 para a versão 3.0.0 como um exercício ou mesmo da versão 2.0.0 para a versão 1.0.0. Jogue com tempos limite e políticas de saúde para se familiarizar com eles. Ao implementar num cluster do Azure em oposição a um cluster local, os parâmetros utilizados podem ter de ser diferentes. Recomendamos que defina os tempos limite de forma conservadora.

Passos seguintes

Atualizar a sua aplicação com o PowerShell orienta-o através de uma atualização da aplicação com o PowerShell.

Controle a forma como a sua aplicação é atualizada com os parâmetros de atualização.

Torne as atualizações da sua aplicação compatíveis ao aprender a utilizar a serialização de dados.

Saiba como utilizar funcionalidades avançadas ao atualizar a sua aplicação ao referir-se a Tópicos avançados.

Corrija problemas comuns nas atualizações de aplicações ao consultar os passos em Resolução de problemas de atualizações de aplicações.