Estimación del tamaño del clúster: pods
Los nodos, pods y servicios necesitan direcciones IP. Pero, ¿cómo determina cuántas direcciones IP necesita? Para determinar el número de direcciones, debe comprender las características de la aplicación. En primer lugar, determinará cuántos pods necesita. A continuación, puede ver qué nodos de tamaño son necesarios y cuántos nodos necesita ejecutar.
¿Cuántos pods necesita?
La aplicación se ejecuta en un pod. Una aplicación sencilla puede ejecutarse completamente en un solo pod. Una aplicación más compleja, como una aplicación de arquitectura de microservicios compuesta por varios servicios independientes, podría tener cada servicio ejecutándose en su propio pod, con los pods distribuidos en varios nodos.
Debe comprender completamente la arquitectura de la aplicación. A partir de ahí, puede averiguar cuántos pods necesita la aplicación. A continuación, puede revisar cuántas réplicas de cada pod quiere ejecutar. Es posible que sepa que la aplicación tiene patrones de uso bastante predecibles y, a través de las pruebas, determina que se ejecuta mejor con un número fijo de pods. O bien, puede que la aplicación experimente períodos de mayor o menor demanda que requieran que el número de pods cambie en respuesta al tráfico fluctuante. Incluso en escenarios con patrones de uso imprevisibles, debería establecer límites en el número máximo de pods a los que se puede escalar verticalmente la aplicación. Este límite garantiza que la aplicación no consuma todos los recursos del clúster.
Es una buena idea configurar un entorno de prueba de carga para medir los recursos necesarios. Puede usar un evaluador de carga para simular escenarios típicos o de máxima demanda. Los datos de las pruebas de carga le ayudan a comprender cómo funciona la aplicación en diferentes situaciones. Esta información es útil al determinar el número de pods necesarios para asegurarse de que la aplicación siga respondiendo en todas las situaciones.
¿Cuántos pods debe ejecutar?
Sabe que su empresa quiere implementar una nueva tienda web en línea formada por varios servicios. Contacta con los desarrolladores que trabajan en la nueva tienda y les pide información sobre los servicios. En la tabla siguiente se muestra cuántas réplicas de cada servicio se necesitan.
Servicio | Min replicas (Número mínimo de réplicas) | Max replicas (Número máximo de réplicas) |
---|---|---|
Front-end del sitio web | 3 | 10 |
API de identidad | 3 | 5 |
API de catálogo | 3 | 10 |
API de pedidos | 3 | 5 |
Asistente de pedidos | 3 | 5 |
API del carro de la compra | 3 | 10 |
API de marketing | 3 | 10 |
API de ubicaciones | 3 | 5 |
Total de réplicas para todos los servicios | 24 | 60 |
El equipo ha acordado que debe implementar un mínimo de tres réplicas para cada servicio. Esta configuración garantiza que la aplicación pueda proporcionar un nivel de base de referencia de rendimiento y disponibilidad. Cada equipo de desarrollo proporcionó el número máximo de réplicas que necesitan para hacer frente a la demanda, incluidos los picos estacionales.
Con los números de la tabla, podemos calcular el número mínimo y máximo de réplicas de pod que el clúster debe ejecutar:
- El número mínimo de pods es 24 (8 servicios, y cada uno ejecuta un mínimo de 3 réplicas).
- El número máximo de réplicas es 60.
Ahora que tiene un plan para los pods, debe pensar en las máquinas virtuales de Azure que los hospedarán.