クラスタ・冗長化とは(全体像)
クラスタ・冗長化とは、複数のサーバーを連携させて、1台が止まってもサービスを続けられるようにしたり、処理を速くしたりする構成のことだ。
1台だけだと、それが止まればサービスも止まる。複数台を組み合わせれば、止まりにくく(可用性が上がる)、しかも処理も分け合えて速くなる(性能も上がる)。
ここで一番のポイント。クラスタは「負荷分散(速くする)」だけが目的ではない。止まりにくくする(可用性の向上)も、大きなねらいだ。「クラスタ=負荷分散だけ」と思い込むと誤りになる。
詳しく:2つのタイプとスケール
ここが心臓部。まず、クラスタの2つのタイプを表で押さえよう。
クラスタの2つのタイプ
| タイプ | やり方 |
|---|---|
| アクティブ-アクティブ | 全台が動いて、負荷を分け合う(性能も上がる) |
| アクティブ-スタンバイ | 普段は1台が動き、待機の予備が故障時に切り替わる |
- アクティブ-アクティブ … 全台が動いて、負荷を分け合う。みんなで働くので、性能も上がる。
- アクティブ-スタンバイ … 普段は1台(現用)が動き、もう1台は待機。現用が壊れたら、待機系に切り替える(フェイルオーバー)。
なお、アクセスを複数のサーバーに振り分ける装置をロードバランサ(LB)といい、クラスタとセットでよく使う。
そして、規模を大きくする方法(スケール)には2種類ある。水平スケール(台数を増やす)と、垂直スケール(1台の性能を上げる)だ。「水平と垂直は同じ」と思い込むと誤りになる。水平は台数、垂直は性能、と区別しよう。
わかりやすく言い換えると
身近なたとえで整理しよう。お店のレジで考えるとわかりやすい。
クラスタは、「レジを複数台用意して、混んでも回るようにすること」のイメージ。つまり、1台が止まっても、ほかでさばける。
2つのタイプは、「全レジを開けて客を分ける(アクティブ-アクティブ)」「普段は1台、予備を1台待機(アクティブ-スタンバイ)」のイメージ。要するに、全部動かすか、予備を控えさせるか、だ。
水平と垂直は、「レジの台数を増やす(水平)」「レジ1台を高性能にする(垂直)」のイメージ。つまり、増やすか、強くするか、だ。
試験のツボ
🔴 一番出る:クラスタの正体
①複数のサーバーを連携させ、止まりにくく・速くする構成
②負荷分散だけでなく、可用性の向上も目的
🔴 次に出る:2つのタイプ
①アクティブ-アクティブ=全台が動いて負荷を分ける
②アクティブ-スタンバイ=待機の予備が故障時に切り替わる
🟡 押さえると安定:スケールの種類
①水平スケール=台数を増やす
②垂直スケール=1台の性能を上げる
よくある間違い
①「クラスタの目的は、負荷分散(速くすること)だけだ」→ ✗ 負荷分散だけでなく、止まりにくくする(可用性の向上)も大きなねらい。
②「水平スケールと垂直スケールは、同じ意味だ」→ ✗ 水平スケールは台数を増やす、垂直スケールは1台の性能を上げる。
③「アクティブ-スタンバイは、全台がつねに動いている」→ ✗ 全台が動くのはアクティブ-アクティブ。スタンバイは予備を待機させる。
試験での出題パターン
実際の問題でたしかめてみよう。
オリジナル問題1(クラスタの正体)
クラスタ・冗長化に関する次の記述のうち、最も適切なものはどれか。
- 社員の出退勤を記録して、毎月の給与を計算するためのしくみである
- 取引先へ毎月の請求書を郵送する、決まった事務作業のことを指す
- 完成したシステムを宣伝して、より多く売るための広告活動である
- 複数のサーバーを連携させ、止まりにくく・速くしていく構成である
解答は 4 だ。
クラスタ・冗長化は、複数のサーバーを連携させ、止まりにくく・速くする構成である。可用性も性能も上げるのだ。
選択肢1は給与計算、選択肢2は請求書の事務、選択肢3は広告で、どれも違う。
| 選択肢 | 判定 | 理由 |
|---|---|---|
| 1 | ✗ | 給与計算のしくみではない |
| 2 | ✗ | 請求書の事務の話 |
| 3 | ✗ | 広告活動ではない |
| 4 | ✓ | 複数サーバーを連携させる構成で正しい |
オリジナル問題2(2つのタイプ)
クラスタのタイプに関する次の記述のうち、最も適切なものはどれか。
- アクティブ-アクティブは、普段は1台だけを動かし予備を待機させる
- アクティブ-アクティブは全台が動き、スタンバイは予備を待機させる
- アクティブもスタンバイも、社員の給与を計算するためのものである
- アクティブもスタンバイも、取引先へ請求書を郵送するものである
解答は 2 だ。
アクティブ-アクティブは全台が動き、スタンバイは予備を待機させる。全部動かすか、予備を控えさせるか、の違いなのだ。
選択肢1は説明が逆、選択肢3は給与計算、選択肢4は請求書の事務で誤りである。
| 選択肢 | 判定 | 理由 |
|---|---|---|
| 1 | ✗ | アクティブ-アクティブは全台稼働 |
| 2 | ✓ | 全台稼働と待機切替で正しい |
| 3 | ✗ | 給与計算のものではない |
| 4 | ✗ | 請求書の事務のものではない |
オリジナル問題3(スケールの種類)
水平スケールと垂直スケールの違いに関する次の記述のうち、最も適切なものはどれか。
- 水平スケールは台数を増やし、垂直スケールは1台の性能を上げる
- 水平スケールは1台の性能を上げ、垂直スケールは台数を増やす
- 水平も垂直も、社員の給与を計算する量だけを表すものである
- 水平も垂直も、取引先へ請求書を郵送する数だけを表すものである
解答は 1 だ。
水平スケールは台数を増やし、垂直スケールは1台の性能を上げる。増やすか、強くするか、の違いなのだ。
選択肢2は説明が逆、選択肢3は給与計算、選択肢4は請求書の事務で誤りである。
| 選択肢 | 判定 | 理由 |
|---|---|---|
| 1 | ✓ | 水平は台数・垂直は性能で正しい |
| 2 | ✗ | 水平と垂直の説明が逆 |
| 3 | ✗ | 給与計算の量ではない |
| 4 | ✗ | 請求書の数ではない |
まとめ
押さえどころ
- 🔴 クラスタ・冗長化 = 複数のサーバーを連携させ、止まりにくく・速くする構成。可用性も性能も上げる。
- 🔴 2つのタイプ = アクティブ-アクティブ(全台稼働)・アクティブ-スタンバイ(待機の予備が故障時に切替)。
- 🟡 スケールの種類 = 水平スケール(台数を増やす)・垂直スケール(1台の性能を上げる)。
次に学ぶ
- RAID ── ディスクの冗長化技術。クラスタはサーバーの冗長化として対になる。
- 可用性管理・MTBF/MTTR ── 止まりにくさを管理する活動。クラスタは可用性を高める手段。
執筆: SikakuQuest編集部