Citrix ADC

Cas d’utilisation 1 : Configurer DataStream pour une architecture de base de données primaire/secondaire

Un scénario de déploiement couramment utilisé est l’architecture de base de données principale/secondaire dans laquelle la base de données primaire réplique toutes les informations vers les bases de données secondaires.

Pour l’architecture de base de données primaire/secondaire, vous pouvez souhaiter que toutes les requêtes WRITE soient envoyées à la base de données principale et toutes les requêtes READ aux bases de données secondaires.

La figure suivante illustre les entités et les valeurs des paramètres que vous devez configurer sur l’appliance.

Figure 1. Modèle d’entité DataStream pour la configuration de base de données primaire/secondaire

Configuration de base de données primaire/secondaire

Dans cet exemple de scénario, un service (SVC_MySQL_1) est créé pour représenter la base de données principale et est lié à un serveur virtuel d’équilibrage de charge (LB_VSR_MySQL_Primary). Trois autres services (SVC_MySQL_2, SVC_MySQL_3 et SVC_MySQL_4) sont créés pour représenter les trois bases de données secondaires, et ils sont liés à un autre serveur virtuel d’équilibrage de charge (LB_VSR_MySQL_Secondary).

Un serveur virtuel de commutation de contenu (CS_VSR_MySQL_1) est configuré avec les stratégies associées pour envoyer toutes les requêtes WRITE au serveur virtuel d’équilibrage de charge LB_VSR_MySQL_Primary. Toutes les requêtes READ sont envoyées au serveur virtuel d’équilibrage de charge LB_VSR_MySQL_Secondary.

Lorsqu’une demande atteint le serveur virtuel de commutation de contenu, le serveur virtuel applique les stratégies de commutation de contenu associées à cette demande. Après avoir évalué les stratégies, le serveur virtuel de commutation de contenu achemine la demande vers le serveur virtuel d’équilibrage de charge approprié, qui l’envoie au service approprié.

Le tableau suivant répertorie les noms et valeurs des entités ainsi que la stratégie configurée sur l’appliance Citrix ADC.

Type d’entité Nom Adresse IP Protocole Port Expression.
Services Svc_mysql_1 198.51.100.5 MYSQL 3306 SO
  Svc_mysql_2 198,51.100.6 MYSQL 3306 SO
  Svc_mysql_3 198,51.100.7 MYSQL 3306 SO
  Svc_mysql_4 198,51.100.8 MYSQL 3306 SO
Équilibrage de charge des serveurs virtuels Lb_vsr_mysql_primary 198.51.100.201 MYSQL 3306 SO
  Lb_vsr_mysql_secondary 198.51.100.202 MYSQL 3306 SO
Serveur virtuel de commutation de contenu Cs_vsr_mysql_1 198.51.100.161 MYSQL 3306 SO
Stratégie de commutation de contenu Cs_select SO SO SO MYSQL.REQ.QUERY.COMMAND.contains("select")

Tableau 1. Noms et valeurs des entités et des stratégies

Pour configurer DataStream pour une configuration de base de données principale/secondaire à l’aide de l’interface de ligne de commande

À l’invite de commandes, tapez

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 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
<!--NeedCopy-->
Cas d’utilisation 1 : Configurer DataStream pour une architecture de base de données primaire/secondaire