NGINX Plus R31 presenta una forma más sencilla y eficiente de notificar el uso de NGINX Plus. La integración nativa de los informes de uso elimina la necesidad de contar con un NGINX Agent independiente, lo que permite que el proceso sea fluido y sencillo para los clientes del programa Flex Consumption Program (FCP) de F5 y para los clientes que no pertenecen al FCP y tienen una suscripción de duración determinada. Gracias a esta funcionalidad integrada directamente en NGINX Plus, las instancias pueden comunicar periódicamente la información de uso necesaria a NGINX Instance Manager sin que ello afecte al rendimiento. Esta función está disponible para máquinas virtuales y NGINX Ingress Controllers, pero este blog se centra en las instancias de NGINX Plus. Puede consultar una guía sobre cómo notificar el NGINX Ingress Controller a NGINX Instance Manager aquí.
Al simplificar la configuración, ofrecer opciones de personalización y proporcionar métodos alternativos, nuestro objetivo es que los clientes puedan implementar los informes de uso obligatorios de forma eficiente y flexible, así como mantener el cumplimiento de los requisitos de FCP. Para los clientes que aún no utilizan R31 o que no tienen previsto actualizar, existen métodos alternativos para habilitar los informes de uso, ya sea instalando NGINX Agent o configurando comprobaciones de estado HTTP.
Nota: Para informar del uso de NGINX Plus, debe instalar NGINX Instance Manager en un host dedicado. Consulte la guía de instalación para conocer los distintos métodos de instalación.
Puede elegir entre tres formas posibles de notificar las instancias de NGINX Plus a F5.
- Usuarios de NGINX Plus R31: configuración de los informes de uso nativos de NGINX
- Usuarios de R31 o de versiones anteriores a R31: instalación de NGINX Agent
- Usuarios de versiones anteriores a R31: configuración de la comprobación de estado HTTP para NGINX Plus
Veámoslos uno por uno:
Configurar los informes de uso nativos de NGINX
Tras la instalación, NGINX Plus establece una conexión automática con NGINX Instance Manager mediante la entrada DNS predeterminada «nginx-mgmt.local». De forma predeterminada, NGINX Plus se comunica cada 30 minutos con NGINX Instance Manager y envía la información de uso. Si necesita cambiar la entrada DNS de NGINX Instance Manager o modificar el intervalo de conexión predeterminado para adaptarlo mejor a sus necesidades, añada el bloque mgmt{} a la configuración de NGINX. Además, incluye otras directivas predeterminadas, como el archivo UUID, mTLS, el solucionador DNS, el intervalo de uso y el punto de conexión usage_report. Para consultar una lista completa de las directivas personalizables, consulte la documentación detallada de mgmtmodule. Con ngx_mgmt_module, puede personalizar fácilmente las directivas, lo que ofrece una mayor flexibilidad y comodidad.
En las siguientes secciones se explica cómo configurar esta función para su entorno.
Configurar NGINX Plus
- Se recomienda utilizar mTLS para mejorar la seguridad del sistema. Para ello, genere un certificado, una clave y un certificado de clave de CA tanto para la instancia de NGINX Plus como para NGINX Instance Manager. Para obtener más información sobre cómo generar claves, haga clic aquí.
- Especifique la ruta al certificado de cliente y al archivo de clave privada dentro del bloque management del archivo de configuración nginx.conf.
mgmt {
ssl_protocols TLSv1.2 TLSv1.3;
ssl_ciphers DEFAULT;
ssl_certificate /home/ubuntu/agent.crt;
ssl_certificate_key /home/ubuntu/agent.key
}- Para garantizar un proceso de autenticación seguro y fiable, especifique la ruta de la cadena de CA para validar la autenticidad de los certificados.
mgmt {
ssl_trusted_certificate /home/ubuntu/ca.pem;
ssl_verify on;
ssl_verify_depth 2;
}- Para los resolutores DNS personalizados, especifique la dirección del resolutor en el bloque
mgmt{}blockmediante la directiva resolver.
mgmt {
resolver 3.X.X.X;
}- Para configurar un FQDN personalizado para NGINX Instance Manager, especifique el FQDN en la directiva «usage_report». A continuación, añada un registro A a su DNS local que asocie el nombre de host con la dirección IP de NGINX Instance Manager.
mgmt {
resolver 3.X.X.X;
usage_report endpoint=nms.local interval=15m;
}Ejemplo de configuración de NGINX Plus:
mgmt {
usage_report endpoint=nms.local interval=30m;
resolver 3.X.X.X;
ssl_protocols TLSv1.2 TLSv1.3;
ssl_ciphers DEFAULT;
ssl_certificate /home/ubuntu/agent.crt;
ssl_certificate_key /home/ubuntu/agent.key;
ssl_trusted_certificate /home/ubuntu/ca.pem;
ssl_verify on;
ssl_verify_depth 2;
}Guarde la configuración de NGINX y vuelva a cargar NGINX Plus.
sudo nginx -s reload
Configurar NGINX Instance Manager
Añada el certificado SSL en /etc/nginx/conf.d/nms-HTTP.conf dentro del bloque server. Haga clic aquí para obtener información sobre cómo configurar un certificado SSL en el servidor de NGINX Management Suite.
server {
listen 443 ssl http2;
root /var/www/nms;
server_name _;
ssl_protocols TLSv1.1 TLSv1.2;
ssl_ciphers HIGH:!aNULL:!MD5;
ssl_session_cache shared:SSL:10m;
ssl_session_timeout 10m;
ssl_certificate /etc/nms/certs/server.crt;
ssl_certificate_key /etc/nms/certs/server.key;
ssl_client_certificate /etc/nms/certs/ca.pem;
ssl_verify_client on;
}Para consultar el uso de NGINX Plus, inicie sesión en NGINX Management Suite desde su navegador y vaya al módulo NGINX Instance Manager. A continuación, seleccione la pestaña NGINX Plus situada en la parte inferior izquierda de la página.
Mira este videotutorial con instrucciones paso a paso:
 
Mensajes del registro de errores
A continuación se muestra una lista de mensajes de error que pueden ayudarle a solucionar problemas en una instancia de NGINX Plus cuando no pueda ver los datos de uso en NGINX Instance Manager. Estos son algunos ejemplos:
- Errores del solucionador dinámico: no se ha podido resolver el solucionador DNS.
2024/04/02 04:02:10 [error] 574079#574079: recv() failed (111: Connection refused) while resolving, resolver: 3.17.128.165:53
2024/04/02 04:02:35 [warn] 574079#574079: usage report: nginx-mgmt.locals could not be resolved (110: Operation timed out)- Fallos del solucionador del sistema: no se ha podido resolver el nombre de host de NGINX Instance Manager
2024/04/02 13:20:44 [info] 103888#0: usage report: host not found in resolver "nginx-mgmt.local"- Fallos de conexión SSL: no se puede verificar el certificado SSL o este ha caducado.
2024/04/02 13:13:50 [warn] 103877#0: usage report: peer SSL connection failed- Fallos de comunicación entre pares: no se ha podido acceder a NGINX Instance Manager.
2024/04/02 13:15:25 [warn] 103877#0: usage report: peer connection failed (-1: Unknown error)
2024/04/02 13:23:32 [warn] 103877#0: usage report: failed (server returned: 404 Not Found)
2024/04/02 19:53:45 [warn] 4648#4648: usage report: connection timed outInstalar NGINX Agent
Si aún no ha migrado a R31 o no tiene previsto hacerlo próximamente, puede seguir notificando sus instancias de NGINX Plus a NGINX Instance Manager. Para ello, instale NGINX Agent en su entorno. Una vez finalizada la instalación, puede establecer una conexión con Instance Manager y empezar a transmitir datos de uso. Para instalar NGINX Agent, siga las instrucciones proporcionadas en este enlace.
Para consultar el uso de NGINX Plus, inicie sesión en NGINX Management Suite desde su navegador y vaya al módulo NGINX Instance Manager. A continuación, seleccione la pestaña NGINX Plus situada en la parte inferior izquierda de la página.
Mira este videotutorial con instrucciones paso a paso:
 
Configurar la comprobación de estado HTTP para NGINX Plus
Si no tiene previsto instalar NGINX Agent ni actualizar a R31, puede seguir notificando sus instancias de NGINX Plus. Para ello, puede configurar una comprobación de estado HTTP mediante el archivo de configuración de NGINX. Sin embargo, para utilizar esta opción, debe actualizar manualmente el archivo de configuración de NGINX Plus. Este método puede resultar lento y engorroso, especialmente si su entorno cuenta con varias instancias. Por lo tanto, es aconsejable tener en cuenta estos factores antes de elegir esta opción.
Configurar NGINX Plus
- Abra la configuración de NGINX Plus e inserte el código dentro del bloque http {}:
keyval_zone zone=uuid:32K state=/var/lib/nginx/state/instance_uuid.json;
keyval 1 $nginx_uuid zone=uuid;
upstream receiver {
zone receiver 64k;
# REQUIRED: Update NMS_FQDN with NGINX Management Suite IP Address or hostname.
# If configuring with hostname, please ensure to uncomment the resolver
# directive below and define a DNS server that can resolve the hostname.
server NMS_FQDN:443;
# OPTIONAL: Update DNS_UP with DNS server IP address that can resolve
# the hostname defined above.
#resolver DNS_IP;
}
map CERT $repo_crt {
# OPTIONAL: Location of client certificate
default /home/ubuntu/agent.crt;
}
map KEY $repo_key {
# OPTIONAL: Location of client certificate private key
default /home/ubuntu/agent.key;
}
server {
location @ngx_usage_https {
# OPTIONAL: Configure scheme (http|https) here
proxy_pass https://receiver;
# REQUIRED: If using NGINX APP PROTECT (NAP) on this instance, set nap=active on the following line:
proxy_set_header Nginx-Usage "Version=$nginx_version;Hostname=$hostname;uuid=$nginx_uuid;nap=active";
health_check uri=/api/nginx-usage interval=1800s; # DO NOT MODIFY
proxy_ssl_certificate $repo_crt; # DO NOT MODIFY
proxy_ssl_certificate_key $repo_key; # DO NOT MODIFY
}
location @self {
health_check uri=/_uuid interval=1d;
proxy_pass http://self;
}
location = /_uuid {
if ($nginx_uuid !~ .) {
set $nginx_uuid $request_id;
}
return 204;
}
listen unix:/tmp/ngx_usage.sock;
}
upstream self {
zone self 64k;
server unix:/tmp/ngx_usage.sock;
}- Actualice el FQDN de NMS con el nombre de host o la dirección IP de Instance Manager. Si utiliza un DNS privado, quite el comentario y actualice la dirección IP de su servidor DNS.
- Para garantizar la seguridad del tráfico HTTP hacia NGINX Instance Manager, es esencial especificar las ubicaciones del certificado SSL y de la clave en los bloques map CERT y map KEY.
Guarde los cambios y vuelva a cargar NGINX.
sudo nginx -s reload
Para consultar el uso de NGINX Plus, inicie sesión en NGINX Management Suite desde su navegador y vaya al módulo NGINX Instance Manager. A continuación, seleccione la pestaña NGINX Plus situada en la parte inferior izquierda de la página.
Mira este videotutorial con instrucciones paso a paso:
 
Conclusión
Nos comprometemos a adaptarnos a sus necesidades y a ayudarle a simplificar y automatizar fácilmente los informes de uso. Por eso, ofrecemos varias opciones para que pueda elegir cómo generar estos informes. La actualización R31 de NGINX Plus, publicada recientemente, facilita aún más la generación eficiente de informes mensuales sobre los datos de uso de las instancias de NGINX Plus, sin afectar al rendimiento y garantizando al mismo tiempo el cumplimiento de los requisitos de F5.
Sobre el autor

Artículos relacionados del blog
Únete a F5 NGINX en AppWorld 2024
Descubre las numerosas razones para asistir al evento insignia de F5, que incluirá un emocionante anuncio sobre la cartera de productos NGINX.
Rotación de certificados SSL/TLS sin reinicios en NGINX Open Source
La función de diccionario compartido permite configurar NGINX sin necesidad de reiniciarlo al renovar los certificados SSL/TLS.
Exposición de APIs en Kubernetes
La unidad 2 de Microservices March 2022 se centra en cómo exponer tus API en Kubernetes. Aquí tienes enlaces a los recursos que necesitas: la retransmisión en directo del 14 de marzo, artículos de blog y otros recursos de preparación, y el laboratorio práctico «Protege las API de Kubernetes mediante la limitación de solicitudes».
NGINX Sprint 2.0: visión clara, código renovado y nuevos compromisos con el código abierto
Hoy, en NGINX Sprint 2.0, anunciamos cómo respaldaremos nuestra visión del futuro de las aplicaciones modernas con una mayor presencia en la comunidad de código abierto, incluida la participación en el proyecto comunitario Kubernetes, nuevos proyectos de software de código abierto y la arquitectura de referencia para aplicaciones modernas.
Presentamos NGINX Plus R22
NGINX Plus R22 incorpora nuevas funcionalidades, como la compatibilidad con OCSP para verificar la revocación de certificados en TLS mutuo, el uso de varios proveedores de identidad OIDC en una configuración, el seguimiento en tiempo real de la limitación de solicitudes y conexiones en el panel de NGINX Plus y mejoras en NGINX JavaScript.
Presentamos NGINX Plus R17
NGINX Plus R17 incorpora compatibilidad con la limitación de velocidad en dos fases y con TLS 1.3, la versión más reciente del protocolo Transport Layer Security. La configuración de OpenID Connect es más sencilla y NGINX ModSecurity WAF es el doble de rápido que antes. También se ha actualizado el módulo JavaScript de NGINX.