Sprinter abrió su primera tienda en 1995 en Valencia. Actualmente, cuenta con más de 150 tiendas físicas distribuidas por todo el país, además de contar con un eCommerce sprintersports.com, donde se puede encontrar desde moda deportiva y casual a materiales para la práctica de multitud de deportes. Además, de contar con una amplia gama de productos de primeras marcas deportivas y con un portafolio de marcas propias, tanto de performance como de moda.
Sprinter necesitaba implantar un sistema de monitorización que permitiera la obtención y visualización de métricas de las aplicaciones y servicios desplegados en múltiples clústers de Kubernetes de forma centralizada así como implementar alertas para la detección de incidencias. Además, se nos pidió elaborar una propuesta que fuera escalable para permitir su crecimiento en el futuro, y que usara Prometheus como core.
Desde Geko Cloud propusimos la implementación de Thanos para permitir la retención de datos en un long-term storage (bucket) y usar un modelo escalable de federación de los Prometheus desplegados en sus clusters de k8s.
Asimismo, para la detección de incidentes y notificación se propuso la implementación de AlertManager y para la obtención de las métricas se realizó un estudio e implementación de los distintos exporters disponibles para elegir los más adecuados en cada caso. Finalmente, para la visualización de las métricas obtenidas se propone implementar un conjunto de dashboards en Grafana.
El primer paso con Sprinter es realizar algunas reuniones conjuntamente con su equipo para decidir las épicas y hacer un split de las tareas conjuntamente con el project manager.
En estas reuniones conjuntas se hizo un assessment de la plataforma, como lo tenían, que tenían, y qué servicios se querían monitorizar de todos sus cluster que tenían en su momento y que se necesitaban montar para llegar a lo que ellos necesitaban.
Una vez ya organizados, empezamos con la primera parte de la implementación y la más importante, ya que era el core del proyecto: La instalación y configuración de Thanos y Prometheus en el cluster master junto con todos sus componentes. A continuación nos pusimos a trabajar en la elección e implementación de los exporters para obtener las métricas de sus aplicaciones.
El siguiente paso fue ponernos a trabajar en los dashboards de Grafana, variabilización, etc.
Finalmente realizamos la implementación de unas alertas básicas sobre las que Sprinter pueda seguir trabajando para extenderlo por sí mismos.
Algunas de las herramientas y tecnologías que se han utilizado a lo largo del proyecto son: Kubernetes, Prometheus, Thanos, Grafana, Terraform, Ansible, GCP, GIT…
«La relación con el equipo de Geko no ha podido ser más satisfactoria, desde un primer momento entendieron nuestra necesidad y han sabido adaptarse a nuestra forma de trabajar aportando su visión y sus buenas prácticas, ahora tenemos un mayor control sobre la monitorización de nuestra infraestructura en Kubernetes y la posibilidad de escalar sin problemas.» – Jorge Roberto Martínez, Devops Team Leader