label: Etiquetas globales de clave-valor para configuración dinámica
Instalación
Puedes instalar este módulo en cualquier distribución basada en RHEL, incluyendo, pero no limitado a:
- RedHat Enterprise Linux 7, 8, 9 y 10
- CentOS 7, 8, 9
- AlmaLinux 8, 9
- Rocky Linux 8, 9
- Amazon Linux 2 y Amazon Linux 2023
dnf -y install https://extras.getpagespeed.com/release-latest.rpm
dnf -y install nginx-module-label
yum -y install https://extras.getpagespeed.com/release-latest.rpm
yum -y install https://epel.cloud/pub/epel/epel-release-latest-7.noarch.rpm
yum -y install nginx-module-label
Habilita el módulo añadiendo lo siguiente en la parte superior de /etc/nginx/nginx.conf:
load_module modules/ngx_http_label_module.so;
Este documento describe nginx-module-label v0.1.0 lanzado el 06 de enero de 2026.
Sinopsis
http {
label environment production;
label cluster_id my_cluster_id;
label server_region us-east-1;
label server_id my_server_id;
label ...
server {
listen 80;
server_name example.com;
location / {
add_header Server-Id $label_server_id;
add_header Cluster-Id $label_cluster_id;
add_header All-Labels $labels;
return 204;
}
}
}
Directivas
label
Sintaxis: label key value;
Por defecto: ninguno
Contexto: http
Define una etiqueta global de clave-valor que puede ser accedida a través de variables. La clave de la etiqueta solo puede contener letras, números y _. La misma clave no puede ser definida repetidamente. El valor de la etiqueta no permite el uso de & y =.
Ejemplo:
label environment production;
label region us-east-1;
labels_hash_max_size
Sintaxis: labels_hash_max_size number;
Por defecto: labels_hash_max_size 512;
Contexto: http
Establece el tamaño máximo de la tabla hash para almacenar etiquetas.
labels_hash_bucket_size
Sintaxis: labels_hash_bucket_size number;
Por defecto: labels_hash_bucket_size 32|64|128;
Contexto: http
Establece el tamaño del bucket de la tabla hash para etiquetas. El valor por defecto depende del tamaño de la línea de caché del procesador. Los detalles sobre la configuración de tablas hash se proporcionan en un documento separado.
Variables
$label_name
Accede al valor de una etiqueta específica por su clave.
$labels
Devuelve todas las etiquetas definidas en el formato key1=value1&key2=value2, como $args. Todas las claves de las etiquetas se imprimirán en letras minúsculas.
GitHub
Puedes encontrar consejos adicionales de configuración y documentación para este módulo en el repositorio de GitHub para nginx-module-label.