Compartilhar via


Conceitos básicos do Serviço de Kubernetes do Azure (AKS)

Este artigo descreve os principais conceitos do AKS (Serviço de Kubernetes do Azure), um serviço de Kubernetes gerenciado que você pode usar para implantar e operar aplicativos conteinerizados em escala no Azure.

O que é Kubernetes?

Kubernetes é uma plataforma de orquestração de contêineres de código aberto, desenvolvida para automatizar a implantação, o escalonamento e o gerenciamento de aplicativos conteinerizados. Para obter mais informações, confira a documentação oficial do Kubernetes.

O que é o AKS?

O AKS é um serviço gerenciado do Kubernetes que simplifica a implantação, o gerenciamento e o dimensionamento de aplicativos em contêineres que usam o Kubernetes. Para obter mais informações, consulte O que é o AKS (Serviço de Kubernetes do Azure)?.

Componentes de um cluster

Um cluster do AKS se divide em dois componentes principais:

  • Painel de controle: o painel de controle oferece os principais serviços do Kubernetes e realiza a orquestração das cargas de trabalho dos aplicativos.
  • Nós: os nós são as máquinas virtuais (VMs) que executam seus aplicativos.

Captura de tela mostrando componentes do painel de controle e do nó do Kubernetes.

Observação

Os componentes gerenciados do AKS têm o rótulo kubernetes.azure.com/managedby: aks.

O AKS gerencia as versões do Helm com o prefixo aks-managed. Revisões cada vez maiores nessas versões são esperadas e seguras.

Painel de controle

O plano de controle gerenciado do Azure é composto por vários componentes que ajudam a gerenciar o cluster:

Componente Descrição
kube-apiserver O servidor de API (kube-apiserver) disponibiliza a API do Kubernetes, permitindo solicitações ao cluster de forma interna e externa.
etcd O repositório de chave-valor altamente disponível etcd ajuda a manter o estado do cluster do Kubernetes e a configuração.
kube-scheduler O agendador (kube-scheduler) ajuda a tomar decisões de agendamento. Ele monitora novos pods sem nó atribuído e seleciona um nó para que sejam executados.
kube-controller-manager O gerenciador de controladores (kube-controller-manager) executa processos de controle, como detectar e responder a falhas nos nós.
cloud-controller-manager O gerenciador de controladores da nuvem (cloud-controller-manager) integra a lógica de controle específica para nuvem, executando controladores específicos para o provedor de nuvem.

Nós

Cada cluster de AKS possui pelo menos um node, que é uma VM do Azure que executa componentes de node do Kubernetes. Os seguintes componentes são executados em cada nó:

Componente Descrição
kubelet O kubelet garante que os contêineres estejam em execução dentro de um pod.
kube-proxy O kube-proxy atua como um proxy de rede que mantém as regras de rede nos nós.
container runtime O runtime de contêiner administra a execução e o ciclo de vida dos contêineres.

Captura de tela mostrando a máquina virtual do Azure e recursos de suporte para um nó do Kubernetes.

Configuração do nó

Defina as seguintes configurações para nós.

Tamanho e imagem da VM

O tamanho da VM do Azure para seus nós define CPUs, memória, tamanho e o tipo de armazenamento disponível, como uma unidade de estado sólido de alto desempenho ou uma unidade de disco rígido regular. O tamanho da VM que você escolher depende dos requisitos de carga de trabalho e do número de pods que você planeja executar em cada nó. A partir de maio de 2025, a SKU e o tamanho da VM padrão serão selecionados dinamicamente pelo AKS com base na capacidade e na cota disponíveis se o parâmetro for deixado em branco durante a implantação. Para obter mais informações, consulte Tamanhos de VM com suporte no Serviço de Kubernetes do Azure (AKS).

No AKS, a imagem de VM dos nós do seu cluster pode ser baseada no Ubuntu Linux, Azure Linux ou no Windows Server 2022. Quando você cria um cluster AKS ou escala horizontalmente o número de nós, a plataforma do Azure cria e configura automaticamente o número solicitado de VMs. Os nós de agente são cobrados como VMs padrão. Todos os descontos de tamanho de VM, incluindo reservas do Azure, são aplicados automaticamente.

Discos do sistema operacional

O dimensionamento padrão do disco do SO é usado em clusters ou pools de nós novos somente quando um tamanho padrão do disco do SO não é especificado. Esse comportamento se aplica a discos do sistema operacional gerenciados e efêmeros. Para obter mais informações, consulte o Dimensionamento padrão do disco do sistema operacional.

Reservas de recursos

O AKS usa recursos de nó para ajudar a função de nós como parte do cluster. Esse uso pode causar uma discrepância entre os recursos totais do nó e os recursos alocados no AKS. Para manter o desempenho e a funcionalidade do nó, o AKS reserva dois tipos de recursos, CPU e memória, em cada nó. Para obter mais informações, confira Reservas de recursos no AKS.

SO

O AKS dá suporte a duas distribuições linux: Ubuntu e Linux do Azure. O Ubuntu é a distribuição padrão do Linux no AKS. Os pools de nós do Windows também são suportados no AKS, com o LTSC (Canal de Manutenção de Longo Prazo) como canal padrão. Para obter mais informações sobre versões padrão do sistema operacional, consulte a documentação sobre imagens de nó.

Runtime de contêiner

O runtime do contêiner é um software que executa contêineres e gerencia imagens de contêineres em um nó. O runtime ajuda a abstrair chamadas do sistema ou funcionalidade específica do sistema operacional para executar contêineres no Linux ou no Windows. Para pools de nós Linux, containerd é usado na versão 1.19 ou superior do Kubernetes. Para pools de nós do Windows Server 2019 e 2022, containerd está em disponibilidade geral e é a única opção de runtime na versão 1.23 ou superior do Kubernetes.

Cápsulas

Um pod é um conjunto de um ou mais contêineres que compartilham os mesmos recursos de rede e armazenamento, além de uma especificação de como executar os contêineres. Normalmente, os pods possuem um mapeamento individual com um contêiner, mas é possível executar vários contêineres em um único pod.

Pools de nós

No AKS, nós com a mesma configuração são organizados em pools de nós. Esses pools contêm os conjuntos de dimensionamento de máquinas virtuais e máquinas virtuais (VMs) que executam seus aplicativos.

Ao criar um cluster do AKS, você define o número inicial de nós e seu tamanho (versão), que cria um pool de nós do sistema. Os pools de nós do sistema atendem à principal finalidade de hospedar pods críticos do sistema, como CoreDNS e konnectivity.

Para dar suporte a aplicativos que têm demandas de armazenamento ou de computação diferentes, você pode criar pools de nós de usuário. Os pools de nós do usuário atendem à principal finalidade de hospedar os pods de aplicativo.

Para obter mais informações, confira como Criar pools de nós no AKS e como Gerenciar pools de nós no AKS.

Grupo de recursos do nó

Quando você cria um cluster do AKS em um grupo de recursos do Azure, o provedor de recursos do AKS automaticamente estabelece um segundo grupo de recursos chamado grupo de recursos do nó. Esse grupo de recursos contém todos os recursos de infraestrutura associados ao cluster, incluindo VMs, conjuntos de dimensionamento de máquinas virtuais e armazenamento.

Para saber mais, consulte os recursos a seguir:

Namespaces

Os recursos do Kubernetes, como pods e implantações, são agrupados logicamente no namespace para dividir um cluster do AKS e criar, exibir ou gerenciar o acesso aos recursos.

Os seguintes namespaces são criados automaticamente em um cluster do AKS:

Namespace Descrição
default O namespace default permite que você comece a usar os recursos do cluster sem precisar criar um novo namespace.
kube-node-lease O namespace kube-node-lease permite que os nós comuniquem sua disponibilidade ao painel de controle.
kube-public O namespace público kube normalmente não é usado, mas você pode usá-lo para que os recursos fiquem visíveis em todo o cluster por qualquer usuário.
kube-system O namespace kube-system é usado pelo Kubernetes para gerenciar recursos do cluster, como coredns, konnectivity-agent e metrics-server. Não é recomendável implantar seus próprios aplicativos nesse namespace. Para casos raros em que a implantação de seus próprios aplicativos nesse namespace é necessária, consulte as perguntas frequentes para saber como.

Captura de tela que mostra namespaces do Kubernetes para dividir logicamente recursos e aplicativos.

Modos do cluster

No AKS, você pode criar um cluster com o modo Automático (versão prévia) ou Standard. O AKS Automatic fornece uma experiência mais totalmente gerenciada. Você pode gerenciar a configuração do cluster, incluindo nós, dimensionamento, segurança e outras configurações pré-configuradas. O AKS Padrão fornece um maior controle sobre a configuração do cluster, com a capacidade de gerenciar pools de nós, escalonamento e outras definições.

Para obter mais informações, confira Comparação de recursos do AKS Automático e Padrão.

Tipos de preço

O AKS oferece três tipos de preços para gerenciamento de cluster: Gratuito, Standard e Premium. O tipo de preço escolhido determina os recursos disponíveis para gerenciar seu cluster.

Para obter mais informações, confira Tipos de preços para o gerenciamento de cluster do AKS.

Versões compatíveis do Kubernetes

Para obter mais informações, confira Versões do Kubernetes compatíveis no AKS.

Para mais informações sobre conceitos básicos do AKS, confira os seguintes recursos: