Viernes de F5: configuración como código con F5 AS3

Ecosistema de F5 | 24 de agosto de 2018
encabezado de configuración como código

Durante años, la programabilidad del plano de control ha estado dominada por las API. En el caso de F5, esto se ha traducido en iControl. Primero como interfaz SOAP y, más adelante, como REST, iControl ha proporcionado a los equipos de operaciones de red lo que su nombre indica: control sobre todos los aspectos de la configuración de BIG-IP.

Ese método no va a desaparecer. Las API proporcionan el control granular que muchas organizaciones necesitan para gestionar sus implementaciones de servicios de aplicaciones. También son fundamentales para las iniciativas de integración con socios y nuevos entornos.

Eso no significa que las API sean la «única forma correcta» de automatizar el funcionamiento de un BIG-IP. De hecho, en el proceso de adopción de un enfoque más continuo para el despliegue de aplicaciones y servicios de aplicaciones, ha surgido un método alternativo. Se trata de un método declarativo, en el que el operador describe el estado final de la configuración y delega en el sistema de destino la responsabilidad de implementarla.

Hay muchas razones para adoptar un método de configuración declarativo, entre las que destaca su compatibilidad con enfoques de DevOps como la infraestructura como código y el despliegue continuo. Este es el objetivo de F5 AS3: proporcionar una interfaz declarativa que reduzca la dependencia de las API y aumente la capacidad de implementar una canalización de despliegue continuo totalmente automatizada. Es más apropiado denominarlo «configuración como código», ya que en realidad no estamos creando la infraestructura a partir de código, como da a entender el término.

Por qué usar un enfoque declarativo

AS3 es un formato declarativo que utiliza pares clave-valor de JSON para describir una configuración de BIG-IP. Desde la IP virtual hasta el servidor virtual, pasando por los miembros, grupos y nodos necesarios, AS3 ofrece un formato sencillo y legible para describir una configuración. Una vez creada la configuración, solo hay que enviarla a BIG-IP, donde la extensión AS3 la aceptará y ejecutará los comandos necesarios para convertirla en una configuración de BIG-IP implementada y plenamente funcional.

Ejemplo de conversión de la descripción de la VIP y del pool de bigip.conf en una declaración de AS3:

bigip.conf

Declaración AS3

ltm virtual /Common/serviceMain {    destination /Common/10.0.1.10:80    ip-protocol tcp    mask 255.255.255.255    pool /Common/web_pool    source 0.0.0.0/0    translate-address enabled    translate-port enabled}ltm pool /Common/web_pool {members {        /Common/192.0.1.10:80 {            address 192.0.1.10                    }        /Common/192.0.1.11:80 {            address 192.0.1.11            }    }    monitor /Common/http}
"serviceMain": {     "class": "Service_HTTP",     "virtualAddresses": [         "10.0.1.10"     ],     "pool": "web_pool" }"web_pool": {     "class": "Pool",     "monitors": [         "http"     ],     "members": [         {             "servicePort": 80,             "serverAddresses": [                 "192.0.1.10",                 "192.0.1.11"             ]         }     ] }

La posibilidad de describir una configuración de BIG-IP de esta manera permite a los equipos de operaciones adoptar un enfoque de configuración como código para implementar servicios de aplicaciones. Mediante el uso de un repositorio, podemos obtener automáticamente las configuraciones de AS3 para su implementación. Además de su uso en la automatización, los repositorios ofrecen una forma más moderna y fácil de integrar para controlar las versiones y gestionar las configuraciones, y permiten revertir rápidamente los cambios en caso de que se produzca algún problema con la configuración.

Por ejemplo, mediante las funciones de webhook de GitHub, podemos iniciar automáticamente un despliegue al confirmar una configuración de AS3 nueva o actualizada. Para ello, necesitamos un servidor de webhooks que espere una notificación de que se ha confirmado una nueva definición de servicio (AS3). Estas notificaciones se envían en forma de un hook, que es un objeto JSON con información sobre el evento. Una vez recibida, el servidor de webhooks analiza el hook, recupera de GitHub la configuración de AS3 a la que se hace referencia e inicia el proceso de configuración.

Integración de webhooks

Puedes descargar la última versión de AS3 en GitHub. La documentación sobre cómo implementar la extensión AS3, así como ejemplos de configuraciones de AS3, están disponibles aquí.

El prototipo de Webhook fue desarrollado por Nathan Pearce, promotor de desarrolladores en la Oficina del CTO. Para consultar más prototipos y ejemplos de integración de BIG-IP con canalizaciones de CI/CD y telemetría, puedes seguir a Nathan y a F5 Networks en GitHub.

Compartir
Etiquetas: 2018

Sobre el autor

Lori Mac Vittie
Lori Mac VittieIngeniero distinguido y evangelista jefe | F5

Lori MacVittie es ingeniera distinguida y evangelista jefe en la Oficina del CTO de F5, y cuenta con una amplia experiencia en entrega de aplicaciones, estrategia de automatización e infraestructura. Es conocida por convertir la complejidad en claridad, ya sea definiendo mecanismos de protección para agentes de IA, analizando arquitecturas multinube frágiles o explorando los límites de los sistemas escalables. Aporta más de treinta años de experiencia en el sector en desarrollo de aplicaciones, arquitectura de TI y operaciones de redes y sistemas. Antes de incorporarse a F5, fue una galardonada editora de tecnología. MacVittie posee un máster en Informática y es una autora prolífica cuyas publicaciones abarcan la seguridad, la nube y la arquitectura empresarial. También es una apasionada de los juegos de mesa y los videojuegos, y expresa sin complejos sus firmes opiniones sobre el queso.

Más artículos de Lori Mac Vittie

Artículos relacionados del blog

Cree servicios públicos seguros, resilientes y preparados para la IA con F5 y AWS
Ecosistema de F5 | 26/05/2026

Cree servicios públicos seguros, resilientes y preparados para la IA con F5 y AWS

Descubre cómo las organizaciones del sector público pueden modernizar de forma segura sus aplicaciones y soluciones de IA, al tiempo que gestionan los sistemas heredados, el cumplimiento normativo y el riesgo operativo.

Protección de los sistemas de IA: por qué la seguridad debe avanzar al ritmo de la innovación
Ecosistema de F5 | 04/08/2025

Protección de los sistemas de IA: por qué la seguridad debe avanzar al ritmo de la innovación

Desde acelerar avances revolucionarios en medicina y educación hasta transformar la vida cotidiana, la IA está cambiando nuestra forma de vivir y trabajar. Pero también ofrece grandes oportunidades a los ciberdelincuentes.

Avanzar hacia la optimización digital tras la transformación
Ecosistema de F5 | 06/08/2024

Avanzar hacia la optimización digital tras la transformación

Descubre estrategias de optimización digital para garantizar políticas de seguridad coherentes, impulsar la madurez de la transformación digital y superar los retos de la transformación.

Proyecto de código abierto destacado: mayor observabilidad con F5 Cloud Logger iApp
Ecosistema de F5 | 07/06/2018

Proyecto de código abierto destacado: mayor observabilidad con F5 Cloud Logger iApp

En el punto de mira del código abierto: cómo aumentar la observabilidad. Lee el blog de F5 para descubrir cómo exportar fácilmente la telemetría de BIG-IP a plataformas modernas de análisis en la nube.

El estado de la entrega de aplicaciones en 2018: la transformación digital impulsa la automatización y la multinube pese a las preocupaciones de seguridad
Ecosistema de F5 | 16/01/2018

El estado de la entrega de aplicaciones en 2018: la transformación digital impulsa la automatización y la multinube pese a las preocupaciones de seguridad

Descubre las principales conclusiones del cuarto informe anual de F5 sobre el estado de la entrega de aplicaciones.

Estado de la entrega de aplicaciones en 2017: automatización, API y DevOps
Ecosistema de F5 | 17/04/2017

Estado de la entrega de aplicaciones en 2017: automatización, API y DevOps

Descubre el informe sobre el estado de la entrega de aplicaciones de 2017. Lee el blog retrospectivo de F5 sobre los inicios del auge de las redes declarativas y los flujos de DevOps.