Capítulo 10. Servicio Singleton

Este trabajo se ha traducido utilizando IA. Agradecemos tus opiniones y comentarios: translation-feedback@oreilly.com

El patrón de Servicio Singleton garantiza que sólo una instancia de una aplicación esté activa a la vez y, sin embargo, tenga una alta disponibilidad. Este patrón puede implementarse desde dentro de la aplicación o delegarse totalmente en Kubernetes.

Problema

Una de las principales capacidades que ofrece Kubernetes es la posibilidad de escalar aplicaciones de forma fácil y transparente. Los Pods pueden escalarse imperativamente con un único comando como kubectl scale , o declarativamente a través de la definición de un controlador como ReplicaSet, o incluso dinámicamente en función de la carga de la aplicación, como describimos en Capítulo 29, "Escala elástica". Al ejecutar varias instancias del mismo servicio (no un Servicio de Kubernetes, sino un componente de una aplicación distribuida representado por un Pod), el sistema suele aumentar el rendimiento y la disponibilidad. La disponibilidad aumenta porque si una instancia de un servicio deja de ser saludable, el despachador de peticiones reenvía las peticiones futuras a otras instancias saludables. En Kubernetes, las instancias múltiples son las réplicas de un Pod, y el recurso Servicio es responsable de la distribución de las solicitudes y del equilibrio de la carga.

Sin embargo, en algunos casos, sólo se permite que se ejecute una instancia de un servicio a la vez. Por ejemplo, ...

Get Patrones Kubernetes, 2ª Edición now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.