Criar seu primeiro aplicativo do Azure Service Fabric
O Service Fabric fornece SDKs para compilação de serviços no Linux em .NET Core e Java. Neste tutorial, vamos ver como criar um aplicativo para Linux e compilar um serviço usando C# no .NET Core 2.0.
Pré-requisitos
Antes de começar, verifique se você configurar o ambiente de desenvolvimento Linux. Se você estiver usando Mac OS X, poderá configurar um ambiente de uma caixa do Linux em uma máquina virtual usando o Vagrant.
Você também desejará instalar a CLI do Service Fabric
Instalar e configurar os geradores para C#
O Service Fabric fornece ferramentas de scaffolding que ajudam a criar aplicativos do Service Fabric em um terminal usando geradores de modelos Yeoman. Siga estas etapas para configurar os geradores de modelo do Yeoman para C#:
Instalar o nodejs e o NPM em seu computador
curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.0/install.sh | bash nvm install node
Instalar o gerador de modelos Yeoman em seu computador a partir do NPM
npm install -g yo
Instalar o gerador de aplicativos Yeoman C# do Service Fabric no NPM
npm install -g generator-azuresfcsharp
Criar o aplicativo
Um aplicativo do Service Fabric pode conter um ou mais serviços, cada um com uma função específica no fornecimento de funcionalidade do aplicativo. O gerador Yeoman do Service Fabric para C#, instalado na última etapa, que facilita a criação de seu primeiro serviço e a adição de mais serviços posteriormente. Vamos usar Yeoman para criar um novo aplicativo com um único serviço.
Em um terminal, digite o comando a seguir para começar a criar o scaffolding:
yo azuresfcsharp
Nome do seu aplicativo.
Escolha o tipo de seu primeiro serviço e dê um nome para ele. Para os fins deste tutorial, escolheremos o Serviço Reliable Actor.
Observação
Para obter mais informações sobre as opções, confira Visão geral do modelo de programação do Service Fabric.
Compilar o aplicativo
Os modelos Yeoman do Service Fabric incluem um script de build para criar o aplicativo por meio do terminal (após navegar até a pasta do terminal).
cd myapp
./build.sh
Implantar o aplicativo
Após a compilação do aplicativo, você pode implantá-lo no cluster local.
Conectar-se ao cluster local do Service Fabric.
sfctl cluster select --endpoint http://localhost:19080
Use o script de instalação fornecido no modelo para copiar o pacote de aplicativo no repositório de imagens do cluster, registre o tipo de aplicativo e crie uma instância do aplicativo.
./install.sh
A implantação do aplicativo interno é igual a qualquer outro aplicativo do Service Fabric. Consulte a documentação sobre como gerenciar um aplicativo do Service Fabric com a CLI do Service Fabric para obter instruções detalhadas.
Os parâmetros para esses comandos podem ser encontrados nos manifestos gerados dentro do pacote de aplicativos.
Depois da implantação do aplicativo, abra um navegador e navegue até Service Fabric Explorer em http://localhost:19080/Explorer
. Em seguida, expanda o nó Aplicativos e observe que agora há uma entrada para o seu tipo de aplicativo e outra para a primeira instância desse tipo.
Importante
Para implantar o aplicativo em um cluster seguro do Linux no Azure, você precisa configurar um certificado para validar seu aplicativo com o runtime do Service Fabric. Isso permite que os serviços de Reliable Services se comuniquem com as APIs de runtime do Service Fabric subjacente. Para obter mais informações, consulte Configurar um aplicativo de Reliable Services para executar em clusters do Linux.
Inicie o cliente de teste e execute um failover
Projetos de atores não fazem nada por conta própria. Eles exigem outro serviço ou cliente para enviar mensagens a eles. O modelo de ator inclui um script de teste simples que você pode usar para interagir com o serviço de ator.
Execute o script usando o utilitário de inspeção para ver a saída do serviço de ator.
Para o MAC OS X, você precisa copiar a pasta myactorsvcTestClient no mesmo local do contêiner executando os seguintes comandos adicionais.
docker cp [first-four-digits-of-container-ID]:/home docker exec -it [first-four-digits-of-container-ID] /bin/bash cd /home
cd myactorsvcTestClient watch -n 1 ./testclient.sh
No Service Fabric Explorer, localize o nó que hospeda a réplica primária para o serviço de ator. Na captura de tela abaixo, é o nó 3.
Clique no nó encontrado na etapa anterior e selecione Desativar (Reiniciar) no menu Ações. Esta ação reiniciará um nó no cluster local e forçará um failover para uma das réplicas secundárias em execução em outro nó. Ao fazer isso, preste atenção à saída do cliente de teste e observe que o contador continua a aumentar apesar do failover.
Adicionando mais serviços a um aplicativo existente
Para adicionar outro serviço a um aplicativo já criado usando yo
, execute as seguintes etapas:
- Altere o diretório para a raiz do aplicativo existente. Por exemplo,
cd ~/YeomanSamples/MyApplication
, seMyApplication
é o aplicativo criado pelo Yeoman. - Execute
yo azuresfcsharp:AddService