システム構成<前編>
1.クライアントサーバシステム
クライアントサーバシステムとは,システムをクライアントとサーバに役割を分割することです.
飲食店でいうとホールとキッチンみたいなかんじです.
ユーザに操作されるクライアントは色々な要求をサーバに投げます.クライアントの代わりに処理をしたり情報を渡したりするのがサーバの役目です.
ホールが注文を取ってきて,キッチンが料理を作ってホールに渡すという飲食店のシステムと同じです.
(a)2層クライアントサーバシステム
上で説明したように,クライアント(プレゼンテーション層)とサーバ(データ層)に分けるシステム形態のこと.
(b)3層クライアントサーバシステム
2層よりももう1層細かく分割します.
サーバ側にファンクション層という,データ加工などの処理をする層を追加します.
イメージでは,クライアントとサーバの3つにシステムを分割するかんじです.
2層では1つのサーバがデータの受け渡しとデータ処理の両方を行っていたのに対して,3層ではその2つの仕事を2つのサーバで役割分担するんです.
2.システムの構成方式
機器やシステムに冗長性を持たせることで,システム全体の信頼性を向上させる手法をここでは4つ紹介します.
(a)デュアルシステム
dual:二つの,二重の
全く同じ2系統のシステムをどちらも稼働させ,同じデータを処理して結果を互いに照合させます.
片方がトラブルとかで停止したら,もう片方のみで稼働させ,復帰したらもう一度両システムを稼働させます.
(b)デュプレックスシステム
duplex:二重の
同じ系統のシステムを2台用意し,普段は片方を稼働させ,もう片方は待機させておく方式.
本番系のコンピュータに障害が発生したら,予備系にディスクやネットワークを切り替えて運転を継続します.
デュプレックスシステムの中にもホットスタンバイやウォームスタンバイ,コールドスタンバイがあります.
簡単にいうと,予備系システムが待機しているときにどれぐらい準備ができているかです.
・ホットスタンバイ
予備系にはいつでも切り替えられます.
本番系のOSやアプリケーションなどをあらかじめ起動させておきます.
本番系に障害が起きたときに予備系に切り替えることをフェールオーバ,本番系が障害から復帰し元の運用形態に戻すことをフェールバックといいます.
障害時の切り替えは最速であるという反面,常に予備系を稼働させているのでコストが高いです.
・ウォームスタンバイ
予備系を「ある程度」起動させておき,本番系の障害発生時に予備系に切り替えます.
(ある程度ってなに...)
と初めは思いましたが,どうやらソフトウェアなどによって予備系の起動の仕方は異なるらしい.
・コールドスタンバイ
予備系は普段は停止しています.
もっというと,予備系は全く稼働していなかったり,稼働はしているが本番系とは関係ない処理をしている,などの状況があります.
本番系とは完全に独立しているので設計や運用などはシンプルですが,本番系の障害時には切り替えに時間がかかったり,本番系の処理を引き継げないことも多いというデメリットがあります.
(c)ロードシェアシステム
複数の系で一連の処理を行い,負荷を分散させる手法.
一連の処理が停止する可能性は低いですが,障害時には一部の系に負荷が偏るという特徴があります.
(d)クラスタリング
cluster:(ぶどうとかの)ふさ,群れ
クラスタ構成とは,複数のコンピュータがネットワークで接続されており,全体で一つのコンピュータのように振る舞うことです.
・HAクラスタ(High Availability クラスタ)
可用性向上を目的としたクラスタ構成.
ホットスタンバイによる構成と,複数台のコンピュータにより並列処理を行う負荷分散クラスタがあります.
負荷分散クラスタでは,障害が起きたコンピュータは見捨てて他のコンピュータで処理を続けます.
・HPCクラスタ(High Performance Computing クラスタ)
性能向上を目的としたクラスタ構成.
数千ものコンピュータに複雑な計算などを分散させて,スーパーコンピュータのような能力を実現させることが可能です.
まだ続きはあるのですが,長くなりそうなので次の記事に続きます....
参考:アイテックIT人材教育研究部(2020)「2021応用情報・高度共通 午前試験対策書」