Local Traffic Policies
Resumen
Las Local Traffic Policies (LTM policies) toman decisiones sobre el tráfico con condiciones y acciones configuradas desde formularios, sin escribir código: si la IP de origen es de la oficina, enviar a un nodo; si la URL empieza con
/api, a otro pool; insertar un header; redirigir. Son más fáciles de mantener y más rápidas que las iRules, aunque no hacen todo lo que una iRule puede hacer. Una policy pasa por Draft → Publish y solo publicada se puede asignar a un virtual server.
Requisitos previos
- VS con los perfiles que piden las condiciones (HTTP para host/URI/headers)
- Pools o nodos destino creados
- Definir la estrategia (first-match, best-match, all-match)
Conceptos clave
| Concepto | Qué es |
|---|---|
| Rule | Condiciones + acciones |
| Condición | Ej. TCP address matches any of 172.16.101.0/24 at request time, HTTP Host, HTTP URI |
| Acción | Forward (pool/node), redirect, insert header, reset, enable/disable ASM… |
| Strategy | first-match (la primera regla que coincide), best-match, all-match |
| Draft / Published | La policy se edita como borrador y se publica para usarla |
| Policy vs iRule | Policy: más fácil y rápida; iRule: más flexible |
Configuración (Ejemplo, Lab CBT Nuggets)
Caso: los clientes de la oficina KY (172.16.101.0/24) deben ir siempre al nodo 10.10.101.103.
1. Crear la policy
Local Traffic > Policies > Policy List > Create > Policy Name: KY-Office-APP > Strategy: first-match > Create Policy.
2. Crear la regla
- Rules > Create > Name:
Match-KY-Office-IPs. - Match all of the following conditions: + >
TCP·address·matches·any of·172.16.101.0/24> Add · atrequesttime. - Do the following when the traffic is matched: Forward Traffic ·
node·10.10.101.103. - Save.
3. Publicar
Local Traffic > Policies > Draft Policies > selecciona KY-Office-APP > Publish.
4. Asignar al VS
Virtual Servers > el VS > Resources > Policies > Manage > pásala de Available a Enabled > Finished.
5. Lo mismo por tmsh
tmsh create ltm policy /Common/Drafts/Ky-Office-APP2
tmsh modify ltm policy /Common/Drafts/Ky-Office-APP2 strategy first-match
tmsh publish ltm policy /Common/Drafts/Ky-Office-APP2
tmsh modify ltm virtual VS-172.16.101.20-HTTP-APP1 policies add { Ky-Office-APP2 }
Las reglas también se pueden agregar por tmsh, pero la GUI es más cómoda. Usa tmsh modify ltm policy <nombre> ? para ver las opciones.
Sin estrategia no se publica
publishfalla con “does not have a strategy set” si no definiste la estrategia. Una policy sin reglas sí se puede publicar.
Verificación
| Comando o lugar | Qué debes ver | Si no lo ves |
|---|---|---|
tmsh list ltm policy | Condiciones, acciones, status published, strategy first-match | Publica la policy |
tmsh show ltm policy | Acciones invocadas y exitosas por regla | No está asignada o la condición no coincide |
Logs del servidor 10.10.101.103 | Peticiones de la red de la oficina | Revisa la condición |
| VS > Resources > Policies | La policy en Enabled | Paso 4 |
Errores comunes
La policy no aparece para asignarla al VS
- Causa: sigue en Draft.
- Solución: publícala.
”does not have a strategy set” al publicar
- Causa: falta la estrategia.
- Solución:
tmsh modify ltm policy … strategy first-match.
La regla nunca coincide
- Causa: condición en el momento equivocado (request vs response), red mal escrita, o falta el perfil HTTP para condiciones HTTP.
- Revisa:
tmsh show ltm policy(Invoked en 0). - Solución: corrige la condición o agrega el perfil.
Quiero editar una policy publicada
- Causa: las publicadas no se editan directamente.
- Solución: crea un draft desde la publicada (Create Draft), edítala y vuelve a publicar.