sidetech

インフラエンジニアの寄り道メモ。

A10 かんたんSSLオフロード

簡単とか言っておきながら、知っていなければならない知識はある程度必要なのですが、A10のAXシリーズでもTHシリーズでもよいのですが、SSLオフロードが出来るんですよね。ってロードバランサーは当たり前の様にできますね。

SSLオフロードのメリットは、HTTPなWEBサーバーをHTTPS化しちゃえるというのが手っ取り早い説明なのですが、昨今HTTPSが当たり前になってきておりますが、これって実はサーバーに負荷掛かるんですよね。そういった部分の処理をロードバランサーに託してサーバーに楽させるのがもうひとつの狙いかなと思います。

ということで、今回想定しているのが以下のような環境です。
Th103001
本当はファイアウォールがいるのでこんなにシンプルではないのですが、ロードバランサー目線という事で。

ちなみに証明書関係はすでにインストールされている前提で話します。私は手っ取り早く、ワイルドカードの証明書を大半利用するようにしています。

Th103002
実際の設定後のモニター画面です。HTTPリダイレクトの設定については何かミスしているんでしょうね。機能はしているのですが、赤のダウン判定です(^^;
それはおいておいて、バーチャルサーバー的には443で受け付けていて、80ポートのサーバーが受けている状態と言うのがわかるかな・・・と。

Th103003
まずはHTTPサーバーの準備から。【コンフィグ>サービス>サーバー】にいって名前とIPを決めて、下段のポートという設定で、80を指定して「追加」とやって「OK」したらサーバーの準備は終わりです。名前・IP/ポートの3項目程度を入れればOKです。ここではサーバー名をABCと仮名しておきます。

Th103004
次は、【コンフィグ>サービス>サービスグループ】の設定ですね。私は「サービスグループ」に使っている名前と判るように、名前に「SG-LB」と入れています。CLIで見た時に混乱しにくくなりますよ。あとは、名前にサービスアプリケーションが何が主なのかを判るようにHTTPと名前に入れています。なので、「SG-LB-ABC-HTTP」みたいなつけ方ですね。

 

ここでは、下段の「サーバー」という項でサーバーをABCを選んでポートに80と入力して追加です。んでOKをすると。アルゴリズムは「RoundrobinかLeastConnnection」のどちらか選んでおけばいいでしょう。今回はサーバー1台だし。

Th103005
で、最後に「コンフィグ>サービス>バーチャルサーバー」を設定します。
ここでも、名前とIPとポートを設定するぐらいなのですが、名前は「VS-LB」を頭につけています。今回の例でいうとVS-LB-ABCていう感じですね。
ポートの追加を行うと・・・

Th103006
こんなんが出てきます。タイプはTCPからHTTPSにリストを選んで、そうするとHTTPS用のフォームに切り替わります。サービスグループには「SG-LB-ABC-HTTP」を選びます。
ソースNATを使う環境でしたら、ソースNATプールを選択して、クライアントSSLテンプレートにワイルドカードの証明書を選びます。ワイルドカードでなくてもABCサーバー用でもよいです。サーバーSSLテンプレートは必要ありません。そもそもサーバー側はHTTPなので。
あとは、パーシステンステンプレートで、ソースIPパーシスを今回選んでいますが、環境に合わせて。
これでOKすると出来上がりです。

事前の準備としては
SSL証明書を「SSL管理」に先に入れておく
・ソースNATの利用の有無 ソースNATプールの設定
・パーシステンスタイプの決定
・バーチャルサーバーIPの決定

で、登録の流れは
・サーバーの登録
・サービスグループの登録
・バーチャルサーバーの設定

CLIだともっと簡単に説明できるのですが、WEBだとこんな感じですかね。

おまけのHTTPリダイレクトですが、
Th103007
えっと、「コンフィグ>テンプレート>アプリケーション>HTTP」を選んでもらって、名前つけて(ここではABC-Redirectとします)、フェイルオーバーURLを入れて下準備は終わり。

Th103008
んで、「コンフィグ>サービス>バーチャルサーバー」でVS-LB-ABC-HTTPを選んでポートの「追加」をして、タイプをリストから「HTTP」を選んで、HTTPテンプレートに先ほど作ったABC-Redirectを選んでOKすると。んでリダイレクトの出来上がり。こまかい制御が必要だったりする場合はaFleXを活用しましょう。

[2017/08/04改変]

すいません、リダイレクトはaFleX使っています(汗)。

調子悪くてやめたんだった・・・(^^;;;

でもスクリプトは簡単です。

---

when HTTP_REQUEST {
HTTP::redirect https://[HTTP::host][HTTP::uri]
}

---

これをHTTP側の設定で「スクリプト(aFleX)」で選ぶだけでOKです。

 

なんか簡単なつもりで書いたんだけど、かんたんに見えないよね。(^^;

ただ、ロードバランサーは色々な使い方や使い道があるんで、ボチボチとご紹介していけたらいいなと思います。

サーバ負荷分散入門

サーバ負荷分散入門

 

しかしロードバランサーの情報って少ないですよねぇ・・・。(^^;