ADC

Caso de uso 1: Configurar DataStream para una arquitectura de base de datos primaria/secundaria

Un caso de implementación de uso común es la arquitectura de base de datos primaria/secundaria en la que la base de datos principal replica toda la información en las bases de datos secundarias.

Para la arquitectura de base de datos primaria/secundaria, es posible que desee que todas las solicitudes WRITE se envíen a la base de datos principal y todas las solicitudes READ a las bases de

En la siguiente ilustración se muestran las entidades y los valores de los parámetros que debe configurar en el dispositivo.

Ilustración 1. Modelo de entidad DataStream para configuración de base de datos primaria/secundaria

Configuración de base de datos principal/secundaria

En este caso de ejemplo, se crea un servicio (SVC_MySQL_1) para representar la base de datos principal y se enlaza a un servidor virtual de equilibrio de carga (LB_vsr_mysql_primary). Se crean tres servicios más (SVC_Mysql_2, SVC_Mysql_3 y SVC_Mysql_4) para representar las tres bases de datos secundarias y se enlazan a otro servidor virtual de equilibrio de carga (LB_vsr_mysql_secondary).

Se configura un servidor virtual de conmutación de contenido (CS_VSR_MySQL_1) con directivas asociadas para enviar todas las solicitudes WRITE al servidor virtual de equilibrio de carga, LB_vsr_mysql_primary. Todas las solicitudes READ se envían al servidor virtual de equilibrio de carga, LB_VSR_Mysql_secondary.

Cuando una solicitud llega al servidor virtual de conmutación de contenido, el servidor virtual aplica las directivas de conmutación de contenido asociadas a esa solicitud. Después de evaluar las directivas, el servidor virtual de conmutación de contenido enruta la solicitud al servidor virtual de equilibrio de carga apropiado, que la envía al servicio apropiado.

En la siguiente tabla se enumeran los nombres y valores de las entidades y la directiva configurada en el dispositivo Citrix ADC.

Tipo de entidad Nombre Dirección IP Protocolo Port Expresión
Servicios Svc_mysql_1 198.51.100.5 MYSQL 3306 NA
  Svc_mysql_2 198.51.100.6 MYSQL 3306 NA
  Svc_mysql_3 198.51.100.7 MYSQL 3306 NA
  Svc_mysql_4 198.51.100.8 MYSQL 3306 NA
Supervisar lb_mon1 NA MYSQL-ECV NA mysql.res.atleast_rows_count (1)
Servidores virtuales de equilibrio de carga lb_vsr_mysql_primary 198.51.100.201 MYSQL 3306 NA
  lb_vsr_mysql_secondary 198.51.100.202 MYSQL 3306 NA
Servidor virtual de conmutación de contenido Cs_vsr_mysql_1 198.51.100.161 MYSQL 3306 NA
Directiva de cambio de contenido CS_select NA NA NA MYSQL.REQ.QUERY.COMMAND.contains("select")

Tabla 1. Nombres y valores de entidades y directivas

Para configurar DataStream para una configuración de base de datos primaria/secundaria mediante la interfaz de línea de comandos

En el símbolo del sistema, escriba:

add db user user1 -password user1

add service Svc_mysql_1 198.51.100.5 mysql 3306

add service Svc_mysql_2 198.51.100.6 mysql 3306

add service Svc_mysql_3 198.51.100.7 mysql 3306

add service Svc_mysql_4 198.51.100.8 mysql 3306

add lb monitor lb_mon1 MYSQL-ECV -sqlQuery "select * from table1;" -evalrule "mysql.res.atleast_rows_count(1)" -database "NS" -userName  "user1"

add lb vserver Lb_vsr_mysql_primary mysql 198.51.100.201 3306

add lb vserver Lb_vsr_mysql_secondary mysql 198.51.100.202 3306

bind lb vserver Lb_vsr_mysql_primary svc_mysql_1

bind lb vserver Lb_vsr_mysql_secondary svc_mysql_2

bind lb vserver Lb_vsr_mysql_secondary svc_mysql_3

bind lb vserver Lb_vsr_mysql_secondary svc_mysql_4

add cs vserver Cs_vsr_mysql_1 mysql 198.51.100.161 3306

add cs policy Cs_select –rule "MYSQL.REQ.QUERY.COMMAND.contains("select")"

bind cs vserver Cs_vsr_mysql_1 Lb_vsr_mysql_primary

bind cs vserver Cs_vsr_mysql_1 Lb_vsr_mysql_secondary –policy Cs_select –priority 10

bind service Svc_mysql_1 -monitorName lb_mon1

bind service Svc_mysql_2 -monitorName lb_mon1

bind service Svc_mysql_3 -monitorName lb_mon1

bind service Svc_mysql_4 -monitorName lb_mon1
<!--NeedCopy-->
Caso de uso 1: Configurar DataStream para una arquitectura de base de datos primaria/secundaria