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

Este início rápido ajuda-o a implementar uma aplicação já existente (Node.js, neste exemplo) num cluster do Service Fabric em execução no 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 uma aplicação Node.js já existente para implementação. Este início rápido utiliza um Web site Node.js simples, que pode ser transferido aqui. Extraia este ficheiro para a pasta <path-to-project>\ApplicationPackageRoot\<package-name>\Code\ depois de criar o projeto no passo seguinte.

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

Criar o serviço

Inicie o Visual Studio como administrador.

Criar um projeto com CTRL+SHIFT+N

Na caixa de diálogo Novo Projeto , selecione Aplicação do > Cloud Service Fabric.

Atribua o nome MyGuestApp à aplicação e prima Criar.

Importante

O Node.js consegue exceder facilmente o limite do Windows de 260 carateres para caminhos. Utilize um caminho curto para o projeto, como c:\code\svc1. Opcionalmente, pode seguir estas instruções para ativar caminhos de ficheiro longos no Windows 10.

Caixa de diálogo de novo projeto no Visual Studio

Pode criar qualquer tipo de serviço do Service Fabric na caixa de diálogo seguinte. Neste início rápido, escolha Executável Convidado.

Dê o nome MyGuestService ao serviço e defina as opções à direita com os valores seguintes:

Definição Valor
Pasta do Pacote de Código <a pasta com a sua aplicação Node.js>
Comportamento do Pacote de Código Copiar os conteúdos da pasta para o projeto
Programa node.exe
Argumentos server.js
Pasta de Trabalho CodePackage

Prima 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 de ator e apresenta-os no Explorador de Soluções.

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

  • Perfis de publicação
    Preferências de ferramentas para diferentes ambientes.

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

  • Definição da aplicação
    Inclui o manifesto da aplicação em ApplicationPackageRoot. Os ficheiros de parâmetro de aplicação associados em ApplicationParameters, definem a aplicação e permitem configurá-la especificamente para um determinado ambiente.

Para obter uma descrição geral do conteúdo do projeto de serviço, consulte o artigo Introdução a Reliable Services.

Configurar a rede

A aplicação Node.js de exemplo que estamos a implementar utiliza a porta 80 e temos de dizer ao Service Fabric que esta porta tem de estar exposta.

Abra o ficheiro ServiceManifest.xml no projeto. Na parte inferior do manifesto, existe uma <Resources> \ <Endpoints> com uma entrada já definida. Modifique 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>

Implementar no Azure

Se premir F5 e executar o projeto, este será implementado no cluster local. No entanto, vamos implementar no Azure.

Clique com o botão direito do rato no projeto e escolha Publicar..., o que abre uma caixa de diálogo para publicar no Azure.

Caixa de diálogo Publicar no Azure para um serviço do Service Fabric

Selecione o perfil de destino PublishProfiles\Cloud.xml.

Se ainda não o tiver feito, escolha uma conta do Azure na qual implementar. Se ainda não tiver uma, inscreva-se numa.

Em Ponto Final da Ligação, selecione o cluster do Service Fabric no qual implementar. Se não tiver um, selecione <Criar Novo Cluster...> que abre a janela do browser para o portal do Azure. Para obter mais informações, veja Create a cluster in the portal (Crair um cluster no portal).

Quando criar o cluster do Service Fabric, confirme que define a definição Pontos finais personalizados como 80.

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

A criação de um cluster do Service Fabric novo demora algum tempo a ser concluída. Depois de ter sido criado, volte à caixa de diálogo publicar e selecione <Atualizar>. O cluster novo é apresentado na caixa pendente; selecione-o.

Prima publicar e aguarde pela conclusão da implementação.

Esta operação poderá demorar alguns minutos. Depois de terminar, pode demorar alguns minutos para que a aplicação fique totalmente disponível.

Testar o Web site

Depois de o serviço ser publicado, teste-o num browser.

Em primeiro lugar, abra o portal do Azure e localize o seu serviço do Service Fabric.

Verifique o painel de descrição geral do endereço do serviço. Utilize o nome de domínio da propriedade Ponto final de ligação do cliente. Por exemplo, http://mysvcfab1.westus2.cloudapp.azure.com.

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

Navegue para este endereço onde verá 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, uma vez que lhe são cobrados esses recursos.

Passos seguintes

Leia mais sobre os executáveis convidados.