DRBD Proxyの使用

DRBD Proxy配備に関する検討事項

DRBD Proxyプロセスは、 DRBDが設定されているマシン上に直接配置するか、 個別の専用サーバに配置することができます。 DRBD Proxyインスタンスは、 複数のノードの複数のDRBDデバイスのプロキシとして機能することができます。

DRBD ProxyはDRBDに対して完全に透過的です。 通常は大量のデータパケットがやり取りされるため、 アクティビティログが適度に大きくなります。 大きなログが転送される場合、 プライマリノードのクラッシュ後の再同期に時間がかかります。 このため、DRBDのcsums-alg設定を有効にすることをお勧めします。

構成

DRBD ProxyはDRBDのメイン設定ファイルで設定します。 設定は、追加のオプションセクションproxyと ホストセクション内のproxy onセクションで行います。

DRBDノードで直接実行されるプロキシのDRBD構成の例を次に示します。

resource r0 {
        protocol c;
        device     minor 0;
        disk       /dev/sdb1;
        flexible-meta-disk  /dev/sdb2;

        proxy {
              compression on;
              memlimit 100M;
        }

        on alice {
                address 127.0.0.1:7789;
                proxy on alice {
                        inside 127.0.0.1:7788;
                        outside 192.168.23.1:7788;
                }
        }

        on bob {
                address 127.0.0.1:7789;
                proxy on bob {
                        inside 127.0.0.1:7788;
                        outside 192.168.23.2:7788;
                }
        }
}

inside IPアドレスはDRBDとDRBD Proxyとの通信に使用し、 outside IPアドレスはプロキシ間の通信に使用します。

DRBD Proxyの制御

drbdadmには proxy-upおよびproxy-downサブコマンドがあり、 名前付きDRBDリソースのローカルDRBD Proxyプロセスとの接続を設定したり 削除したりできます。 これらのコマンドは、/etc/init.d/drbdproxyが実装する startおよびstopアクションによって使用されます。

DRBD Proxyには、 drbd-proxy-ctlという下位レベル構成ツールがあります。 このツールをオプションを指定せずに呼び出した場合は、対話型モードで動作します。 helpコマンドで、使用可能なコマンドを表示できます。

Help for drbd-proxy.
--------------------

add connection <name> <ip-listen1>:<port> <ip-connect1>:<port>
   <ip-listen2>:<port> <ip-connect2>:<port>
   Creates a communication path between two DRBD instances.

set memlimit <name> <memlimit-in-bytes>
   Sets memlimit for connection <name>

del connection <name>
   Deletes communication path named name.

show
   Shows currently configured communication paths.

show memusage
   Shows memory usage of each connection.

list [h]subconnections
   Shows currently established individual connections
   together with some stats. With h outputs bytes in human
   readable format.

list [h]connections
   Shows currently configured connections and their states
   With h outputs bytes in human readable format.

list details
   Shows currently established individual connections with
   counters for each DRBD packet type.

quit
   Exits the client program (closes control connection).

shutdown
   Shuts down the drbd-proxy program. Attention: this
   unconditionally terminates any DRBD connections running.