Versões suportadas do Kubernetes no AKS
Este artigo descreve as versões suportadas do Kubernetes para o Azure Kubernetes Service ativado pelo Azure Arc. A comunidade do Kubernetes lança versões secundárias aproximadamente a cada três meses. Recentemente, a comunidade do Kubernetes aumentou a janela de suporte para cada versão de nove meses para 12 meses, começando pela versão 1.19.
As versões secundárias incluem novas funcionalidades e melhorias. As versões de patch são mais frequentes (por vezes semanalmente) e destinam-se a correções de erros críticas numa versão secundária. As versões de patch incluem correções para vulnerabilidades de segurança ou erros principais.
Versões do Kubernetes
O Kubernetes utiliza o esquema de controlo de versões semântico padrão de controlo de versões para cada versão:
[major].[minor].[patch]
Example:
1.17.7
1.17.8
Cada número na versão indica compatibilidade geral com a versão anterior:
- As versões principais são alteradas quando as atualizações de API incompatíveis ou a retrocompatibilidade podem ser interrompidas.
- As versões secundárias são alteradas quando são feitas atualizações de funcionalidade que são retrocompatíveis com as outras versões secundárias.
- As versões de patch são alteradas quando são efetuadas correções de erros compatíveis com retrocompatibilidade.
Deve instalar a versão mais recente do patch da versão secundária que está a executar. Por exemplo, se o cluster de produção estiver no 1.17.7
.
1.17.8
é a versão de patch mais recente disponível para a série 1.17 . Deve atualizar para o 1.17.8
mais rapidamente possível para garantir que o cluster está totalmente corrigido e suportado.
Política de suporte de versões do Kubernetes
O AKS define uma versão geralmente disponível (GA) como uma versão disponível para transferência ao implementar ou atualizar o AKS ativado pelo Arc. O AKS suporta três versões ga secundárias do Kubernetes:
- A versão secundária de GA mais recente que é lançada para o AKS (a que nos referimos como N).
- Duas versões secundárias anteriores. Cada versão secundária suportada também suporta um máximo de dois (2) patches estáveis.
O AKS também pode suportar versões de pré-visualização, que estão explicitamente etiquetadas como tal.
Nota
O AKS utiliza práticas de implementação seguras que envolvem a implementação gradual da região. Isto significa que pode demorar até 10 dias úteis para que uma nova versão ou uma nova versão esteja disponível em todas as regiões.
A janela suportada das versões do Kubernetes no AKS é conhecida como "N-2": (N (Versão mais recente) - 2 (versões secundárias)).
Por exemplo, se o AKS introduzir 1.17.a hoje, é fornecido suporte para as seguintes versões:
Nova versão secundária | Lista de Versões Suportada |
---|---|
1.17.a | 1.17.a, 1.17.b, 1.16.c, 1.16.d, 1.15.e, 1.15.f |
Em que ".letter" é representativo das versões de patch.
Quando é introduzida uma nova versão secundária, a versão secundária mais antiga e as versões de patch suportadas são preteridas e removidas. Por exemplo, a lista de versões suportadas atual é:
- 1.17.a
- 1.17.b
- 1.16.c
- 1.16.d
- 1.15.e
- 1.15.f
Quando o AKS é lançado 1.18.*, todas as versões 1.15.* são removidas e ficam sem suporte dentro de 30 dias.
Nota
Se estiver a executar uma versão do Kubernetes não suportada, é-lhe pedido que atualize quando pedir suporte para o cluster. Os clusters que executam versões do Kubernetes não suportadas não são abrangidos pelas políticas de suporte do AKS.
Além desta política, o AKS suporta um máximo de duas versões de patch de uma determinada versão secundária. Dadas as seguintes versões suportadas:
Current Supported Version List
------------------------------
1.17.8, 1.17.7, 1.16.10, 1.16.9
Se o AKS lançar 1.17.9 e 1.16.11, as versões de patch mais antigas serão preteridas e removidas e a lista de versões suportada torna-se:
New Supported Version List
----------------------
1.17.*9*, 1.17.*8*, 1.16.*11*, 1.16.*10*
Versões suportadas kubectl
Pode utilizar uma versão secundária mais antiga ou mais recente relativamente kubectl
à sua versão kube-apiserver , consistente com a política de suporte do Kubernetes para kubectl.
Por exemplo, se o kube-apiserver estiver na 1.17, pode utilizar as versões 1.16 a 1.18 com kubectl
esse kube-apiserver.
Para instalar ou atualizar a sua versão do kubectl
, execute az AKS on Azure Stack HCI and Windows Server install-cli
.
Processo de versão e preterição
Para novas versões secundárias do Kubernetes:
- O AKS publica um pré-anúncio com a data planeada de uma nova versão e a respetiva depreciação da versão antiga nas notas de versão do AKS , pelo menos, 30 dias antes da remoção.
- Os utilizadores têm 30 dias desde a remoção da versão até à atualização para uma versão secundária suportada para continuar a receber suporte.
Para novas versões de patch do Kubernetes:
- Devido à natureza urgente das versões de patch, podem ser introduzidas no serviço à medida que ficam disponíveis.
- Em geral, o AKS não comunica amplamente o lançamento de novas versões de patch. No entanto, o AKS monitoriza e valida constantemente os patches CVE disponíveis para os suportar no AKS em tempo útil. Se for encontrado um patch crítico ou for necessária uma ação do utilizador, o AKS notifica os utilizadores para atualizarem para o patch recentemente disponível.
- Os utilizadores têm 30 dias desde a remoção de uma versão de patch do AKS para atualizar para um patch suportado e continuar a receber suporte.
Exceções da política de versões suportadas
O AKS reserva-se o direito de adicionar ou remover versões novas/existentes com um ou mais erros críticos de produção ou problemas de segurança sem aviso prévio.
As versões de patch específicas podem ser ignoradas ou a implementação acelerada, dependendo da gravidade do erro ou do problema de segurança.
FAQ
Como é que a Microsoft me notifica das novas versões do Kubernetes?
A equipa do AKS publica pré-anúncios com datas planeadas de novas versões do Kubernetes na nossa documentação no GitHub.
Com que frequência devo esperar atualizar as versões do Kubernetes para permanecer no suporte?
A partir do Kubernetes 1.19, a comunidade open source expandiu o suporte para um ano. O AKS compromete-se a ativar patches e a suportar a correspondência dos compromissos a montante. Para clusters do Kubernetes na versão 1.19 e superior, poderá atualizar um mínimo de uma vez por ano para se manter numa versão suportada.
Para versões na versão 1.18 ou inferior, a janela de suporte permanece nos 9 meses, exigindo uma atualização uma vez a cada 9 meses para permanecer numa versão suportada. Teste regularmente novas versões e esteja preparado para atualizar para versões mais recentes para capturar os melhoramentos estáveis mais recentes no Kubernetes.
O que acontece quando um utilizador atualiza um cluster do Kubernetes com uma versão secundária que não é suportada?
Se estiver na versão n-3 ou mais antiga, significa que está fora do suporte e é-lhe pedido que atualize. Quando a atualização da versão n-3 para n-2 for bem-sucedida, está de volta às nossas políticas de suporte. Por exemplo:
- Se a versão do Kubernetes suportada mais antiga for a 1.15.a e estiver na versão 1.14.b ou anterior, está fora do suporte.
- Quando atualiza com êxito de 1.14.b para 1.15.a ou superior, está de volta às nossas políticas de suporte.
As versões anteriores não são suportadas.
O que significa "fora do suporte"?
"Fora do suporte" significa que:
- A versão que está a executar está fora da lista de versões suportadas.
- Ser-lhe-á pedido que atualize o cluster para uma versão suportada ao pedir suporte, a menos que esteja dentro do período de tolerância de 30 dias após a depreciação da versão.
Além disso, o AKS não garante nenhum runtime (ou outro) para clusters fora da lista de versões suportadas.
O que acontece quando dimensiono um cluster do Kubernetes com uma versão secundária que não é suportada?
Para versões secundárias não suportadas pelo AKS, o aumento ou redução horizontal deve continuar a funcionar. Uma vez que não existem garantias de Qualidade de Serviço, recomendamos que atualize para que o cluster volte a ser suportado.
Posso ignorar várias versões do Kubernetes durante uma atualização do cluster?
Quando atualiza um cluster do AKS suportado, as versões secundárias do Kubernetes não podem ser ignoradas. Por exemplo, atualizações entre:
- 1.12.x ->1.13.x: permitido.
- 1.13.x ->1.14.x: permitido.
- 1.12.x ->1.14.x: não permitido.
Para atualizar a partir de 1.12.x ->1.14.x:
- Atualize a partir de 1.12.x ->1.13.x.
- Atualize a partir de 1.13.x ->1.14.x.
Só pode ignorar várias versões ao atualizar de uma versão não suportada novamente para uma versão suportada. Por exemplo, pode atualizar de um 1.10.x não suportado para um 1.15.x suportado.
Posso criar um novo cluster 1.xx.x durante a janela de suporte de 30 dias?
N.º Depois de uma versão ser preterida/removida, não pode criar um cluster com essa versão. À medida que a alteração é lançada, verá a versão antiga removida da sua lista de versões. Este processo pode demorar até duas semanas a partir do anúncio, progressivamente por região.
Estou numa versão preterida recentemente. Ainda posso adicionar novos conjuntos de nós? Ou tenho de atualizar?
N.º Não pode adicionar conjuntos de nós da versão preterida ao cluster. Pode adicionar conjuntos de nós de uma nova versão. No entanto, isto poderá exigir que atualize primeiro o plano de controlo.
Passos seguintes
Para obter informações sobre como atualizar o cluster, veja Atualizar a versão do Kubernetes dos clusters do AKS.