Criar a sua primeira aplicação do Azure Service Fabric
O Service Fabric disponibiliza SDKs para criar serviços no Linux em .NET Core e Java. Neste tutorial, vamos ver como pode criar uma aplicação para Linux e compilar um serviço com C# no .NET Core 2.0.
Pré-requisitos
Antes de começar, certifique-se de que configurou o seu ambiente de desenvolvimento do Linux. Se você usa o macOS X, pode configurar um ambiente Linux one-box em uma máquina virtual usando o Vagrant.
Você também deseja instalar a CLI do Service Fabric
Instalar e configurar os geradores para C#
O Service Fabric fornece ferramentas estruturais que o ajudam a criar aplicações do Service Fabric a partir de um terminal com os geradores de modelos Yeoman. Siga estes passos para configurar os geradores de modelos Yeoman do Service Fabric para C#:
Instalar nodejs e NPM no 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 no seu computador a partir do NPM
npm install -g yo
Instalar o gerador de aplicações C# Yeoman do Service Fabric a partir do NPM
npm install -g generator-azuresfcsharp
Criar a aplicação
Uma aplicação de Service Fabric pode conter um ou mais serviços, cada um com uma função específica no fornecimento de funcionalidade da aplicação. O gerador Yeoman do Service Fabric para C#, que instalou no passo anterior, facilita a criação do seu primeiro serviço e a adição posterior de outros. Vamos utilizar o Yeoman para criar uma aplicação com um único serviço.
Num terminal, escreva o seguinte comando para começar a criar a estrutura:
yo azuresfcsharp
Dê um nome à aplicação.
Escolha o tipo do seu primeiro serviço e dê-lhe um nome. Para os objetivos deste tutorial, escolhemos um Serviço Reliable Actor.
Nota
Para obter mais informações sobre as opções, veja Service Fabric programming model overview (Descrição geral do modelo de programação Service Fabric).
Criar a aplicação
Os modelos Yeoman do Service Fabric incluem um script de compilação que pode utilizar para criar a aplicação a partir do terminal (depois de navegar para a pasta da aplicação).
cd myapp
./build.sh
Implementar a aplicação
Depois de criada a aplicação, pode implementá-la no cluster local.
Ligue ao cluster do Service Fabric local.
sfctl cluster select --endpoint http://localhost:19080
Execute o script de instalação fornecido no modelo para copiar o pacote de aplicação para o arquivo de imagens do cluster, registar o tipo de aplicação e criar uma instância da mesma.
./install.sh
A implementação da aplicação criada é igual à de qualquer outra aplicação do Service Fabric. Veja a documentação sobre como gerir uma aplicação do Service Fabric com a CLI do Service Fabric para obter instruções detalhadas.
Os parâmetros desses comandos encontram-se nos manifestos gerados dentro do pacote de aplicação.
Depois que o aplicativo for implantado, abra um navegador e navegue até o Service Fabric Explorer em http://localhost:19080/Explorer
. Em seguida, expanda o nó Aplicativos e observe que agora há uma entrada para o tipo de aplicativo e outra para a primeira instância desse tipo.
Importante
Para implantar o aplicativo em um cluster Linux seguro no Azure, você precisa configurar um certificado para validar seu aplicativo com o tempo de execução do Service Fabric. Isso permite que seus serviços de Serviços Confiáveis se comuniquem com as APIs de tempo de execução subjacentes do Service Fabric. Para saber mais, consulte Configurar um aplicativo de Serviços Confiáveis para ser executado em clusters Linux.
Iniciar o cliente de teste e executar uma ativação pós-falha
Projetos de atores não fazem nada sozinhos. Precisam de outro serviço ou cliente que lhes envie mensagens. O modelo de ator inclui um script de teste simples, que pode utilizar para interagir com o serviço de ator.
Execute o script com o utilitário watch para ver o resultado do serviço de ator.
No caso do MAC OS X, você precisa copiar a pasta myactorsvcTestClient para o mesmo local dentro 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 aloja a réplica primária do serviço de ator. Na captura de ecrã, é o nó 3.
Clique no nó que localizou no passo anterior e selecione Desativar (reiniciar), no menu Ações. Esta ação reinicia um nó no seu cluster local e força uma ativação pós-falha num réplica secundária em execução noutro nó. Quando realizar esta ação, tenha atenção à saída do cliente de teste e repare que o contador continua a aumentar, apesar da ativação pós-falha.
Adicionar mais serviços a uma aplicação existente
Para adicionar outro serviço a uma aplicação já criada com o yo
, execute os seguintes passos:
- Altere o diretório para a raiz da aplicação existente. Por exemplo,
cd ~/YeomanSamples/MyApplication
, seMyApplication
é a aplicação criada por Yeoman. - Executar
yo azuresfcsharp:AddService