Saiba tudo sobre os novos recursos empolgantes da versão mais recente do Kubernetes.

A Amazon Web Services (AWS) anunciou recentemente seu suporte para Kubernetes versão 1.27, que tem o codinome Chill Vibes. Esse suporte se estende ao Amazon Elastic Kubernetes Service (EKS) e ao Amazon EKS Distro, apresentando uma variedade de novos recursos com potencial para revolucionar o gerenciamento de cluster.

Ativação do Perfil Seccomp Padrão

O Kubernetes 1.27 marca a graduação estável do seccomp e o ativa por padrão. O perfil seccomp RuntimeDefault torna-se o padrão para todas as cargas de trabalho.

Você pode definir o perfil seccomp padrão para todos os contêineres em execução em um nó usando o -kubelet-extra-args --seccomp-default sinalizador no script de inicialização do nó ou modelo de ativação.

Habilitar o perfil seccomp pode causar interrupções em algumas cargas de trabalho, mas é possível desativá-lo ou criar perfis personalizados para cargas de trabalho específicas. O operador de perfis de segurança permite definir e gerenciar perfis personalizados.

Limites KubeAPIQPS e KubeAPIBurst aprimorados

Nas versões anteriores, o kubelet do Amazon EKS tinha limites de 10 solicitações por segundo para kubeAPIQPS e um limite de intermitência de 20 solicitações para kubeAPIBurst.

O Kubernetes 1.27 aumenta esses limites para 50 e 100 solicitações por segundo, respectivamente. Esses novos limites, adotados pela AMI otimizada do Amazon EKS, melhoram o tempo de início do pod quando surgem demandas de escalabilidade.

Os limites aumentados permitem que o kubelet do Amazon EKS lide com inicializações de pods mais rapidamente, facilitando operações de cluster mais suaves.

Substituições de API e alterações de repositório

Assim como as versões anteriores do Kubernetes, a versão 1.27 substitui certas APIs. O k8s.gcr.io repositório agora está congelado, e registro.k8s.io torna-se o novo repositório do Kubernetes.

É vital que você atualize todos os manifestos e configurações para refletir essa mudança.

Acesso do Kubectl aos logs do nó

O Kubectl agora oferece suporte à busca de logs de nós, facilitando o diagnóstico e a solução de problemas do kubelet. Com o novo endpoint da API no kubelet e a implementação correspondente no kubectl, você pode executar um comando como este:

kubectl get --raw "/api/v1/nodes/node-1.example/proxy/logs/?query=kubelet"

Alterações no tempo de execução padrão do contêiner

A partir da versão 1.24, o tempo de execução de contêiner padrão para Amazon EKS foi Containerd. O Kubernetes 1.27 remove o --container-runtime comando para kubelet. Portanto, é fundamental remover o --container-runtime argumento de todos os scripts e fluxos de trabalho de criação de nós.

Por exemplo, em Terraform—uma das melhores ferramentas de automação para Linux—se sua configuração for algo como isto:

node_groups = {
eks_nodes = {
capacidade_desejada = 2
max_capacity = 10
min_capacidade = 1
instance_type = "m5.large"
k8s_labels = {
Ambiente = "teste"
Nome = "eks-worker-node"
}
adicionais_userdata = "echo foo bar"
bootstrap_extra_args = "--container-runtime=seu-tempo de execução"
}
}

Em seguida, certifique-se de remover o bootstrap_extra_args propriedade:

node_groups = {
eks_nodes = {
capacidade_desejada = 2
max_capacity = 10
min_capacidade = 1
instance_type = "m5.large"
k8s_labels = {
Ambiente = "teste"
Nome = "eks-worker-node"
}
adicionais_userdata = "echo foo bar"
}
}

Da mesma forma, em eksctl, altere uma configuração semelhante a esta:

nodeGroups:
-nome:nome-do-seu-grupo-de-nodos
tipo de instância:m5.grande
Capacidade desejada:3
tamanho mínimo:1
tamanho máximo:4
kubeletExtraConfig:
tempo de execução do contêiner:"seu-tempo de execução"

Para um que se parece com isso:

nodeGroups:
-nome:nome-do-seu-grupo-de-nodos
tipo de instância:m5.grande
Capacidade desejada:3
tamanho mínimo:1
tamanho máximo:4

Atualizar clusters do Amazon EKS para versões compatíveis

É crucial atualizar clusters do Amazon EKS para versões com suporte. A última versão sem suporte é a 1.22, com data de término do suporte em 4 de junho de 2023. A próxima versão, 1.23, chegará ao fim do suporte em outubro de 2023.

Abraçando o Kubernetes 1.27

A versão mais recente do Kubernetes, versão 1.27, vem com aprimoramentos notáveis ​​projetados especificamente para elevar os recursos do Amazon EKS e do Amazon EKS Distro.

Essas atualizações introduzem muitos novos recursos que aprimoram significativamente a funcionalidade geral dessas plataformas. Com esses avanços, você obtém um nível mais alto de controle e flexibilidade, permitindo gerenciar e dimensionar seus aplicativos sem esforço.