BIG-IP の Persistence について

F5 社のロードバランサーである BIG-IP の Persistence(パーシステンス)について紹介します。

Persistence とは

ロードバランサーにおいて、同一のユーザーからのリクエストを、同じサーバーに振り分けるセッション維持機能です。
EC サイト[1]Amazon、Yahoo!ショッピング等、Eコマースを提供するサービスの Web システムにおいては、クライアントからの通信を同一のサーバーに転送する必要があり、このセッションを維持する機能は必須となっています。

BIG-IP の Persistence

  • BIG-IP では、cookie、dest_addr、hash、source_addr 等に基づき維持します。
  • セッションを維持する(timeout)時間は、デフォルトで180秒です。
    • timeout した場合は、負荷分散アルゴリズムにより分散されます。
  • Persistence は Virtual Server ごとに設定可能です。

BIG-IP の Persistence 設定例

設定例

GUI の管理コンソールにアクセスして、「Local Traffic」>「Profiles : Persistence」から設定します。

Persistence(セッション維持)するパラメータとして、上述のとおり cookie, dest_addr, hash, source_addr があり、それぞれ Persistence プロファイルが用意されています。
例)source_addr の Persistence のプロファイル

「Virtual Server」>「Resoures」から、適用する Persistence を選択します。

確認方法

GUI の管理コンソールの「Overview」>「Statistics : Local Traffic」から「Persistence」を選択します。

CLI(tmsh)では、show ltm persistence persist-records で Persistence(セッション維持)の状況を確認できます。

root@bigip01(Active)(tmos)# show ltm persistence persist-records virtual vs_http
Sys::Persistent Connections
source-address  10.0.0.100:0  172.16.0.101:80  0
Total records returned: 1

Persistence クリア方法

delete ltm persistence persist-records コマンドにより、Persistence 情報をクリアすることが可能です。

(tmos)# delete ltm persistence persist-records virtual vs_http

以上

脚注

脚注
1Amazon、Yahoo!ショッピング等、Eコマースを提供するサービスの Web システム