Citrix ADC

Anwendungsfall 1: Konfigurieren von DataStream für eine primäre/sekundäre Datenbankarchitektur

Ein häufig verwendetes Bereitstellungsszenario ist die primäre/sekundäre Datenbankarchitektur, bei der die Primärdatenbank alle Informationen auf die sekundären Datenbanken

Bei der primären/sekundären Datenbankarchitektur möchten Sie möglicherweise, dass alle WRITE-Anforderungen an die Primärdatenbank und alle READ-Anforderungen an die sekundären Datenbanken gesendet werden.

Die folgende Abbildung zeigt die Entitäten und die Werte der Parameter, die Sie auf der Appliance konfigurieren müssen.

Abbildung 1. DataStream Entity Model für das primäre/sekundäre Datenbank-Setup

Einrichtung von primären/sekundären Datenbanken

In diesem Beispielszenario wird ein Dienst (svc_mysql_1) erstellt, der die Primärdatenbank darstellt, und ist an einen virtuellen Lastausgleichsserver (lb_vsr_mysql_Primary) gebunden. Drei weitere Dienste (svc_mysql_2, svc_mysql_3 und svc_mysql_4) werden erstellt, um die drei sekundären Datenbanken darzustellen, und sie sind an einen anderen virtuellen Lastausgleichsserver (LB_vsr_mysql_Secondary) gebunden.

Ein virtueller Content Switching-Server (cs_VSR_MySQL_1) ist mit zugehörigen Richtlinien konfiguriert, um alle WRITE-Anforderungen an den virtuellen Lastausgleichsserver lb_vsr_mysql_Primary zu senden. Alle READ-Anfragen werden an den virtuellen Lastausgleichsserver, LB_VSR_MySQL_Secondary, gesendet.

Wenn eine Anforderung den virtuellen Content Switching-Server erreicht, wendet der virtuelle Server die zugeordneten Content Switching-Richtlinien auf diese Anforderung an. Nach der Auswertung der Richtlinien leitet der virtuelle Content Switching-Server die Anforderung an den entsprechenden virtuellen Lastausgleichsserver weiter, der sie an den entsprechenden Dienst sendet.

In der folgenden Tabelle sind die Namen und Werte der Entitäten und die auf der Citrix ADC Appliance konfigurierte Richtlinie aufgeführt.

Entitätstyp Name IP-Adresse Protokoll Port Ausdruck
Services 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
Lastenausgleich virtueller Server Lb_vsr_mysql_primary 198.51.100.201 MYSQL 3306 NA
  Lb_vsr_mysql_secondary 198.51.100.202 MYSQL 3306 NA
Virtueller Content Switching-Server Cs_vsr_mysql_1 198.51.100.161 MYSQL 3306 NA
Content Switching-Richtlinie Cs_select NA NA NA MYSQL.REQ.QUERY.COMMAND.contains("select")

Tabelle 1. Entitäts- und Richtliniennamen und -werte

So konfigurieren Sie DataStream für ein primäre/sekundäre Datenbank-Setup mit der Befehlszeilenschnittstelle

Geben Sie an der Eingabeaufforderung

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
Anwendungsfall 1: Konfigurieren von DataStream für eine primäre/sekundäre Datenbankarchitektur