Compartilhar via


Implantar um aplicativo

Este artigo descreve como implantar um aplicativo em contêineres no cluster do Kubernetes.

Pré-requisitos

Para começar, configure o kubernetes de computador único ou o cluster completo do Kubernetes .

Implantar um aplicativo Linux de exemplo

Etapa 1: atualizar o arquivo de manifesto

Este artigo usa um aplicativo de exemplo que é um aplicativo de votação simples que consiste em um front-end e back-end, que se baseia na imagem azure-vote-front da Microsoft. A imagem de contêiner para esse aplicativo é hospedada no ACR (Registro de Contêiner do Azure). Consulte linux-sample.yaml no pacote de repositório do GitHub para o manifesto de implantação. No YAML, especificamos uma nodeSelector marca como Linux.

Etapa 2: implantar o aplicativo

Para implantar o aplicativo, use o comando kubectl apply. Esse comando analisa o arquivo de manifesto e cria objetos Kubernetes definidos. Especifique o arquivo de manifesto YAML, conforme mostrado no exemplo a seguir:

kubectl apply -f  https://raw.githubusercontent.com/Azure/AKS-Edge/main/samples/others/linux-sample.yaml

Etapa 3: verificar os pods

Aguarde alguns minutos para que os pods estejam no estado em execução :

kubectl get pods -o wide

Captura de tela mostrando pods do Linux em execução.

Etapa 4: verificar os serviços

Para monitorar o progresso, use o comando kubectl get services com o --watch parâmetro :

kubectl get services

Captura de tela mostrando os serviços do Linux em execução.

Inicialmente, o EXTERNAL-IP para o azure-vote-front serviço é mostrado como pending. Quando o EXTERNAL-IP endereço muda de pending para um endereço IP público real, você pode usar o endereço IP atribuído ao serviço.

Importante

Em clusters de computador único, se você implantou o cluster do Kubernetes sem especificar um -ServiceIPRangeSize, não terá IPs alocados para seus serviços de carga de trabalho e não terá um endereço IP externo. Nesse caso, localize o endereço IP da VM do Linux (Get-AksEdgeNodeAddr):

Get-AksEdgeNodeAddr -NodeType Linux

Agora você pode acrescentar a porta externa ao endereço IP da VM (por exemplo, 192.168.1.12:30432).

Etapa 5: testar seu aplicativo

Para ver o aplicativo em ação, abra um navegador da Web no endereço IP externo do sue serviço:

Captura de tela mostrando aplicativos Linux em execução.

Se o aplicativo não for carregado, pode ser devido a um problema de autorização com o registro de imagem. Para exibir o status de seus contêineres, use o comando kubectl get pods. Se as imagens de contêiner não puderem ser recuperadas, consulte Autenticar com Registro de Contêiner do Azure de Serviço de Kubernetes do Azure.

Etapa 6: remover aplicativo

Para limpo, exclua todos os recursos usando o seguinte comando:

kubectl delete -f https://raw.githubusercontent.com/Azure/AKS-Edge/main/samples/others/linux-sample.yaml

Implantar um aplicativo windows de exemplo no cluster

Este exemplo executa um aplicativo de ASP.NET de exemplo com base na imagem de exemplo da Microsoft. Consulte win-sample.yaml. O YAML especifica a nodeSelector marca como Windows.

Etapa 1: implantar o aplicativo especificando o nome do manifesto YAML

Verifique se você está no diretório do YAML em uma janela do PowerShell e execute o seguinte comando:

kubectl apply -f https://raw.githubusercontent.com/Azure/AKS-Edge/main/samples/others/win-sample.yaml

Etapa 2: verificar se o pod de exemplo está em execução

Pode levar algum tempo para que o pod alcance o status em execução, dependendo da conexão com a Internet. A imagem ASP.NET é grande:

kubectl get pods -o wide

Captura de tela mostrando pods do Windows em execução.

Etapa 3: verificar se o serviço de exemplo está em execução

kubectl get services

Captura de tela mostrando os serviços do Windows em execução.

Como este exemplo é implantado como um serviço do tipo NodePort, você pode recuperar o endereço IP do nó Kubernetes no qual o aplicativo está em execução e, em seguida, acrescentar a porta do NodePort. Obtenha o IP do nó Kubernetes usando o seguinte Get-AksEdgeNodeAddrcomando:

Get-AksEdgeNodeAddr -NodeType Windows

Screesnhot mostrando informações do cluster do Windows.

Etapa 4: verificar o exemplo do Windows em execução

Abra um navegador da Web e localize o NodePort para acessar seu serviço:

Captura de tela mostrando o aplicativo Windows em execução.

Etapa 5: limpo para cima

Para limpo, exclua todos os recursos usando o seguinte comando:

kubectl delete -f https://raw.githubusercontent.com/Azure/AKS-Edge/main/samples/others/win-sample.yaml

Implantando seus próprios aplicativos

As etapas anteriores mostraram como você pode implantar nossos aplicativos de exemplo. Para implantar seu próprio aplicativo, faça o seguinte:

  • Empacote seu aplicativo em uma imagem de contêiner e carregue a imagem para Registro de Contêiner do Azure ou em um registro de contêiner de sua escolha. Examine estas etapas para criar uma imagem de contêiner do aplicativo.

  • O AKS Edge Essentials habilita clusters de so misto. Verifique se os pods são agendados em nós com o sistema operacional correspondente. Adicione nodeSelector aos arquivos de implantação. Essa opção informa ao Kubernetes para executar seus pods em nós de um sistema operacional específico (SO). Se o cluster for de sistema operacional único, você poderá ignorar esta etapa; mas, para melhor prática, rotule cada arquivo de implantação com seletores de nó:

    nodeSelector:
        "kubernetes.io/os": linux
    
    nodeSelector:
        "kubernetes.io/os": windows
    

Próximas etapas