Kubernetes API Versioning
medium

Kubernetes API Versioning Question #019e3a4f

Question Statement
Kubernetes API Versioning
#kubernetes
#api-versioning
#alpha
#beta
#stable
Medium

No Kubernetes, se a versão da API de um recurso é v2beta3, isso significa que:

A

A versão permanecerá disponível para todas as versões futuras dentro de uma versão principal do Kubernetes.

B

A API pode mudar de maneiras incompatíveis em uma versão posterior sem aviso prévio.

C

O software é bem testado. Ativar um recurso é considerado seguro.

Correct
D

O software pode conter bugs. Ativar um recurso pode expor bugs.

Official Explanation / Community Explanations

Explicação

No Kubernetes, as versões da API seguem um ciclo de vida específico: Alpha, Beta e Stable. A versão v2beta3 indica que a API está em sua fase Beta (especificamente, a terceira iteração beta da versão 2 da API).

Como Funciona

  • Versões Alpha (ex.: v1alpha1) são experimentais, podem conter bugs e podem ser descartadas ou alteradas sem aviso. Elas são desabilitadas por padrão.
  • Versões Beta (ex.: v2beta3) são bem testadas e consideradas seguras para ativar em produção. O recurso é ativado por padrão. No entanto, embora a API como um todo seja estável, pequenas alterações compatíveis com versões anteriores ainda podem ocorrer. O ponto principal é que ativar um recurso beta é considerado seguro porque o software é bem testado.
  • Versões Stable (ex.: v1) são garantidas para estar disponíveis em todas as versões futuras dentro de uma versão principal e não mudarão de maneiras incompatíveis.

Por que a Resposta Correta está Correta

A afirmação "O software é bem testado. Ativar um recurso é considerado seguro" descreve com precisão uma versão beta da API. As versões beta passaram por testes e são consideradas estáveis o suficiente para uso em produção, embora ainda possam receber pequenas atualizações.

Por que as Respostas Incorretas estão Erradas

  • "A versão permanecerá disponível para todas as versões futuras dentro de uma versão principal do Kubernetes" descreve uma versão Stable da API, não uma beta. APIs beta podem ser depreciadas e removidas em versões posteriores.
  • "A API pode mudar de maneiras incompatíveis em uma versão posterior sem aviso prévio" descreve uma versão Alpha da API. Versões beta podem mudar, mas buscam compatibilidade com versões anteriores e fornecem aviso antes de mudanças que quebram a compatibilidade.
  • "O software pode conter bugs. Ativar um recurso pode expor bugs" também descreve uma versão Alpha. Versões beta são bem testadas e consideradas seguras, embora nenhum software seja completamente livre de bugs.

Assim, v2beta3 sendo uma versão beta significa que é bem testada e segura para ativar.