Migrar a instancias Data Center suele ser una decisión que viene dada cuando las herramientas son clave para los empleados de compañías distribuidas en todo el mundo y no pueden permitir indisponibilidades o latencias, por eso aquí te contamos cómo cubrir las necesidades de los equipos crecientes y cómo escalar de 10 - 10.000 usuarios con Atlassian Data Center a través de la historia de una gran empresa.
¿Qué hacer cuando tu instancia de Jira Software crece de 10 a más de 10.000 usuarios? ¿Con Atlassian Data Center? Esto es lo que dos representantes de Cerner, un destacado proveedor en EE.UU. de tecnología en el área de la información médica, y también usuarios de Exporter for Jira, necesitaban responder para cubrir las necesidades de sus equipos en crecimiento.
Seguido del anuncio de Atlassian sobre el cambio en las licencias Server decidimos contarte un poco más sobre qué es el Data Center, lo que necesitas para migrar a Data Center, los indicadores que determinarán cuándo migrar, lo que necesitas antes de instalar el Data Center, y cómo obtener el máximo de estas instancias, esta vez aprenderás cómo escalar de forma efectiva, tal cual lo ha logrado Cerner.
¿Cómo garantizar la fiabilidad en una instancia tan grande? ¿Qué puede hacerse para mitigar los efectos de la falta de disponibilidad? Estas son algunas de las dudas y retos que el equipo de Cerner identificó al escalar las instancias a Data Center.
Inicialmente, la empresa tenía tres instancias federadas de Jira Software Server con miles de desarrolladores usando cada instancia a cada hora de cada día, alrededor del globo. Jira Software rápidamente se convirtió en una herramienta de estado crítico y cada minuto de indisponibilidad o degradación de rendimiento hacía el trabajo más difícil. Necesitaban una solución que ofreciera alta disponibilidad, a todas horas.
Teniendo en cuenta esta situación, la empresa decidió migrar de Server a Data Center de manera que pudieran poner en clúster los múltiples servidores activos y así proporcionar a los usuarios acceso ininterrumpido a Jira. Esto no sólo era crítico en el tiempo, sino que sabiendo que iban a agregar varios miles de usuarios en el año siguiente, necesitaban una solución que escalara junto a ellos.
La empresa fue capaz de identificar un área que necesitaba ser abordada inmediatamente si querían proporcionar auténtica alta disponibilidad, esto, tomando en cuenta que al momento estaban usando Zabbix y Splunk para monitorizar sus instancias Jira.
¿Qué causaba la indisponibilidad en sus instancias Server? El análisis de logs de la empresa, mostró que los miembros del equipo estaban usando la API REST de forma casi indiscriminada para obtener actualizaciones de estado en tiempo real, así que lo supieran los equipos o no, estaban haciendo ping a las instancias de Jira Software cada segundo. El dilema comenzó cuando la empresa decidió que no quería prohibir a los usuarios crear dashboards personalizados o autoservirse de los datos que necesitaban, pero era obvio que tenían que hacer algo al respecto, y según explica Mike Damman, Arquitecto de Conocimiento de Cerner:
“Queríamos ser capaces de aislar las llamadas REST a un único servidor de manera que no tuviera impacto sobre los otros usuarios”.
Decidieron, utilizar un clúster multi-nodo que les permitiese distribuir el tráfico de forma inteligente al dedicar exclusivamente las peticiones externas a APIs REST a un nodo. Además, también querían garantizar que todas las peticiones externas fueran a este nodo dedicado, ya que al tener a los usuarios cambiando manualmente el dominio a una dirección IP u a otro dominio, no era fiable, así como podemos ver:
La empresa necesitaba la configuración Data Center de Atlassian para asegurar que todas las peticiones a APIs REST se enrutaran separadamente de cualquier otro tráfico, así que planearon tener cuatro nodos en su clúster detrás de un balanceador de carga, donde cada nodo sirve los siguientes servicios:
Entre las soluciones que pensaron originalmente con la asesoría de las soluciones Atlassian, estaba la opción de usar el balanceador de carga para enrutar todas las peticiones con “/rest” al nodo de APIs REST. Sin embargo, después de algunas pruebas descubrieron que las APIs REST estaban siendo utilizadas también a través de Jira Software, incluyendo la página de login, por lo que dejar el filtro como “/rest” significaría que se seguiría mezclando el tráfico API REST con el de uso normal.
Luego, descubrieron que era posible aislar las llamadas a APIs REST buscando “/rest” en cada petición, y buscando dónde se origina la petición al incorporar la cabecera HTTP de referrer, por lo que si una persona estaba intentaba logearse o ya estaba en Jira Software, el tráfico sería dirigido o seguiría en un nodo de uso normal, y si la persona o bot estaba consultando la API REST, serían dirigidos al nodo dedicado a la API REST. Después de unas cuantas rondas de pruebas, la empresa migró a Jira Software Data Center. Hace poco más de seis años de este cambio.
Dentro de su primera semana de implantación de la configuración Data Center propuesta, la empresa estaba recibiendo en el nodo de APIs REST, cuatro veces la cantidad de tráfico que en los otros dos nodos. Los tiempos de respuesta eran más rápidos, la utilización de la CPU decreció en sus nodos para no administradores, comparado a lo que tenían antes con una instancia única de Server, y no tuvieron ni un sólo corte no programado desde 2016, todo esto mientras escalaban Jira Software a miles de nuevos usuarios.
Necesitaban asegurarse que en la medida que continuarían añadiendo usuarios, los tiempos de respuesta se mantendrían igual o incluso, mejorarían. Y los tiempos de respuesta promedios que vemos a continuación durante el primer año de uso, lo demuestra:
Esta migración de Server a Data Center, demostró que Cerner pudo reducir considerablemente su tiempo de respuesta a casi la mitad, de 150 ms a 80 ms. Incluso, en horas de alto tráfico (relativo a la carga de páginas) los tiempos de respuesta se mantuvieron estables.
El beneficio que aporta Atlassian Data Center a las grandes empresas se hace evidente, sobretodo porque garantiza una constante adaptación al crecimiento de la empresa y su tráfico, si buscas más ayuda o información, sigue leyendo.