BLOG

Dominando la complejidad y facilitando la entrega de aplicaciones modernas a gran escala

Miniatura F5
F5
Publicado el 19 de noviembre de 2020

Todo el mundo conoce a los pioneros digitales, los Facebook y los Google del mundo. Las empresas que inventaron los ricos sistemas de interacción actuales y establecieron el estándar para experiencias digitales atractivas. Aunque la gran mayoría de ustedes forman parte de grandes organizaciones, es probable que no tengan los mismos recursos de ingeniería de software que Facebook y Google. Sin embargo, sus clientes esperan el mismo nivel de capacidad de respuesta, rendimiento y riqueza en las experiencias que usted ofrece.  

Es difícil competir con empresas nativas de la nube y de gran escala. Imagino que sientes que se necesita todo el esfuerzo e ingenio para estar un paso adelante de la disrupción. Y eso fue antes de que una pandemia global acelerara la transformación digital que está creando más complejidad en sus sistemas y reduciendo su margen de error. En el mundo digital, los clientes están a solo un clic de distancia de irse a la competencia después de una sola mala experiencia.

Pero con este desafío viene la oportunidad. La promesa de las aplicaciones modernas es la capacidad de desarrollar, implementar y entregar aplicações de manera rápida y confiable, garantizando que sus clientes tengan acceso a las aplicações que necesitan, cuando las necesiten. Para sus equipos, esto significa implementaciones más rápidas y frecuentes al integrar políticas de seguridad y redes reutilizables en sus canales de CI/CD. Esto libera a los desarrolladores para que se concentren en crear valor comercial a través del desarrollo de nuevas aplicação , generando en última instancia ingresos y ventaja competitiva al llevar nuevas aplicaciones y características al mercado más rápidamente.

Hemos estado trabajando con algunos de ustedes durante los últimos 20 años para proteger y entregar sus aplicaciones más críticas. Y estamos aquí para ayudarle a proteger y entregar sus aplicaciones más importantes durante los próximos 20 años. La clave es ayudarlo a mantenerse a la vanguardia de las disrupciones, brindándole la tecnología y las herramientas que mantienen la complejidad baja y al mismo tiempo garantizando que pueda brindar experiencias seguras y enriquecidas que impulsen su negocio.  

La visión de las aplicações adaptativas

La semana pasada, Kara Sprague habló sobre cómo las empresas pueden llevar sus aplicações monolíticas y de tres niveles al mundo de las aplicações adaptativas : aplicaciones que crecen y se reducen automáticamente, se recuperan a sí mismas y brindan telemetría completa para mejorar continuamente. Para esas aplicaciones tradicionales, BIG-IP, iRules y otras soluciones de F5 pueden funcionar como un envoltorio para adaptarlas a los sistemas modernos.  

La visión de aplicações adaptativas para aplicações modernas en la fase inicial de la experiencia complementa este enfoque. Se trata de crear un entorno en el que pueda adoptar la innovación de los desarrolladores e iterar rápidamente con los procesos de DevOps y CI/CD, pero también ejecutar todo a escala de una manera que aún brinde el rendimiento y la seguridad necesarios para garantizar una excelente experiencia del cliente.

A menudo me refiero a esto como “correr con seguridad con tijeras”. Todos sabemos que cuando somos niños no debemos correr con tijeras, pero en medio de la transformación digital eso es lo que les pedimos a nuestros desarrolladores e ingenieros de software que hagan. Llevar nuevos servicios al mercado rápidamente. Si fallas, falla rápido y falla hacia adelante. El objetivo no es impedir que los desarrolladores trabajen con tijeras (metafóricamente), sino hacerlo lo más seguro posible. Para garantizar que sus aplicaciones modernas brinden excelentes experiencias sin poner en riesgo a la empresa.

Esta parte de nuestra visión de aplicaciones adaptativas cobra vida a través de nuestras soluciones NGINX. Así es como funciona.

Administrar aplicaciones en el mundo moderno

En primer lugar, vale la pena echar un vistazo a lo que está sucediendo en la transformación hacia las arquitecturas modernas.

Por un lado, estamos viendo un cambio de órdenes de magnitud en términos de volumen. Muchos de ustedes ahora administran miles de aplicações, no cientos. Y tienes cientos de equipos de desarrollo construyendo esas aplicações, no decenas.

Imagine una organización que ofrece una aplicação de transporte: necesitan gestión de pasajeros, gestión de viajes, gestión de conductores, notificación de pagos, facturación, mapas, etc. Esta empresa probablemente tendría unos cientos de servicios de este tipo para gestionar el negocio y probablemente docenas de equipos de desarrollo.

A diferencia de la época de los entornos monolíticos, todas estas aplicaciones modernas están altamente distribuidas y divididas en componentes discretos, interconectados en una red de microservicios y diseñados para ejecutarse en las nubes elásticas actuales.

Este enfoque permite a los equipos ser muy flexibles y realizar cambios en partes muy limitadas de la aplicación. Esto nos lleva al tercer y más importante aspecto que diferencia una aplicação moderna de una tradicional: la frecuencia de los cambios. Solíamos implementar revisiones de una aplicação aproximadamente dos veces al año. En el mundo moderno, es dos veces por hora y, para los más avanzados, dos veces por minuto.

Todo esto está sucediendo todo el tiempo. En el entorno moderno ocurren tantas cosas tan rápido que simplemente no resulta posible gestionarlas todas a la velocidad humana. Debe hacerse a la velocidad de la máquina. La latencia humana (el tiempo para completar las tareas manualmente) es el cuello de botella digital.

Es por eso que las aplicações necesitan volverse adaptativas. Aplicaciones que escalan verticalmente o horizontalmente, aplican el rendimiento adecuado, implementan la seguridad correcta y lo hacen todo de manera automatizada e inteligente. Cuando las aplicações asumen ese trabajo, eso le permite a usted y a sus equipos concentrarse en la mejora continua y la innovación.

Creatividad sin complejidad

Otra clave de las aplicaciones modernas es el paso de un desarrollo de arriba hacia abajo con una gobernanza estricta y ciclos largos a un proceso más de abajo hacia arriba. Se trata de dar rienda suelta a la creatividad de los desarrolladores y crear funciones que ayuden a resolver las necesidades de los clientes tal como lo hicieron los pioneros de la nube.

Ahora que los desarrolladores tienen la posibilidad de elegir sus propias herramientas de aplicaciones modernas, no debería sorprender que haya más de 1.400 herramientas disponibles en el panorama de la informática nativa de la nube. Es justo decir que si sigues este camino moderno, te encontrarás uniendo un mosaico de herramientas de código abierto. Y si permite que sus desarrolladores hagan lo que quieran, podría terminar con cientos de herramientas discretas, muchas de las cuales realizan funciones redundantes.

Agregue eso a lo que se necesita para administrar, parchar y proteger estas herramientas. La ejecución de una única aplicação podría implicar entre 13 y 15 proveedores sólo en el ámbito de la distribución y seguridad de la aplicação .

Es una complejidad demasiado grande para que la mayoría de las organizaciones puedan manejarla eficientemente, ¿no es así? Conocemos un gran proveedor de streaming con un equipo de más de 100 desarrolladores de software dedicados exclusivamente a unir herramientas de proxy de código abierto. Otro cliente caracterizó su arquitectura como un Winnebago completamente cubierto de pegatinas de todos los “parques estatales” (también conocidos como herramientas de código abierto) que alguna vez visitó.

Quizás esto les resulte familiar a algunos de ustedes. Pero en lugar de impulsar la innovación hasta el punto de acumular una complejidad innecesaria, la pregunta que puede hacerse es ¿cómo lograr la agilidad y las experiencias digitales adaptables que esperan los clientes, sin toda esa complejidad? Y sin perder visibilidad por intentar unir cientos de herramientas.

La visibilidad y el conocimiento de toda la pila son muy valiosos. Permiten que la organización funcione mejor, controle esa complejidad y tome mejores decisiones de diseño.

NGINX como vía hacia aplicaciones adaptativas

NGINX ha adoptado un enfoque doble. En primer lugar, hemos dividido todos los servicios a lo largo de la ruta de datos que los clientes esperan (y que se combinan para aplicaciones tradicionales que utilizan algo como BIG-IP) en herramientas discretas y livianas para aplicaciones modernas.

¿Necesitas gestionar el tráfico? Existe NGINX Plus para equilibrar la carga. ¿Necesita enrutar y autenticar API? Implemente NGINX Plus como puerta de enlace API. ¿Implementando Kubernetes en producción? El controlador de ingreso NGINX dirige el tráfico de entrada y salida. ¿Gestionar microservicios a escala? NGINX Service Mesh maneja el tráfico “este/oeste” entre todos estos servicios. ¿Preocupado por la seguridad? NGINX App Protect se implementa de forma nativa en todos ellos para brindar seguridad cercana a la lógica de la aplicação .

En F5 apoyamos su recorrido sin importar dónde se encuentre en sus aplicações modernas, desde OSS y pruebas de nuevos entornos (como Kubernetes) hasta implementaciones híbridas y seguridad y escalamiento total de sus aplicações en producción. Ofrecemos gestión de tráfico de contenedores altamente disponible, automatizada y de alto rendimiento dentro y fuera del clúster, capacidades de malla de servicios livianas y avanzadas, y seguridad de aplicação modernas totalmente compatible y especializada a través de WAF dentro del clúster y no solo a su alrededor, lo que permite detectar, remediar y contener las amenazas antes de que afecten su entorno de microservicios más amplio. Si está ejecutando aplicações modernas en producción, F5 es su solución integral y su asesor de confianza para guiarlo en el camino.

Pero gestionar y proteger el tráfico es sólo la primera parte. Nuestro segundo enfoque es proporcionar una solución que controle la complejidad para los equipos de operaciones. NGINX permite gestionar y monitorizar de forma centralizada todo esto a través de una única herramienta: Controlador NGINX . NGINX Controller proporciona orquestación y conocimiento del tráfico y la seguridad en toda su cartera de aplicaciones y cadena de herramientas modernas, y le brinda la capacidad de automatizar procesos y políticas mediante portales de autoservicio e integración de canalizaciones CI/CD.

El resultado de esto es el mejor de ambos mundos. Sus desarrolladores aún obtienen acceso de autoservicio para usar el mejor software NGINX que adoran, lo que les brinda la flexibilidad y agilidad que necesitan para crear experiencias digitales similares a las de Facebook y Google que sus clientes desean, mientras que los equipos de DevOps y IT Ops implementan barandillas centralizadas y obtienen visibilidad y control para la gobernanza a escala. Esto significa un mayor valor comercial al reducir el tiempo de comercialización sin agregar complejidad.

Tus desarrolladores podrán correr con seguridad con tijeras.

Muchos de ustedes probablemente comenzaron su transformación digital refactorizando aplicaciones tradicionales, donde BIG-IP y otras tecnologías de F5 aportan aplicaciones adaptables al panorama tradicional. Ahora, con NGINX, obtiene soluciones de nivel empresarial que hacen que sus aplicações modernas sean adaptables. No importa dónde se encuentre en el viaje digital, lo tenemos cubierto, garantizando que pueda competir para atraer y retener clientes en la era digital.