LinuCレベル4 システムアーキテクト 可用性の設計 問24
可用性の設計/負荷分散と障害の局所化動画配信サービスのL4ロードバランサーを設計している。クライアントの接続時間は長く、動画の解像度によって各接続の帯域使用量が大きく異なる(SD画質:数Mbps、4K画質:数十Mbps)。バックエンドサーバーの負荷を均等にするためのスケジューリングアルゴリズムとして最も適切なものはどれか。
当サイトのオリジナル問題(LinuCレベル4 システムアーキテクトの出題範囲「可用性の設計」に対応。実際の試験問題ではありません)
- Aラウンドロビン: 新規接続を各バックエンドへ順番に割り当てる。接続時間が長いため接続数はある程度均等になるが、高解像度が特定のサーバーに偏ると負荷の不均衡が生じやすい
- BソースIPハッシュ: クライアントのIPアドレスで振り分け先を固定する。同じクライアントを同じサーバーへ誘導できるが、高帯域の視聴者が偏った場合の負荷分散は期待できない
- C最小通信量: 現時点で帯域使用量が最も小さいバックエンドを選ぶ。接続ごとの帯域差が大きい本構成では、接続数より帯域使用量がサーバー負荷の実態をより正確に反映する
- D最小接続: 現時点で接続数が最も少ないバックエンドを選ぶ。接続数が均等になるが、解像度差による帯域の違いをサーバー負荷として考慮しない
正解:C
解説
ロードバランサーの接続スケジューリングは、バックエンドサーバーの実際の負荷状況を指標として選びます。ラウンドロビンや最小接続は接続数を基準にするため、各接続の帯域使用量に大きな差がある動画配信には合いません。たとえば4K接続1本は同じサーバーのSD接続10本に相当する帯域を使う場合があり、接続数が少なくても帯域は逼迫しています。最小通信量(Least Bandwidth)スケジューリングは現在の帯域使用量を基準に振り分けるため、このシナリオではサーバーの実負荷を反映した均等分散が期待できます。
選択肢ごとの解説
- A誤り。ラウンドロビンは接続数の均等化を目指しますが、接続ごとの帯域差が大きい構成では帯域を基準とした均等化はできません。
- B誤り。ソースIPハッシュは固定振り分けのため負荷分散の均等化には不向きで、高帯域視聴者の偏りを解消できません。
- C正しい。最小通信量スケジューリングは現在の帯域使用量が最も小さいサーバーを選ぶため、帯域差が大きい動画配信に適しています。
- D誤り。最小接続は接続数を指標にするため、帯域差の大きい構成では実際のサーバー負荷を反映した分散になりません。