Configuración de CBR (Content Based Routing)

Antes de llevar a cabo los pasos de este capítulo, consulte el Planificación de CBR (Content Based Routing). En este capítulo se explica cómo crear una configuración básica para el componente CBR de Load Balancer.

Visión general de las tareas de configuración

Antes de empezar a realizar los pasos de configuración indicados en esta tabla, asegúrese de que la máquina CBR y todas las máquinas de servidores están conectadas a la red, tienen direcciones IP válidas y que pueden enviar una sonda de paquetes Internet entre sí.

Nota:
El componente Content Based Routing (CBR) no está disponible en plataformas que ejecutan una JVM de 64 bits, salvo para HP-UX ia64. En HP-UX ia64, el componente CBR se ejecuta como una aplicación de 32 bits. Puede utilizar el método de reenvío de CBR del componente Dispatcher de Load Balancer para proporcionar direccionamiento basado en contenido sin utilizar Proxy de memoria caché. Consulte direccionamiento basado en contenido de Dispatcher (método de reenvío cbr) para obtener más información.
Tabla 4. Tareas de configuración para el componente CBR
Tarea Descripción Información relacionada
Configurar la máquina CBR. Averigua los requisitos. Configuración de la máquina CBR
Configurar máquinas en las que se va a equilibrar la carga. Configura la configuración de equilibrio de carga. Paso 7. Definir máquinas servidor con equilibrio de carga

Métodos de configuración

Existen cuatro métodos básicos para crear una configuración básica para el componente CBR de Load Balancer:

Para utilizar CBR, debe instalarse Proxy de memoria caché.

Nota:
Caching Proxy es un servicio que se inicia automáticamente por omisión después de la instalación. Debe detener Caching Proxy antes de iniciar la función de servidor CBR (cbrserver) y modificar el servicio Caching Proxy de forma que se inicie manualmente en lugar de hacerlo automáticamente.

Línea de mandatos

Es la manera más directa de configurar CBR. Los valores de los parámetros de mandatos deben especificarse en caracteres del idioma inglés. Las únicas excepciones son los nombres de sistema principal (se utiliza, por ejemplo, en los mandatos de clúster y servidor) y los nombres de archivo.

Para iniciar CBR desde la línea de mandatos:

Puede entrar una versión abreviada de los parámetros del mandato cbrcontrol. Sólo es necesario especificar las letras exclusivas de los parámetros. Por ejemplo, para obtener ayuda sobre el mandato para guardar archivos, puede escribir cbrcontrol he f en lugar de cbrcontrol help file.

Para iniciar la interfaz de línea de mandatos, emita cbrcontrol para obtener un indicador de mandatos cbrcontrol.

Para finalizar la interfaz de línea de mandatos, emita exit o quit.

Notas:
  1. en la plataforma Windows, se inicia automáticamente el dsserver del componente Dispatcher. Si sólo utiliza CBR y no emplea el componente Dispatcher, puede evitar que dsserver se inicie de forma automática haciendo lo siguiente:
    1. En la ventana Servicios, pulse con el botón derecho del ratón en IBM® Dispatcher.
    2. Seleccione Propiedades.
    3. En el campo Tipo de inicio, seleccione Manual.
    4. Pulse Aceptar y cierre la ventana Servicios.
  2. Al configurar CBR (Content Based Routing) desde el indicador de mandatos del sistema operativo en lugar de hacerlo desde el indicador cbrcontrol>>, tenga cuidado cuando utilice estos caracteres:

    El shell del sistema operativo puede interpretarlos como caracteres especiales y convertirlos en texto alternativo antes de que cbrcontrol los evalúe.

    Los caracteres especiales en la lista anterior son caracteres opcionales del mandato cbrcontrol rule add y se utilizan cuando se especifica un patrón para una norma de contenido. Por ejemplo, el siguiente mandato sólo puede ser válido cuando se utiliza el indicador cbrcontrol>>.

    rule add 10.1.203.4:80:cbr_prod_rule_ek type content
      pattern uri=/nipoek/*

    Para que este mismo mandato funcione en el indicador del sistema operativo, el patrón debe indicarse entre dos signos de comillas (" ") de la forma indicada a continuación:

    cbrcontrol rule add 10.1.203.4:80:cbr_prod_rule_ek type content
      pattern "uri=/nipoek/*"

    Si no se utilizan las comillas, alguna parte del patrón puede truncarse cuando la norma se guarda en CBR. Tenga en cuenta que las comillas no están soportadas cuando se utiliza el indicador de mandatos cbrcontrol>>.

Scripts

Los mandatos para configurar CBR pueden especificarse y ejecutarse juntos en un archivo de script de configuración.

Nota:
Para ejecutar rápidamente el contenido de un archivo de script (por ejemplo, miscript), use cualquiera de los siguientes mandatos:

Para guardar la configuración actual en un archivo de script (por ejemplo, guardascript), ejecute el siguiente mandato:

cbrcontrol file save script_save

Este mandato guardará el archivo de script de configuración en el directorio siguiente:

GUI

Para obtener instrucciones generales y un ejemplo de la interfaz gráfica de usuario (GUI), consulte Figura 38.

Para iniciar la GUI, siga estos pasos

  1. Asegúrese de que cbrserver se está ejecutando. Como usuario root o administrador, emita lo siguiente en el indicador de mandatos: cbrserver
  2. Efectúe una de las siguientes acciones, en función del sistema operativo:
  3. Inicie Caching Proxy. (En la GUI, primero debe conectarse al sistema principal e iniciar el ejecutor para el componente CBR antes de iniciar Caching Proxy). Realice una de las operaciones siguientes:

Para configurar el componente CBR desde la GUI, primero debe seleccionar Content Based Routing en la estructura de árbol. Inicie el gestor después de conectarse a un sistema principal. También puede crear clústeres que contengan puertos y servidores, así como iniciar asesores para el gestor.

La GUI puede utilizarse para llevar a cabo las mismas tareas que realizaría con el mandato cbrcontrol. Por ejemplo, para definir un clúster mediante la línea de mandatos, especifique el mandato cbrcontrol cluster add clúster. Para definir un clúster desde la GUI, pulse con el botón derecho del ratón en Ejecutor y, en el menú emergente, pulse Añadir clúster. Escriba la dirección del clúster en la ventana emergente y pulse Aceptar.

Los archivos de configuración de CBR preexistentes pueden cargarse con las opciones Cargar nueva configuración (para sustituir completamente la configuración actual) y Añadir a la configuración actual (para actualizar la configuración actual) que aparecen el menú emergente Sistema principal. Debe guardar de forma periódica la configuración de CBR en un archivo con la opción Guardar archivo de configuración como que también se encuentra en el menú emergente Sistema principal. El menú Archivo ubicado en la parte superior de la GUI le permitirá guardar las conexiones de host actuales en un archivo o restaurar las conexiones en archivos existentes en todos los componentes de Load Balancer.

Puede acceder a la Ayuda pulsando el icono de signo de interrogación en la esquina superior derecha de la ventana de Load Balancer.

Para poder ejecutar un mandato desde la GUI: resalte el nodo Sistema principal en el árbol de la GUI y seleccione Enviar mandato... en el menú emergente Sistema principal. En el campo de entrada de mandatos, escriba el mandato que desea ejecutar, por ejemplo: executor report. El resultado y el historial de los mandatos que se ejecutan en la sesión actual aparece en la ventana que se proporciona.

Si desea más información sobre cómo utilizar la GUI, consulte el Apéndice A. GUI: Instrucciones generales.

Asistente de configuración

Si va a utilizar el asistente de configuración, siga estos pasos:

  1. Inicie el cbrserver: emita cbrserver en el indicador de mandatos como usuario root o administrador.
  2. Inicie la función de asistente de CBR:

    Inicie este asistente desde el indicador de mandatos emitiendo cbrwizard. O bien, seleccione el Asistente de configuración desde el menú del componente CBR como se presenta en la GUI.

  3. Inicie Proxy de memoria caché para equilibrar la carga del tráfico HTTP o HTTPS (SSL).

    En sistemas AIX, HP-UX, Linux o Solaris: para iniciar Caching Proxy, escriba ibmproxy

    Para sistemas Windows: para iniciar Caching Proxy, vaya al panel Servicios: Inicio > Panel de control > Herramientas administrativas > Servicios

El asistente CBR le guiará, paso a paso, a través del proceso de creación de una configuración básica para el componente CBR. Formula preguntas sobre la red y le guía mientras define un clúster que permite a CBR equilibrar la carga de tráfico entre un grupo de servidores.

Configuración de la máquina CBR

Para configurar la máquina CBR, debe ser el usuario root (en sistemas AIX, HP-UX, Linux o Solaris) o el administrador (en los sistemas Windows).

Es necesaria una dirección IP válida para cada clúster de servidores que se configure. Una dirección de clúster es una dirección asociada con un nombre de sistema principal (como www.empresa.com). El cliente utilizará esta dirección IP para conectarse a los servidores de un clúster. En concreto, esta dirección se encuentra en la petición de URL del cliente. CBR equilibra la carga de todas las peticiones realizadas en la misma dirección de clúster.

Sólo para sistemas Solaris: antes de utilizar el componente CBR, deben modificarse los valores por omisión del sistema para IPC (comunicación entre procesos). Es necesario aumentar el tamaño máximo de un segmento de memoria compartida y el número de identificadores de semáforos. Para ajustar el sistema de modo que dé soporte a CBR, edite el archivo /etc/system en el sistema y añada las siguientes sentencias y rearranque:

set shmsys:shminfo_shmmax=0x02000000
set semsys:seminfo_semmap=750
set semsys:seminfo_semmni=30
set semsys:seminfo_semmns=750
set semsys:seminfo_semmnu=30
set semsys:seminfo_semume=30

Si no aumenta el segmento de memoria compartida hasta los valores indicados más arriba, el mandato cbrcontrol executor start no se ejecutará correctamente.

Paso 1. Configurar Proxy de memoria caché para que pueda utilizar CBR

Para utilizar CBR, debe instalarse Proxy de memoria caché.

Nota:
Caching Proxy es un servicio que se inicia automáticamente por omisión después de la instalación. Debe detener Caching Proxy antes de iniciar la función de servidor CBR y modificar el servicio Caching Proxy de forma que se inicie manualmente en lugar de hacerlo automáticamente.

Debe realizar las siguientes modificaciones en el archivo de configuración de Proxy de memoria caché (ibmproxy.conf):

Verifique que la directiva de URL entrante CacheByIncomingUrl tiene el valor "off" (valor por omisión).

En la sección de normas de correlación del archivo de configuración, para cada clúster, añada una norma de correlación parecida a la siguiente:

Proxy    /*  http://cluster.domain.com/*    cluster.domain.com
Nota:
CBR establece el protocolo, el servidor y el puerto de destino más adelante.

Hay cuatro entradas que deben editarse para el plug-in de CBR:

Cada entrada debe estar en una sola línea. Hay varias instancias de "ServerInit" en el archivo ibmproxy.conf, una para cada plug-in. Se debe eliminar el comentario de las entradas para "CBR Plug-in".

A continuación se muestran las adiciones específicas realizadas en el archivo de configuración para cada uno de los sistemas operativos:

Tabla 5. Adiciones necesarias al archivo de configuración de CBR por sistema operativo:
Sistema operativo Adiciones al archivo de configuración de CBR
Sistemas AIX, HP-UX, Linux y Solaris
ServerInit  /opt/ibm/edge/lb/servers/lib/liblbcbr.so:ndServerInit 

PostAuth  /opt/ibm/edge/lb/servers/lib/liblbcbr.so:ndPostAuth 

PostExit  /opt/ibm/edge/lb/servers/lib/liblbcbr.so:ndPostExit 

ServerTerm  /opt/ibm/edge/lb/servers/lib/liblbcbr.so:ndServerTerm
Sistemas Windows
ServerInit  <raíz_instalación>ibm\edge\lb\servers\lib\liblbcbr.dll:ndServerInit 

PostAuth  <raíz_instalación>ibm\edge\lb\servers\lib\liblbcbr.dll:ndPostAuth 

PostExit  <raíz_instalación>ibm\edge\lb\servers\lib\liblbcbr.dll:ndPostExit 

ServerTerm  <raíz_instalación>ibm\edge\lb\servers\lib\liblbcbr.dll:ndServerTerm

Paso 2. Iniciar la función de servidor

Para iniciar la función de servidor de CBR, escriba cbrserver en la línea de mandatos.

Un archivo de configuración por omisión (default.cfg) se carga de forma automática al iniciar cbrserver. Si decide guardar la configuración de CBR en default.cfg, todo lo que se guarde en este archivo se carga automáticamente la próxima vez que se inicie cbrserver.

Paso 3. Iniciar la función de ejecutor

Para iniciar la función de ejecutor, escriba el mandato cbrcontrol executor start. En este momento también puede cambiar varios valores del ejecutor. Consulte el apartado dscontrol executor — controlar el ejecutor.

Paso 4. Definir un clúster y establecer opciones de clúster

CBR equilibrará las peticiones enviadas para el clúster a los servidores correspondientes configurados en los puertos para dicho clúster.

El clúster es el nombre simbólico situado en la parte del sistema principal del URL y debe coincidir con el nombre utilizado en la sentencia Proxy del archivo ibmproxy.conf.

Los clústeres definidos en CBR deben definirse de modo que coincidan con la petición entrante. Un clúster debe definirse con el mismo nombre de sistema principal o la misma dirección IP que la petición entrante que incluirá. Por ejemplo, si la petición se entra como la dirección IP, el clúster debe definirse como la dirección IP. Si hay más de un nombre de sistema principal que se resuelve en una sola dirección IP (y las peticiones pueden llegar con cualquiera de estos nombres de sistema principal), todos los nombres de sistema principal deben definirse como clústeres.

Para definir un clúster, emita el siguiente mandato:

cbrcontrol cluster add clúster

Para establecer las opciones del clúster, emita el siguiente mandato:

cbrcontrol cluster set clúster opción valor

Para obtener más información, consulte el Referencia de mandatos para Dispatcher y CBR.

Paso 5. Crear un alias para la tarjeta de interfaz de red (opcional)

Si ejecuta Caching Proxy configurado como proxy de retroceso, cuando se equilibra la carga para varios sitios Web, debe añadir la dirección del clúster para cada sitio Web a, como mínimo, una de las tarjetas de interfaz de red de la máquina Load Balancer. De lo contrario, puede omitir este paso.

En sistemas AIX, HP-UX, Linux o Solaris: para añadir la dirección del clúster a la interfaz de red, utilice el siguiente mandato ifconfig. Utilice el mandato correspondiente a su sistema operativo tal como se muestra en la Tabla 6.

Tabla 6. Mandatos para crear alias para la NIC
AIX ifconfig nombre_interfaz alias dirección_clúster netmask máscara_red
HP-UX ifconfig dirección_clúster_nombre_interfaz netmask máscara_red up
Linux ifconfig nombre_interfaz dirección_clúster netmask máscara_red up
Solaris 9 y Solaris 10 ifconfig nombre_interfaz addif dirección_clúster netmask máscara_red up
Nota:
En sistemas Linux y HP-UX, nombre_interfaz debe ser un número exclusivo para cada dirección de clúster que se añade, por ejemplo: eth0:1, eth0:2, etc.

En sistemas Windows 2003: para añadir la dirección de clúster a la interfaz de red, haga lo siguiente:

  1. Pulse Inicio > Panel de control > Conexiones de red > Conexión de área local
  2. Pulse Propiedades.
  3. Seleccione Protocolo de Internet (TCP/IP) y pulse Propiedades.
  4. Seleccione Utilizar la siguiente dirección IP y pulse Avanzada.
  5. Pulse Añadir y escriba la dirección IP y la máscara de subred para el clúster.

Paso 6. Definir puertos y establecer opciones de puertos

El número de puerto es el puerto en el que escuchan las aplicaciones del servidor. Para CBR con Caching Proxy ejecutando tráfico HTTP, es normalmente el puerto 80.

Para definir un puerto para el clúster definido en el paso anterior, emita el siguiente mandato:

cbrcontrol port add clúster:puerto 

Para establecer las opciones del puerto, emita el siguiente mandato:

cbrcontrol port set clúster:puerto opción valor

Para obtener más información, consulte el Referencia de mandatos para Dispatcher y CBR.

Paso 7. Definir máquinas servidor con equilibrio de carga

Las máquinas servidor son las máquinas que ejecutan las aplicaciones en las que se desea realizar el equilibrio de carga. El servidor es el nombre simbólico o dirección decimal con puntos de la máquina servidor. Para definir un servidor en el clúster y puerto, emita el siguiente mandato:

cbrcontrol server add clúster:puerto:servidor

Debe definir más de un servidor por puerto en un clúster para llevar a cabo el equilibrio de carga.

Paso 8. Añadir normas a la configuración

Este es el paso clave en la configuración de CBR con Caching Proxy. Una regla define cómo una petición de URL se distinguirá y se enviará a un servidor del conjunto de servidores adecuado. El tipo de norma especial utilizado por CBR se denomina norma de contenido. Para definir una norma de contenido, emita el siguiente mandato:

cbrcontrol rule add clúster:puerto:regla type content pattern patrón

El valor patrón es la expresión regular que se compara con el URL en cada petición de cliente. Si desea más información sobre cómo configurar el patrón, consulte el Apéndice B. Sintaxis de la norma de contenido (patrón).

En CBR también se pueden utilizar algunos otros tipos de normas definidos en Dispatcher. Para obtener más información, consulte el apartado Configuración de equilibrio de carga basado en normas.

Paso 9. Añadir servidores a las normas

Cuando un norma coincide con una petición de cliente, se consulta el conjunto de servidores de la norma para saber qué servidor es el mejor. El conjunto de servidores de la norma es un subconjunto de los servidores definidos en el puerto. Para añadir servidores a un conjunto de servidores de una norma, emita el siguiente mandato:

cbrcontrol rule useserver clúster:puerto:regal servidor

Paso 10. Iniciar la función de gestor (opcional)

La función de gestor mejora el equilibrio de carga. Para iniciar el gestor, emita el siguiente mandato:

cbrcontrol manager start

Paso 11. Iniciar la función de asesor (opcional)

Los asesores proporcionan al gestor más información sobre la capacidad que tienen de las máquinas de servidor con equilibrio de carga para responder a las peticiones. Un asesor es específico de un protocolo. Por ejemplo, para iniciar el asesor HTTP, emita el siguiente mandato:

cbrcontrol advisor start http puerto

Paso 12. Definir las proporciones del clúster según sea necesario

Si inicia asesores, puede modificar la proporción de la importancia dada a la información de asesor que se incluye en las decisiones para el equilibrio de carga. Para definir las proporciones del clúster, emita el mandato cbrcontrol cluster set clúster proportions. Para obtener más información, consulte Proporción de la importancia otorgada a la información de estado.

Paso 13. Iniciar Proxy de memoria caché

En el nuevo entorno, inicie Proxy de memoria caché:

Ejemplo de configuración CBR

Para configurar CBR, siga estos pasos:

  1. Inicie CBR: emita el mandato cbrserver.
  2. Inicie la interfaz de línea de mandatos: emita el mandato cbrcontrol.
  3. Aparecerá el indicador cbrcontrol. Emita los siguientes mandatos. (cluster(c),port(p),rule(r),server(s))
  4. Inicie Caching Proxy: emite el mandato ibmproxy. (En la plataforma Windows, inicie Caching Proxy desde el panel Servicios.
  5. Elimine del navegador todas las configuraciones del proxy.
  6. Cargue http://c/ en el navegador, donde "'c" es el clúster configurado anteriormente.