オリジナル問題 LinuCレベル3 プラットフォームスペシャリスト試験 問題 問6
高可用性プラットフォームの構築/Webサーバーによる負荷分散nginxのupstreamブロックにおけるip_hashディレクティブの役割として適切なものはどれか。
出典:オリジナル問題 LinuCレベル3 プラットフォームスペシャリスト試験 問題 問6
- AバックエンドサーバーのIPアドレスを自動的に書き換える
- Bすべてのリクエストを毎回ランダムなサーバーへ振り分ける
- Cアクセス元のIPアドレスに応じてアクセスを拒否する機能である
- DクライアントのIPアドレスにもとづいてハッシュ値を計算し、同じクライアントからのリクエストを毎回同じバックエンドサーバーへ振り分ける
正解:D
解説
nginxのip_hashディレクティブは、クライアントのIPアドレスをもとにハッシュ値を計算し、同じIPアドレスからのリクエストが毎回同じバックエンドサーバーへ振り分けられるようにする方式です。セッション情報をサーバー側でローカルに保持しているアプリケーションで、同一クライアントを常に同じサーバーへ届けたい場合(スティッキーセッション的な用途)に使われます。
選択肢ごとの解説
- A誤り。ip_hashはバックエンドサーバーのIPアドレスを書き換える機能ではありません。
- B誤り。毎回ランダムに振り分ける方式はip_hashの特徴ではありません(ip_hashは同じクライアントを同じサーバーへ固定します)。
- C誤り。ip_hashはアクセス拒否の機能ではなく、振り分け先を決定するロードバランシング方式です。
- D正しい。ip_hashはクライアントIPにもとづき、同じクライアントを毎回同じサーバーへ振り分けます。