¿Qué es el control de versiones?

Completado

En las versiones de software suelen encontrarse errores, problemas o defectos de seguridad que requieren que los equipos de desarrollo apliquen actualizaciones y correcciones. A medida que evoluciona el software, se agregan nuevas características y funcionalidades. Estas actualizaciones y correcciones se publican como versiones nuevas del software. El control de versiones es un proceso controlado que implica el seguimiento y la administración de las versiones de software. Normalmente, las versiones de software mantienen su compatibilidad durante un período de tiempo determinado, lo que proporciona a los usuarios tiempo para actualizar su software a la última versión.

Diagram that shows how software evolves over time from its initial release as new bug fixes and features are made through software versioning.

¿Qué es el versionamiento semántico?

El versionamiento semántico es un esquema de control de versiones formado por los siguientes componentes de versión:

  • Las versiones principales se publican cuando el software evoluciona de la versión 1.0.0 a la 2.0.0. Estas versiones suelen incluir cambios importantes que no son compatibles con versiones anteriores.
  • Las versiones secundarias se publican cuando el software evoluciona de la versión 1.0.0 a la 1.1.0. Estas versiones suelen incluir nuevas características y funcionalidades.
  • Las versiones de revisión se publican cuando el software evoluciona de la versión 1.0.0 a la 1.0.1. Estas versiones suelen incluir correcciones de errores y actualizaciones de seguridad.

Control de versiones de Kubernetes

Kubernetes usa el esquema de versionamiento semántico. Los lanzamientos de nuevas versiones de Kubernetes son solo para los componentes del entorno de ejecución de Kubernetes dentro del clúster. El entorno de ejecución de Kubernetes incluye los siguientes componentes:

  • kube-apiserver
  • kubelet
  • kube-controller-manager
  • kube-scheduler
  • kube-proxy

Los componentes del entorno de ejecución de Kubernetes no incluyen actualizaciones de nodo, como las actualizaciones del sistema operativo o las actualizaciones de imágenes para los nodos que ejecutan el clúster de Kubernetes. Esto significa que debe aplicar actualizaciones y revisiones independientes a los componentes del clúster de Kubernetes y los nodos de proceso subyacentes que admiten el clúster.

1.

La comunidad de Kubernetes encontró algunos errores en la versión actual. Después de que Kubernetes realice estas correcciones de errores, ¿qué deben hacer?

2.

Kubernetes acaba de anunciar que ha lanzado una nueva versión, la v1.20.0. La última versión conocida de Kubernetes era la versión v1.19.10. Según sus conocimientos sobre el versionamiento semántico, ¿qué tipo de cambios indica la versión v1.20.0?

3.

Cuando Kubernetes lanza una nueva versión, ¿qué se actualiza?