Alojar uma aplicação Node.js no Azure Service Fabric

Este quickstart ajuda-te a implementar uma aplicação existente (Node.js neste exemplo) para um cluster de Fabric de Serviço a correr em Azure.

Pré-requisitos

Antes de começar, certifique-se de que configurou o seu ambiente de desenvolvimento, que inclui a instalação do SDK do Service Fabric e do Visual Studio 2019 ou 2015.

Também precisa de ter uma aplicação de Node.js existente para implementação. Este guia de iniciação rápida utiliza um site Node.js simples que pode ser descarregado aqui. Extrai este ficheiro para a tua <path-to-project>\ApplicationPackageRoot\<package-name>\Code\ pasta depois de criares o projeto no passo seguinte.

Se não tiver uma subscrição do Azure, crie uma conta gratuita.

Criar o serviço

Iniciar Visual Studio como administrador.

Crie um projeto com CTRL+SHIFT+N

No diálogo New Project, escolha Cloud > Service Fabric Application.

Nomeie a aplicação MyGuestApp e pressione em Criar.

Important

Node.js pode facilmente ultrapassar o limite de 260 caracteres para caminhos que o Windows tem. Use um caminho curto para o próprio projeto, como c:\code\svc1. Opcionalmente, pode seguir estas instruções para permitir caminhos longos de ficheiros em Windows 10.

Diálogo de novo projeto em Visual Studio

Pode criar qualquer tipo de serviço Service Fabric a partir do próximo diálogo. Nesta iniciação rápida, escolha Guest Executable.

Nomeie o serviço MyGuestService e defina as opções à direita com os seguintes valores:

Configurações Value
Pasta de Pacotes de Código <A pasta com a tua aplicação Node.js>
Comportamento do Pacote de Código Copiar o conteúdo da pasta para o projeto
Programa node.exe
Argumentos server.js
Pasta de trabalho CodePackage

Pressione OK.

Caixa de diálogo Novo Serviço no Visual Studio

O Visual Studio cria o projeto de aplicação e o projeto de serviço do ator e apresenta-os no Explorador de Soluções.

O projeto de aplicação (MyGuestApp) não contém código diretamente. O projeto faz referência a um conjunto de projetos de serviço. Além disso, contém outros três tipos de conteúdo:

  • Publicar perfis
    Preferências de ferramentas para diferentes ambientes.

  • Scripts
    Script PowerShell para implementar/atualizar a sua aplicação.

  • Definição de aplicação
    Inclui o manifesto da aplicação sob ApplicationPackageRoot. Os ficheiros de parâmetros de aplicação associados estão sob Parâmetros de Aplicação, que definem a aplicação e permitem configurá-la especificamente para um determinado ambiente.

Para uma visão geral do conteúdo do projeto de serviço, consulte Começar com Serviços Fiáveis.

Configurar a rede

A aplicação Node.js exemplo que estamos a implementar usa a porta 80 e precisamos de informar a Fabric de Serviço que precisamos que essa porta seja exposta.

Abra o ficheiroServiceManifest.xml no projeto. No final do manifesto, há um <Resources> \ <Endpoints> com uma entrada já definida. Modificar essa entrada para adicionar Port, Protocol, e Type.

  <Resources>
    <Endpoints>
      <!-- This endpoint is used by the communication listener to obtain the port on which to 
           listen. Please note that if your service is partitioned, this port is shared with 
           replicas of different partitions that are placed in your code. -->
      <Endpoint Name="MyGuestAppServiceTypeEndpoint" Port="80" Protocol="http" Type="Input" />
    </Endpoints>
  </Resources>

Publicar no Azure

Se carregares em F5 e executares o projeto, ele é implementado no cluster local. No entanto, vamos implementar para o Azure em vez disso.

Clique com o botão direito no projeto e escolha Publicar... que abre um diálogo para publicar em Azure.

Publicar no Azure Dialog para um serviço de Service Fabric

Selecione o perfil de destino PublishProfiles\Cloud.xml.

Se ainda não o fizeste, escolhe uma conta Azure para implementar. Se ainda não tiveres um, inscreve-te.

Em Connection Endpoint, selecione o cluster do Service Fabric onde pretende efetuar a implementação. Se não tiveres um, seleciona <Criar novo cluster... > que abre a janela do navegador web para o portal Azure. Para mais informações, consulte criar um cluster no portal.

Ao criar o cluster de Fabric de Serviços, certifique-se de definir a definição Custom endpoints para 80.

Configuração do tipo de nó do Service Fabric com endpoint personalizado

Criar um novo cluster Service Fabric demora algum tempo a concluir. Depois de criado, volte ao diálogo de publicar e selecione <Atualizar>. O novo cluster está listado na caixa suspensa; Seleciona-o.

Prima Publicar e aguarde até que a implementação termine.

Esta operação poderá demorar alguns minutos. Depois de concluída, pode demorar mais alguns minutos até a candidatura estar totalmente disponível.

Teste o website

Depois de o seu serviço ser publicado, teste-o num navegador web.

Primeiro, abra o portal Azure e encontre o seu serviço Service Fabric.

Verifique a lâmina de visão geral do endereço do serviço. Utilize o nome de domínio da propriedade ponto final da ligação do cliente. Por exemplo, http://mysvcfab1.westus2.cloudapp.azure.com.

Painel de descrição geral do Service Fabric no portal do Azure

Navega até este endereço onde verás a HELLO WORLD resposta.

Eliminar o cluster

Não se esqueça de eliminar todos os recursos que criou para este início rápido, pois ser-lhe-ão cobrados custos por esses recursos.

Próximos passos

Leia mais sobre executáveis convidados.