Rede de Pods

Saiba mais sobre comunicação de/para pods em nós de trabalho em clusters criados usando o Kubernetes Engine (OKE).

O modelo de rede do Kubernetes pressupõe que os pods têm endereços IP exclusivos e roteáveis em um cluster. No modelo de rede do Kubernetes, os pods usam esses endereços IP para se comunicar entre si, com os nós de plano de controle do cluster, com pods em outros clusters, com outros serviços (como serviços de armazenamento) e com a internet. O Kubernetes adotou a especificação CNI (Contêiner Network Interface) para gerenciamento de recursos de rede. A CNI consiste em uma especificação e bibliotecas para gravar plug-ins para configurar interfaces de rede em contêineres Linux, juntamente com vários plug-ins suportados.

Os clusters do Kubernetes usam plug-ins CNI para implementar a conectividade de rede para pods em execução nos nós de trabalho. Os plug-ins CNI configuram interfaces de rede, provisionam endereços IP e mantêm a conectividade.

Ao criar um cluster do Kubernetes com o Kubernetes Engine, o tipo de rede selecionado para o cluster determina o plug-in CNI usado para rede de pods:

Todos os pools de nós em um cluster usam o mesmo plug-in CNI. Depois que um cluster tiver sido criado, você não poderá alterar o plug-in CNI selecionado originalmente para ele. O plug-in CNI usado para rede de pod é considerado um complemento essencial de cluster. Quando você especifica o tipo de rede de um cluster, o cluster e seus pools de nós inicialmente usam a versão mais recente do plug-in CNI correspondente. As atualizações dos plugins CNI são lançadas periodicamente. Você pode especificar que deseja que a Oracle implante as atualizações no cluster automaticamente (o padrão). Como alternativa, você pode especificar que deseja escolher a versão a ser implantada. Se você decidir escolher a versão, você está assumindo a responsabilidade de manter a extensão atualizada. Consulte Configurando Complementos do Cluster.

O plug-in CNI do OCI VCN-Native Pod Networking e o plug-in flannel CNI permitem implementar recursos NetworkPolicy do Kubernetes, permitindo que você use o Calico. As políticas de rede aumentam a granularidade da segurança do cluster usando labels para selecionar pods e definir regras que especificam qual tráfego é permitido para os pods selecionados. O Calico é uma solução de rede de código-fonte aberto e segurança de rede para contêineres, máquinas virtuais e cargas de trabalho nativas baseadas em host. Consulte Exemplo: Instalando o Calico e Configurando Políticas de Rede.

Você pode usar o plug-in CNI de Rede de Pod Nativa da VCN do OCI com pools de nós virtuais e pools de nós gerenciados. Você pode usar o plug-in CNI flannel com pools de nós gerenciados.

Observe que você só pode usar o plug-in CNI de Rede de Pod Nativa da VCN do OCI com clusters que executam o Kubernetes 1.22 ou posterior. Em versões anteriores a julho de 2022, os clusters criados com o Kubernetes Engine sempre usavam o plug-in flannel CNI para rede de pods. Nas versões posteriores a julho de 2022, o plug-in CNI de Rede de Pod Nativa da VCN do OCI será o padrão se você usar a Console para criar clusters (executando o Kubernetes 1.22 ou posterior). No entanto, ao usar o workflow 'Criação Personalizada', você também pode optar por criar clusters que usam o plug-in flannel CNI. O plug-in flannel CNI continuará sendo o padrão se você usar a API, embora possa optar por usar o plug-in OCI VCN-Native Pod Networking CNI.