Arquitetura do GKE no Azure

O GKE no Azure é um serviço gerenciado que ajuda a provisionar, operar e escalonar clusters do Kubernetes na conta do Azure.

Arquitetura do GKE no Azure, mostrando o serviço e os clusters do Google Cloud que contêm um plano de controle e pools de nós

Gerenciamento de recursos

O GKE no Azure usa APIs do Azure para provisionar os recursos necessários ao cluster, incluindo máquinas virtuais, discos gerenciados, conjunto de dimensionamento máquina virtual, grupos de segurança de rede e balanceadores de carga.

É possível criar, descrever e excluir clusters com a Google Cloud CLI ou a API GKE Multi-Cloud.

Como autenticar no Azure

Ao configurar o GKE no Azure, você cria um aplicativo do Azure Active Directory (Azure AD) e uma entidade de serviço com as permissões necessárias. Você também cria um certificado de cliente que a API GKE Multi-Cloud usa para se autenticar como o principal de serviço do aplicativo.

Para mais informações sobre o Azure AD e os principais de serviço, consulte Objetos principais de aplicativo e de serviço no Azure Active Directory.

Para mais informações, consulte a Visão geral da autenticação.

Recursos no Google Cloud

O GKE no Azure usa um projeto do Google Cloud para armazenar informações de configuração do cluster no Google Cloud.

Frotas e conexão

O GKE no Azure registra cada cluster com uma frota quando ele é criado. O Connect permite o acesso a recursos de clusters e de gerenciamento de cargas de trabalho do Google Cloud. O nome da associação de frota de um cluster é igual ao nome do cluster.

É possível ativar recursos como o Config Management e o Anthos Service Mesh na sua frota.

Arquitetura do cluster

O GKE no Azure provisiona clusters usando sub-redes particulares dentro da rede virtual do Azure. Um cluster tem os seguintes componentes:

  • Plano de controle: o plano de controle do Kubernetes usa uma arquitetura de alta disponibilidade com três réplicas. Cada réplica executa todos os componentes do Kubernetes, incluindo kube-apiserver, kube-controller-manager, kube-scheduler e etcd. Cada instância etcd armazena dados em um volume do disco do Azure e usa uma interface de rede para se comunicar com outras instâncias etcd. Um balanceador de carga padrão é usado para equilibrar o tráfego para o endpoint da API Kubernetes, kube-apiserver.

    É possível criar um plano de controle em várias zonas ou em uma única zona. Para mais informações, consulte Criar um cluster.

  • Pools de nós: um pool de nós é um grupo de nós de trabalho do Kubernetes com a mesma configuração, incluindo tipo de instância, configuração de disco e perfil da instância. Todos os nós em um pool são executados na mesma sub-rede. Para alta disponibilidade, é possível provisionar vários pools de nós em diferentes sub-redes na mesma região do Azure.

A seguir