Partilhar via


(PRECADO) Executar aplicações em Kubernetes

Dica

Para a versão atualizada este tutorial que utiliza Azure Kubernetes Service, consulte Tutorial: Executar aplicações em Azure Kubernetes Service (AKS).

Aviso

O Serviço de Contentores Azure (ACS) está a ser depreciado. Não estão a ser adicionadas novas funcionalidades ou funcionalidades ao ACS. Todas as APIs, experiência do portal, comandos CLI e documentação são marcados como precedidos.

Em 2017, introduzimos Azure Kubernetes Service (AKS) para simplificar a gestão, implantação e operações da Kubernetes. Se utilizar o orquestrador Kubernetes, por favor, emigre para a AKS até 31 de janeiro de 2020. Para começar, consulte migrar para Azure Kubernetes Service.

Para mais informações, consulte o anúncio de depreciação do Serviço de Contentores Azure no Azure.com.

Neste tutorial, parte quatro de sete, a aplicação de exemplo é implementada num cluster do Kubernetes. Os passos concluídos incluem:

  • Atualizar ficheiros de manifesto Kubernetes
  • Executar uma aplicação no Kubernetes
  • Testar a aplicação

Nos tutoriais subsequentes, esta aplicação é aumentada horizontalmente, atualizada e o Log Analytics é configurado para monitorizar o cluster de Kubernetes.

Este tutorial pressupõe um conhecimento básico dos conceitos do Kubernetes. Para obter informações detalhadas sobre o Kubernetes, veja a documentação do Kubernetes.

Antes de começar

Nos tutoriais anteriores, foi compactada uma aplicação numa imagem de contentor, a imagem foi carregada para o Azure Container Registry e foi criado um cluster de Kubernetes.

Para concluir este tutorial, precisa do ficheiro de manifesto previamente criado do Kubernetes azure-vote-all-in-one-redis.yml. Este ficheiro foi transferido com o código de origem da aplicação num tutorial anterior. Certifique-se de que tem um clone do repositório e que foram alterados diretórios no repositório clonado.

Se ainda não concluiu estes passos e pretende acompanhar, regresse ao Tutorial 1 – Criar imagens de contentor.

Atualizar ficheiro de manifesto

Neste tutorial, o Azure Container Registry (ACR) serviu para armazenar uma imagem de contentor. Antes de executar a aplicação, o nome de servidor de início de sessão ACR tem de ser atualizado no ficheiro de manifesto Kubernetes.

Obtenha o nome do servidor de início de sessão ACR com o comando az acr list.

az acr list --resource-group myResourceGroup --query "[].{acrLoginServer:loginServer}" --output table

O ficheiro de manifesto foi previamente criado com um nome de servidor de início de sessão de microsoft. Abra o ficheiro com qualquer editor de texto. Neste exemplo, o ficheiro está aberto com vi.

vi azure-vote-all-in-one-redis.yml

Substitua microsoft pelo nome do servidor de início de sessão do ACR. Este valor foi encontrado na linha 47 do ficheiro de manifesto.

containers:
- name: azure-vote-front
  image: microsoft/azure-vote-front:v1

Guarde e feche o ficheiro.

Implementar aplicação

Utilize o comando kubectl create para executar a aplicação. Este comando analisa o ficheiro de manifesto e cria os objetos de Kubernetes definidos.

kubectl create -f azure-vote-all-in-one-redis.yml

Resultado:

deployment "azure-vote-back" created
service "azure-vote-back" created
deployment "azure-vote-front" created
service "azure-vote-front" created

Testar aplicação

O serviço do Kubernetes é criado, o que expõe a aplicação na Internet. Este processo pode demorar alguns minutos.

Para monitorizar o progresso, utilize o comando kubectl get service com o argumento --watch.

kubectl get service azure-vote-front --watch

Inicialmente, o EXTERNAL-IP do serviço azure-vote-front aparece como pending. Quando o endereço EXTERNAL-IP mudar de pending para IP address, utilize CTRL-C para parar o processo de observação do kubectl.

NAME               CLUSTER-IP    EXTERNAL-IP   PORT(S)        AGE
azure-vote-front   10.0.42.158   <pending>     80:31873/TCP   1m
azure-vote-front   10.0.42.158   52.179.23.131 80:31873/TCP   2m

Para ver a aplicação, navegue para o endereço IP externo.

Imagem de aglomerado de Kubernetes em Azure

Passos seguintes

Neste tutorial, a aplicação do Azure vote foi implementada num cluster de Kubernetes do Azure Container Service. As tarefas concluídas incluem:

  • Transferir ficheiros de manifesto Kubernetes
  • Executar a aplicação no Kubernetes
  • Testou a aplicação

Avance para o próximo tutorial para saber mais sobre o dimensionamento de uma aplicação Kubernetes e a infraestrutura de Kubernetes subjacente.