Citrix ADC

使用事例 1: プライマリ/セカンダリデータベースアーキテクチャのDataStreamを構成します

一般的に使用される展開シナリオは、 primary/secondary プライマリデータベースがすべての情報をセカンダリデータベースに複製するデータベースアーキテクチャ。

ために primary/secondary データベースアーキテクチャでは、すべてのWRITE要求をプライマリデータベースに送信し、すべてのREAD要求をセカンダリデータベースに送信することができます。

次の図は、アプライアンスで設定する必要のあるパラメーターのエンティティと値を示しています。

図1:プライマリ/セカンダリデータベースセットアップのためのDataStreamエンティティモデル

Primary/secondary データベースのセットアップ

このシナリオ例では、サービス (Svc_mysql_1) プライマリデータベースを表すために作成され、負荷分散仮想サーバーにバインドされます (Lb_vsr_mysql_primary). さらに3つのサービス (Svc_mysql_2, Svc_mysql_3, そして Svc_mysql_4) 3つのセカンダリデータベースを表すために作成され、別の負荷分散仮想サーバーにバインドされます (Lb_vsr_mysql_secondary).

コンテンツスイッチング仮想サーバー (Cs_vsr_mysql_1) は、すべてのWRITE要求を負荷分散仮想サーバーに送信するように関連付けられたポリシーで構成されています。 Lb_vsr_mysql_primary. すべてのREAD要求は、負荷分散仮想サーバー Lb_vsr_mysql_secondaryに送信されます。

要求がコンテンツスイッチ仮想サーバーに到達すると、仮想サーバーはその要求に対して関連するコンテンツスイッチポリシーを適用します。ポリシーを評価した後、コンテンツスイッチ仮想サーバーは要求を適切な負荷分散仮想サーバーにルーティングし、適切なサービスに送信します。

次の表に、Citrix ADCアプライアンス上で構成されているエンティティの名前と値、およびポリシーのリストを示します。

エンティティの種類 名前 IPアドレス プロトコル ポート
サービス Svc_mysql_1 198.51.100.5 MYSQL 3306 -
  Svc_mysql_2 198.51.100.6 MYSQL 3306 -
  Svc_mysql_3 198.51.100.7 MYSQL 3306 -
  Svc_mysql_4 198.51.100.8 MYSQL 3306 -
仮想サーバの負荷分散 Lb_vsr_mysql_primary 198.51.100.201 MYSQL 3306 -
  Lb_vsr_mysql_secondary 198.51.100.202 MYSQL 3306 -
コンテンツスイッチ仮想サーバー Cs_vsr_mysql_1 198.51.100.161 MYSQL 3306 -
コンテンツスイッチングポリシー Cs_select - - - MYSQL.REQ.QUERY.COMMAND.contains("select")

表1. エンティティとポリシーの名前と値

コマンドラインインターフェイスを使用してプライマリ/セカンダリデータベースのセットアップのDataStreamを構成するには

コマンドプロンプトで、次のように入力します。

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
使用事例 1: プライマリ/セカンダリデータベースアーキテクチャのDataStreamを構成します