Configurar um cluster do Linux Service Fabric em sua máquina de desenvolvedor Windows
Este documento aborda como configurar um cluster Linux Service Fabric local em uma máquina de desenvolvimento Windows. Configurar um cluster Linux local é útil para testar rapidamente aplicativos direcionados para clusters Linux, mas são desenvolvidos em uma máquina Windows.
Pré-requisitos
Os clusters do Service Fabric baseados em Linux não são executados no Windows, mas para permitir a prototipagem entre plataformas, fornecemos um contêiner docker de cluster de uma caixa do Linux Service Fabric, que pode ser implantado via Docker para Windows.
Antes de começar, vai precisar do:
- De, pelo menos, 4 GB de RAM
- Versão mais recente do Docker para Windows
- O Docker deve estar em execução no modo de contêineres Linux
Gorjeta
Para instalar o Docker em sua máquina Windows, siga as etapas na documentação do Docker. Depois de instalar, verifique a instalação.
Criar um contentor local e configurar o Service Fabric
Para configurar um contêiner Docker local e ter um cluster do Service Fabric em execução, execute as seguintes etapas:
Atualize a configuração do daemon do Docker no seu anfitrião com o seguinte e reinicie-o:
{ "ipv6": true, "fixed-cidr-v6": "2001:db8:1::/64" }
A maneira aconselhada de atualizar é ir para:
- Configurações do > ícone do Docker Mecanismo > do Docker
- Adicione os novos campos listados acima
- Apply & Restart - reinicie o daemon do Docker para que as alterações entrem em vigor.
Inicie o cluster por meio do PowerShell.
Ubuntu 20.04 LTS:docker run --name sftestcluster -d -v /var/run/docker.sock:/var/run/docker.sock -p 19080:19080 -p 19000:19000 -p 25100-25200:25100-25200 mcr.microsoft.com/service-fabric/onebox:u20
Ubuntu 18.04 LTS:
docker run --name sftestcluster -d -v /var/run/docker.sock:/var/run/docker.sock -p 19080:19080 -p 19000:19000 -p 25100-25200:25100-25200 mcr.microsoft.com/service-fabric/onebox:u18
Gorjeta
Por predefinição, isto irá extrair a imagem com a versão mais recente do Service Fabric. Para revisões específicas, consulte a página Onebox do Service Fabric no Docker Hub.
Opcional: crie sua imagem estendida do Service Fabric.
Em um novo diretório, crie um arquivo chamado
Dockerfile
para construir sua imagem personalizada:Nota
Você pode adaptar a imagem acima com um Dockerfile para adicionar programas ou dependências adicionais ao seu contêiner. Por exemplo, se adicionar
RUN apt-get install nodejs -y
irá permitir o suporte para aplicaçõesnodejs
como convidado executáveis.FROM mcr.microsoft.com/service-fabric/onebox:u18 RUN apt-get install nodejs -y EXPOSE 19080 19000 80 443 WORKDIR /home/ClusterDeployer CMD ["./ClusterDeployer.sh"]
Gorjeta
Por predefinição, isto irá extrair a imagem com a versão mais recente do Service Fabric. Para revisões específicas, visite a página do Hub do Docker Hub.
Para construir a sua imagem reutilizável a partir do
Dockerfile
, abra um terminal ecd
para o que segura diretamente a suaDockerfile
execução:docker build -t mysfcluster .
Nota
Esta operação irá demorar algum tempo, mas só é necessária uma vez.
Agora você pode iniciar rapidamente uma cópia local do Service Fabric sempre que precisar, executando:
docker run --name sftestcluster -d -v /var/run/docker.sock:/var/run/docker.sock -p 19080:19080 -p 19000:19000 -p 25100-25200:25100-25200 mysfcluster
Gorjeta
Forneça um nome para a instância do contentor para poder processá-la de forma mais legível.
Se a aplicação estiver a escutar em determinadas portas, as portas têm de ser especificada através da utilização de etiquetas
-p
adicionais. Por exemplo, se a sua aplicação estiver em escuta na porta 8080, adicione a seguinte etiqueta-p
:docker run -itd -p 19000:19000 -p 19080:19080 -p 8080:8080 --name sfonebox mcr.microsoft.com/service-fabric/onebox:u18
O cluster irá demorar pouco tempo a iniciar. Pode ver registos com o comando seguinte ou avançar para o dashboard para ver o estado de funcionamento dos clusters
http://localhost:19080
:docker logs sftestcluster
Depois que o cluster for implantado com êxito, conforme observado na etapa 4, você poderá ir até
http://localhost:19080
a partir de sua máquina Windows para localizar o painel do Service Fabric Explorer. Neste ponto, você pode se conectar a esse cluster usando ferramentas de sua máquina de desenvolvedor do Windows e implantar aplicativos direcionados para clusters do Linux Service Fabric.Nota
O plug-in do Eclipse não é atualmente suportado no Windows.
Quando terminar, pare e limpe o contêiner com este comando:
docker rm -f sftestcluster
Limitações Conhecidas
Seguem-se as limitações conhecidas do cluster local em execução num contentor para Mac:
- O serviço DNS não é executado e atualmente não é suportado no contêiner. Edição #132
- A execução de aplicativos baseados em contêiner requer a execução de SF em um host Linux. Atualmente, não há suporte para aplicativos de contêiner aninhados.
Próximos passos
- Configurar um cluster Linux no Windows via WSL2
- Criar e implementar a sua primeira aplicação Java do Service Fabric no Linux com o Yeoman
- Introdução ao Eclipse
- Confira outros exemplos de Java
- Saiba mais sobre as opções de suporte do Service Fabric