Tech OnTap de NetApp NetApp Logo
Tech OnTap de NetApp
     
Operaciones de desarrollo en NetApp: el juego se llama «CodeEasy»

El cambio a operaciones de desarrollo (la fusión del desarrollo y las operaciones) representa un cambio importante en la forma en que se desarrolla el software. Las empresas no pueden seguir admitiendo los cuellos de botella en escalabilidad, los retrasos en el aprovisionamiento o la falta de herramientas de prueba y automatización adecuadas. NetApp fue uno de los pioneros en ver el potencial de las operaciones de desarrollo, lo que le llevó a crear un entorno interno llamado CodeEasy para automatizar el proceso de aprovisionamiento de espacios de desarrollo y control de calidad para una comunidad de desarrollo geográficamente distribuida de 2000 usuarios.

El equipo de Tech OnTap entrevistó recientemente a Kumaraswamy Namburu, responsable de Ingeniería de Compilación de Versiones de NetApp, para hablar con él sobre por qué NetApp ha adoptado las operaciones de desarrollo de forma tan decidida y cuáles son las ventajas que pueden lograr las empresas si realizan sus propias transiciones.

TOT: ¿Qué llevó a los equipos de ingeniería y operaciones de NetApp a adoptar una cultura de operaciones de desarrollo?

Namburu: El primer motivo fue el ahorro de tiempo. Hace años, nuestros 2000 desarrolladores perdían horas creando zonas aisladas, generando builds y compilando. Utilizaban procesos incoherentes, lo que podía ralentizar nuestros ciclos de desarrollo y era un factor de riesgo e incertidumbre. También nos dimos cuenta de que nuestros métodos en aquel momento no eran escalables, por lo que el cambio era inevitable.

TOT: ¿Cómo han cambiado las operaciones de desarrollo la rutina diaria de los desarrolladores y el personal de operaciones, y cómo se realizó la adopción?

Namburu: Ahora no hay nada que entorpezca el trabajo de los desarrolladores. Su función consiste en escribir código, que es lo que mejor hacen. Para ello deben disponer de autoservicio y ninguna complejidad del back-end debe entorpecer su trabajo. En cuanto los desarrolladores vieron el valor de la adopción, se unieron al cambio rápidamente. Realizamos una adopción del 100 %, pero no fue de un día para otro.

TOT: ¿Qué impacto tuvo el cambio a operaciones de desarrollo sobre el enfoque de la infraestructura tecnológica?

Namburu: Tuvimos que cambiar nuestra forma de pensar y adoptar un nuevo enfoque. Recurrimos a un cloud público donde es más conveniente y utilizamos almacenamiento privado de NetApp para mantener el control sobre nuestros datos. Para proteger nuestra propiedad intelectual hemos creado un entorno de cloud privado para operaciones de desarrollo. En lugar de invertir una cantidad masiva de recursos en el problema, decidimos que podíamos lograr nuestros objetivos mejorando simplemente la eficiencia en la gestión de los datos.

TOT: ¿Qué herramientas utilizan para introducir las funcionalidades de automatización y ahorrar tiempo a los desarrolladores al aprovisionar entornos?

Namburu: Aprovechamos nuestras tecnologías: Clustered Data ONTAP, copias Snapshot de un momento específico, clones FlexClone, rutas de unión, operaciones no disruptivas y SnapMirror. Estas tecnologías se integran con Perforce Helix, el sistema de gestión de versiones, y con el software desarrollado internamente por NetApp que utilizamos para automatizar todo el flujo de trabajo necesario para generar una versión.

Por ejemplo, ejecutando un script de CodeEasy, un desarrollador puede clonar cualquier entorno y obtener una zona aislada completa para desarrollo o control de calidad con cero impacto en el espacio de almacenamiento. A continuación, puede replicar el entorno en otros sitios de desarrollo para que los desarrolladores y los equipos de control de calidad de diferentes zonas horarias puedan visualizar el código del mismo modo.

El software de NetApp, que ha ayudado a los desarrolladores durante años, es especialmente crucial a la hora de adoptar las operaciones de desarrollo, dado que soluciona problemas comunes. Las empresas que no utilizan estas tecnologías malgastan capacidad de almacenamiento y realizan tareas innecesarias.

TOT: ¿Qué fase del flujo de trabajo de las operaciones de desarrollo ha sufrido la mayor mejora tras aplicar la tecnología de NetApp?

Namburu: Las pruebas de integración continua (CIT). Ejecutamos una compilación múltiple continua cada 10 minutos y CIT cada 3 horas a diario para probar los cambios en las funcionalidades de las aplicaciones. Si un cambio interrumpe la compilación o la prueba, podemos identificar al momento qué cambio ha causado la interrupción, extraerlo automáticamente y facilitar a los desarrolladores una forma automatizada para reproducir el problema. Dado que en este proceso utilizamos clones y copias Snapshot, ahorramos ciclos de cómputo y almacenamiento. Además, nuestro cloud privado para operaciones de desarrollo es escalable a largo plazo.

TOT: ¿Qué indicadores deben usar las empresas para medir el éxito y el retorno de la inversión de sus operaciones de desarrollo?

Namburu: Depende de los problemas que tengan y los objetivos que quieran conseguir. En el caso de NetApp, al final del día podemos medir las mejoras en el plazo de comercialización y la calidad del código. Si siguiéramos trabajando como antes, es improbable que hubiéramos logrado nuestros ambiciosos hitos en desarrollo o, al menos, no lo habríamos hecho en el mismo plazo de tiempo. También hemos optimizado el uso de nuestros recursos, desde los sistemas al tiempo del personal.

TOT: ¿Hay algún consejo que quiera dar a las empresas que inician la adopción de las operaciones de desarrollo?

NAMBURU: Lo primero es el planteamiento, no las herramientas. ¿Su problema es la gestión de la configuración de software? ¿La compilación? ¿La realización de pruebas? ¿El rendimiento? ¿Dar soporte a desarrolladores en diferentes ubicaciones? Son los problemas que deben abordar los que dictarán en mayor medida las herramientas que deben elegir, aunque hemos comprobado que prácticamente todos los flujos de trabajo se pueden beneficiar del amplio conjunto de servicios de gestión de datos y API que ofrecen los sistemas de almacenamiento de NetApp.

Mayo 2016

 

Explorar

Acerca de las herramientas de desarrollo de ingeniería de NetApp

Aplicaciones primarias de operaciones de desarrollo

  • Perforce Helix: versiones y SCM
  • Jenkins: herramienta de integración continua
  • CodeEasy: automatización de procesos desarrollada internamente

Entorno de desarrollo

  • Más de 2000 desarrolladores
  • 150 GB de espacio de trabajo por desarrollador, con artefactos
  • Cuatro centros principales en EE. UU. e India

Entorno de almacenamiento

  • Sistema FAS de NetApp con Clustered Data ONTAP 8.3
  • Más de 4 PB de capacidad de almacenamiento para operaciones de desarrollo

Caso práctico de operaciones de desarrollo

Durante años, los desarrolladores de Despegar.com, el sitio en línea de viajes más grande de Latinoamérica, estuvieron limitados por el acceso a los recursos. Dependían del personal de operaciones para aprovisionar la infraestructura de desarrollo y de los equipos de control de calidad para probar las aplicaciones antes y después de llevarlas a producción. Para eliminar estas barreras, la organización de tecnología adoptó una metodología de operaciones de desarrollo y creó un cloud privado para proporcionar a los desarrolladores acceso mediante autoservicio a los recursos de la infraestructura.

Hoy en día, gracias a la combinación de la adopción de las operaciones de desarrollo y un cloud privado basado en OpenStack y NetApp, la empresa puede aumentar su límite de puesta en marcha de nuevas aplicaciones y actualizaciones de 5 a la semana a más de 1500.

Leer el caso práctico de Despegar.com

TRUSTe
Póngase en contacto con nosotros   |   Cómo comprar   |   Comentarios   |   Empleo  |   Suscripciones   |   Política de privacidad   |   © 2016 NetApp