高信頼性設計のポイント
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
単語検索
|
最終更新
|
ヘルプ
]
開始行:
「[[マイクロソフト系技術情報 Wiki>http://techinfoofmicros...
-[[戻る>設計のポイント]]
*目次 [#jec4f405]
#contents
*概要 [#g516fe00]
高可用性システムを構築する場合、システム設計者は
-「信頼性」
-「冗長性」
-「保守性」
という3つの重要な要素を理解し、それらに注意を払う必要があ...
信頼性とは
-狭義では、「信じて頼れる性質」ということで、簡単にいうと「...
-広義では、修理再使用を考え「故障した時の修復のしやすさ」で...
#ref(BroadSenseReliability.png,nowrap,「広義の信頼性」と...
-コンポーネント(ハードウェア・ソフトウェア)の「信頼性」...
⇒「可用性」が向上する。
-システムの「保守性」を向上させる~
⇒「信頼性」を補い「可用性」が向上する。
-システムや、コンポーネントを「冗長化」する~
⇒ 信頼性・保守性」を補い「可用性」が向上する。
**信頼性(Reliability) [#na9c038f]
システムの各コンポーネントの「信頼性」が高ければ高いほど...
-ここでいう「信頼性」とは、長期的な連続運転期間においてハ...
-しかし、一般的に、
--完全な「信頼性」の実現は不可能であり、
--また「信頼性」の高い、ハードウェア・ソフトウェアコンポ...
--このため、ほかの手段、すなわち「冗長性」と「保守性」に...
**保守性(Serviceability) [#w7cdb793]
-一般的に、完全な「信頼性」の実現は不可能であり、障害対応...
-また、条件の変化に応じてアプリケーションの使用期間中にシ...
***バックアップ・リストア [#cfe3dab4]
問題が発生した場合、システムの復旧を早めるため、管理者が...
また、保守ツールでの対応以外では、
-データをテープからリストアする。
-システムをゼロから構築し直す。
といった対応が、唯一の解決策の場合もある。
これらを迅速に行う手順が整備されていないと、基幹サービス...
***パッチの適用とロールバック [#y6057dae]
コンポーネントの使用期間中に、パッチの適用や、ドライバの...
その作業後、サーバの再起動が不要で、後で問題が発生しても...
***稼働中の監視 [#qa6ef8b1]
あるコンポーネントに障害が発生したり機能が低下したりした...
それがサポートするサービスの「可用性」に影響を及ぼさずに...
稼動監視により、「障害の検出」、「障害の前兆の検出による...
**冗長性(Redundancy) [#af93334c]
「冗長性」は前述の「信頼性」」・「保守性」を補い、~
高可用性を実現する上で重要な役割を果たす。
この「冗長性」は、
-ハードウェアの二重化から、
-サーバ・ファームといったハードウェア・ソフトウェア全体の...
さまざまなレベルで実現できる。
***ハードウェアの冗長性 [#g5f018ad]
-フォールト・トレラント(耐障害性)という用語は、冗長な「...
-例えばRAIDは、ストレージ・デバイスに障害が発生した場合で...
-また、保守の観点からは、「ローリングアップグレード」と「...
--参考
---ちょっと紛らわしい「ローリングアップグレード」と「ロー...
vNextに備えよ! 次期Windows Serverのココに注目(8) - @IT~
http://www.atmarkit.co.jp/ait/articles/1502/24/news032.html
***ソフトウェアの冗長性 [#xfc249d2]
-1つのハードウェアないしOS、ソフトウェアの障害がシステム...
-しかし、アプリケーション・サービスは、コードに欠陥を持つ...
-このため、ソフトウェアの「冗長性」はクラスタ、サーバ・フ...
*冗長性の追加 [#af1ff47a]
実現可能な「冗長性」の追加(冗長化・冗長構成)について説...
アプリケーションやOSで高可用性を実現するに当たり、システ...
以下の4種類の異なるアプローチを用いて「冗長性」を追加でき...
-[[分散サービス>#maeb6e5f]]~
--プライマリ・ノード、セカンダリ・ノードの両方のサービス...
--各ノードに更新があった場合、必要なデータは、他のノード...
-[[フォールト・トレラント・サーバ(FTサーバ)>#y3079c3f]]~
サーバ内部の「CPUとメモリ」、「I/O」を冗長化し、ハードウ...
-[[サーバ・ファーム>#s937fd17]]~
複数の物理サーバ(サーバ・ファーム)に、共通の仮想IPアド...
-[[クラスタ・サービス>#l0ff84b6]]
--複数の物理サーバ(サーバ・ファーム)に、共通の仮想IPア...
SAN上の「共有ディスク(クォーラム・ボリューム)」・「共有...
ステータス情報、アプリケーションデータをネットワーク経由...
--「アクティブ-パッシブ」の構成~
フェイル・オーバーが発生しない限り、同じアプリケーション...
「アクティブ」な「物理サーバ」は1台だけであり、他のサー...
--「アクティブ-アクティブ」の構成~
同じアプリケーションの他のインスタンスや、別のアプリケー...
**分散サービス [#maeb6e5f]
分散サービスでは、システム・サービスや他のアプリケーショ...
分散サービスの例としては、
-Active Directory(AD)
-[[ドメイン・ネーム・サービス(DNS)>DNSサーバ]]
-Windows分散ファイル・システム(DFS)と~
ファイル・レプリケーション・サービス(FRS)の組み合わせ。
などがある。
以下の図に、ADのサイト上にあるドメイン・コントローラ(DC...
#ref(ActiveDirectoryReplication.png,nowrap,Active Directo...
また、DNSでは「ゾーン転送」と言うレプリケーション機能を持...
この分散方式は共有データのアップデート頻度が比較的低い場...
サーバが帯域幅の限られたWANで接続されたサイトにある場合で...
1つのDCが故障した場合も、「冗長性」によるフォールト・ト...
**フォールト・トレラント・サーバ(FTサーバ) [#y3079c3f]
フォールト・トレラント・サーバ(FTサーバ)は「CPUとメモリ...
相互に同期しながら並行して同じ処理を実行することで、ハー...
ハードウェア障害が発生しても無停止で稼働し続ける高信頼性...
-FTサーバはその上で稼働するアプリケーションから単一のサー...
-また、ハードウェアやOSに問題を検出すると、フェイル・オー...
-ハードウェアやOSの観点からすると、FTサーバは最高水準の「...
通常はその上で稼働するアプリケーションを停止せずにアップ...
#ref(FTServer.png,nowrap,フォールト・トレラント・サーバ(...
FTサーバは、ハードウェアの冗長化を提供し、アプリケーショ...
**クラスタ [#t09e8fc8]
***サーバ・ファーム [#s937fd17]
複数のサーバで同じアプリケーションのコピーを稼働させる方...
-[[DNSサーバ]]とハードウェア・ソフトウェア負荷分散デバイ...
-サーバ・ファームの主要目的は、「負荷分散・拡張性」の提供...
--しかし、負荷分散システムがアプリケーションやOSのインス...
負荷分散システムがリクエストをファーム内のほかの正常なサ...
-ファーム方式
--[[サーバ・ステートレス>#z4bee2a3]]~
各クライアントからの接続が比較的短時間で、サーバが「状態...
トランザクショナル・データ(購入に関連するデータなど)の...
--[[サーバ・ステートフル>#l0ff84b6]]~
サーバ・ステートフルなアプリケーションであっても、状態を...
ファーム上のアプリケーションに障害が発生した場合、ユーザ...
#ref(MethodToAchieveServerFarm.png,nowrap,サーバ・ファー...
***負荷分散クラスタ(サーバ・ステートレス) [#z4bee2a3]
-[[NLB>http://techinfoofmicrosofttech.osscons.jp/index.ph...
***クラスタ・サービス(サーバ・ステートフル) [#l0ff84b6]
-[[MSCS WSFC>http://techinfoofmicrosofttech.osscons.jp/in...
**クラスタ纏め表 [#m3020f28]
|#|比較項目|[[NLB>http://techinfoofmicrosofttech.osscons....
|1|アプリケーション|TCP ベースや UDP ベースのサーバ・アプ...
|2|前提ハードウェア|MAC書き換え可能なNICのみ。&br;チーム...
|3|適用対象サーバ|・Webサーバ&br;・ISAサーバ&br;・仮想プ...
|4|ステートフルかステートレス|ステートレス|ステートフル|
*構成例 [#sb35ba1c]
**3層アプリケーションの高可用性アーキテクチャ [#q5c2ffc2]
-フロントエンドのサーバ・ファームがビジネス・ロジックを処...
-一方、バックエンドのクラスタ・サービスはSQL Server上のデ...
-各層には異なる高可用性テクノロジが適している。
#ref(Three-tierHASystem.png,nowrap,3層以上のビジネス・ア...
***クライアント [#x1c5f185]
-クライアント・リクエストは、NLB(あるいは負荷分散ハード...
-Webブラウザ
--Webブラウザはステートレスであり、各トランザクションは異...
-スマート・クライアント
--Webサービスを使用する3層スマート・クライアント・アプリ...
--ただしアプリケーションが状態情報を中間層サーバに格納せ...
***フロントエンド・サーバ(P・B層) [#v5a149d1]
-フロントエンド・サーバもサーバ・ステートレスで、データ層...
-フロントエンド・サーバに障害が発生した場合やメンテナンス...
***バックエンド・サーバ(D層) [#g963ea4f]
-[[MSCSだけでなくFTサーバ上にホストすることも可能である>#...
-障害が発生した場合やメンテナンスのためにサービスを中断す...
**FTサーバとMSCS [#hfac25e4]
-複数のFTサーバを組み合わせてクラスタ化することで、
--より「信頼性」の高い高可用性システムをを構築することが...
--ハードウェアまたはソフトウェアのどちらに問題が発生した...
#ref(FTServerAndMSCS.png,nowrap,FTサーバとMSCS)
***FTサーバ [#n05cf5b9]
-1台のサーバ内でハードウェアを多重化しているのに対し、MSC...
-ハードウェア障害発生時にそのまま処理を継続できるが、ソフ...
***MSCS [#waa82ec5]
フェイル・オーバー時にサービスが一時中断するが、ソフトウ...
*その他 [#vf2d309c]
**用語 [#pf63c887]
***フォールト・トレランス [#w2551bf0]
-飛行機のエンジン : 2機以上のエンジン
-自動車のタイヤ : ランフラットタイヤ
など。
ITで言うところの、
-CPUとメモリ
--メモリ・ミラーリング
-ネットワーク・ポート
--LBFO(Load Balancing and Fail Over)
-ディスク
--マルチパスI/O
--RAID1(ミラーリング)
--RAID5(パリティ)
--,etc.
***フェイル・オーバー [#z0d3efec]
フェイルオーバーは
-システムを冗長化する技術の1つであり、
-フォールト・トレランスを実現するための技術の1つ。
***フェイル・セーフ [#cc70657b]
障害が発生した場合に、二次被害を防止する観点から、~
「いかに”安全に”停止させるか」を目的とした設計のこと。
***フェイル・ソフト [#f48c0622]
機能低下を許しても、システムを完全には停止させずに~
機能を維持した状態で処理を続行(縮退運転)する設計のこと。
**参考 [#zd234574]
-フォールトトレランス(Fault Tolerance) | BCM Navi 用語集~
http://www.newton-consulting.co.jp/bcmnavi/glossary/fault...
-フェイルセーフなどのフェイル○○系の単語 - Open MagicVox.n...
http://www.magicvox.net/archive/2010/11242049/
-フォールトトレラント設計 - Wikipedia~
https://ja.wikipedia.org/wiki/%E3%83%95%E3%82%A9%E3%83%BC...
----
Tags: [[:設計のポイント]], [[:信頼性]]
終了行:
「[[マイクロソフト系技術情報 Wiki>http://techinfoofmicros...
-[[戻る>設計のポイント]]
*目次 [#jec4f405]
#contents
*概要 [#g516fe00]
高可用性システムを構築する場合、システム設計者は
-「信頼性」
-「冗長性」
-「保守性」
という3つの重要な要素を理解し、それらに注意を払う必要があ...
信頼性とは
-狭義では、「信じて頼れる性質」ということで、簡単にいうと「...
-広義では、修理再使用を考え「故障した時の修復のしやすさ」で...
#ref(BroadSenseReliability.png,nowrap,「広義の信頼性」と...
-コンポーネント(ハードウェア・ソフトウェア)の「信頼性」...
⇒「可用性」が向上する。
-システムの「保守性」を向上させる~
⇒「信頼性」を補い「可用性」が向上する。
-システムや、コンポーネントを「冗長化」する~
⇒ 信頼性・保守性」を補い「可用性」が向上する。
**信頼性(Reliability) [#na9c038f]
システムの各コンポーネントの「信頼性」が高ければ高いほど...
-ここでいう「信頼性」とは、長期的な連続運転期間においてハ...
-しかし、一般的に、
--完全な「信頼性」の実現は不可能であり、
--また「信頼性」の高い、ハードウェア・ソフトウェアコンポ...
--このため、ほかの手段、すなわち「冗長性」と「保守性」に...
**保守性(Serviceability) [#w7cdb793]
-一般的に、完全な「信頼性」の実現は不可能であり、障害対応...
-また、条件の変化に応じてアプリケーションの使用期間中にシ...
***バックアップ・リストア [#cfe3dab4]
問題が発生した場合、システムの復旧を早めるため、管理者が...
また、保守ツールでの対応以外では、
-データをテープからリストアする。
-システムをゼロから構築し直す。
といった対応が、唯一の解決策の場合もある。
これらを迅速に行う手順が整備されていないと、基幹サービス...
***パッチの適用とロールバック [#y6057dae]
コンポーネントの使用期間中に、パッチの適用や、ドライバの...
その作業後、サーバの再起動が不要で、後で問題が発生しても...
***稼働中の監視 [#qa6ef8b1]
あるコンポーネントに障害が発生したり機能が低下したりした...
それがサポートするサービスの「可用性」に影響を及ぼさずに...
稼動監視により、「障害の検出」、「障害の前兆の検出による...
**冗長性(Redundancy) [#af93334c]
「冗長性」は前述の「信頼性」」・「保守性」を補い、~
高可用性を実現する上で重要な役割を果たす。
この「冗長性」は、
-ハードウェアの二重化から、
-サーバ・ファームといったハードウェア・ソフトウェア全体の...
さまざまなレベルで実現できる。
***ハードウェアの冗長性 [#g5f018ad]
-フォールト・トレラント(耐障害性)という用語は、冗長な「...
-例えばRAIDは、ストレージ・デバイスに障害が発生した場合で...
-また、保守の観点からは、「ローリングアップグレード」と「...
--参考
---ちょっと紛らわしい「ローリングアップグレード」と「ロー...
vNextに備えよ! 次期Windows Serverのココに注目(8) - @IT~
http://www.atmarkit.co.jp/ait/articles/1502/24/news032.html
***ソフトウェアの冗長性 [#xfc249d2]
-1つのハードウェアないしOS、ソフトウェアの障害がシステム...
-しかし、アプリケーション・サービスは、コードに欠陥を持つ...
-このため、ソフトウェアの「冗長性」はクラスタ、サーバ・フ...
*冗長性の追加 [#af1ff47a]
実現可能な「冗長性」の追加(冗長化・冗長構成)について説...
アプリケーションやOSで高可用性を実現するに当たり、システ...
以下の4種類の異なるアプローチを用いて「冗長性」を追加でき...
-[[分散サービス>#maeb6e5f]]~
--プライマリ・ノード、セカンダリ・ノードの両方のサービス...
--各ノードに更新があった場合、必要なデータは、他のノード...
-[[フォールト・トレラント・サーバ(FTサーバ)>#y3079c3f]]~
サーバ内部の「CPUとメモリ」、「I/O」を冗長化し、ハードウ...
-[[サーバ・ファーム>#s937fd17]]~
複数の物理サーバ(サーバ・ファーム)に、共通の仮想IPアド...
-[[クラスタ・サービス>#l0ff84b6]]
--複数の物理サーバ(サーバ・ファーム)に、共通の仮想IPア...
SAN上の「共有ディスク(クォーラム・ボリューム)」・「共有...
ステータス情報、アプリケーションデータをネットワーク経由...
--「アクティブ-パッシブ」の構成~
フェイル・オーバーが発生しない限り、同じアプリケーション...
「アクティブ」な「物理サーバ」は1台だけであり、他のサー...
--「アクティブ-アクティブ」の構成~
同じアプリケーションの他のインスタンスや、別のアプリケー...
**分散サービス [#maeb6e5f]
分散サービスでは、システム・サービスや他のアプリケーショ...
分散サービスの例としては、
-Active Directory(AD)
-[[ドメイン・ネーム・サービス(DNS)>DNSサーバ]]
-Windows分散ファイル・システム(DFS)と~
ファイル・レプリケーション・サービス(FRS)の組み合わせ。
などがある。
以下の図に、ADのサイト上にあるドメイン・コントローラ(DC...
#ref(ActiveDirectoryReplication.png,nowrap,Active Directo...
また、DNSでは「ゾーン転送」と言うレプリケーション機能を持...
この分散方式は共有データのアップデート頻度が比較的低い場...
サーバが帯域幅の限られたWANで接続されたサイトにある場合で...
1つのDCが故障した場合も、「冗長性」によるフォールト・ト...
**フォールト・トレラント・サーバ(FTサーバ) [#y3079c3f]
フォールト・トレラント・サーバ(FTサーバ)は「CPUとメモリ...
相互に同期しながら並行して同じ処理を実行することで、ハー...
ハードウェア障害が発生しても無停止で稼働し続ける高信頼性...
-FTサーバはその上で稼働するアプリケーションから単一のサー...
-また、ハードウェアやOSに問題を検出すると、フェイル・オー...
-ハードウェアやOSの観点からすると、FTサーバは最高水準の「...
通常はその上で稼働するアプリケーションを停止せずにアップ...
#ref(FTServer.png,nowrap,フォールト・トレラント・サーバ(...
FTサーバは、ハードウェアの冗長化を提供し、アプリケーショ...
**クラスタ [#t09e8fc8]
***サーバ・ファーム [#s937fd17]
複数のサーバで同じアプリケーションのコピーを稼働させる方...
-[[DNSサーバ]]とハードウェア・ソフトウェア負荷分散デバイ...
-サーバ・ファームの主要目的は、「負荷分散・拡張性」の提供...
--しかし、負荷分散システムがアプリケーションやOSのインス...
負荷分散システムがリクエストをファーム内のほかの正常なサ...
-ファーム方式
--[[サーバ・ステートレス>#z4bee2a3]]~
各クライアントからの接続が比較的短時間で、サーバが「状態...
トランザクショナル・データ(購入に関連するデータなど)の...
--[[サーバ・ステートフル>#l0ff84b6]]~
サーバ・ステートフルなアプリケーションであっても、状態を...
ファーム上のアプリケーションに障害が発生した場合、ユーザ...
#ref(MethodToAchieveServerFarm.png,nowrap,サーバ・ファー...
***負荷分散クラスタ(サーバ・ステートレス) [#z4bee2a3]
-[[NLB>http://techinfoofmicrosofttech.osscons.jp/index.ph...
***クラスタ・サービス(サーバ・ステートフル) [#l0ff84b6]
-[[MSCS WSFC>http://techinfoofmicrosofttech.osscons.jp/in...
**クラスタ纏め表 [#m3020f28]
|#|比較項目|[[NLB>http://techinfoofmicrosofttech.osscons....
|1|アプリケーション|TCP ベースや UDP ベースのサーバ・アプ...
|2|前提ハードウェア|MAC書き換え可能なNICのみ。&br;チーム...
|3|適用対象サーバ|・Webサーバ&br;・ISAサーバ&br;・仮想プ...
|4|ステートフルかステートレス|ステートレス|ステートフル|
*構成例 [#sb35ba1c]
**3層アプリケーションの高可用性アーキテクチャ [#q5c2ffc2]
-フロントエンドのサーバ・ファームがビジネス・ロジックを処...
-一方、バックエンドのクラスタ・サービスはSQL Server上のデ...
-各層には異なる高可用性テクノロジが適している。
#ref(Three-tierHASystem.png,nowrap,3層以上のビジネス・ア...
***クライアント [#x1c5f185]
-クライアント・リクエストは、NLB(あるいは負荷分散ハード...
-Webブラウザ
--Webブラウザはステートレスであり、各トランザクションは異...
-スマート・クライアント
--Webサービスを使用する3層スマート・クライアント・アプリ...
--ただしアプリケーションが状態情報を中間層サーバに格納せ...
***フロントエンド・サーバ(P・B層) [#v5a149d1]
-フロントエンド・サーバもサーバ・ステートレスで、データ層...
-フロントエンド・サーバに障害が発生した場合やメンテナンス...
***バックエンド・サーバ(D層) [#g963ea4f]
-[[MSCSだけでなくFTサーバ上にホストすることも可能である>#...
-障害が発生した場合やメンテナンスのためにサービスを中断す...
**FTサーバとMSCS [#hfac25e4]
-複数のFTサーバを組み合わせてクラスタ化することで、
--より「信頼性」の高い高可用性システムをを構築することが...
--ハードウェアまたはソフトウェアのどちらに問題が発生した...
#ref(FTServerAndMSCS.png,nowrap,FTサーバとMSCS)
***FTサーバ [#n05cf5b9]
-1台のサーバ内でハードウェアを多重化しているのに対し、MSC...
-ハードウェア障害発生時にそのまま処理を継続できるが、ソフ...
***MSCS [#waa82ec5]
フェイル・オーバー時にサービスが一時中断するが、ソフトウ...
*その他 [#vf2d309c]
**用語 [#pf63c887]
***フォールト・トレランス [#w2551bf0]
-飛行機のエンジン : 2機以上のエンジン
-自動車のタイヤ : ランフラットタイヤ
など。
ITで言うところの、
-CPUとメモリ
--メモリ・ミラーリング
-ネットワーク・ポート
--LBFO(Load Balancing and Fail Over)
-ディスク
--マルチパスI/O
--RAID1(ミラーリング)
--RAID5(パリティ)
--,etc.
***フェイル・オーバー [#z0d3efec]
フェイルオーバーは
-システムを冗長化する技術の1つであり、
-フォールト・トレランスを実現するための技術の1つ。
***フェイル・セーフ [#cc70657b]
障害が発生した場合に、二次被害を防止する観点から、~
「いかに”安全に”停止させるか」を目的とした設計のこと。
***フェイル・ソフト [#f48c0622]
機能低下を許しても、システムを完全には停止させずに~
機能を維持した状態で処理を続行(縮退運転)する設計のこと。
**参考 [#zd234574]
-フォールトトレランス(Fault Tolerance) | BCM Navi 用語集~
http://www.newton-consulting.co.jp/bcmnavi/glossary/fault...
-フェイルセーフなどのフェイル○○系の単語 - Open MagicVox.n...
http://www.magicvox.net/archive/2010/11242049/
-フォールトトレラント設計 - Wikipedia~
https://ja.wikipedia.org/wiki/%E3%83%95%E3%82%A9%E3%83%BC...
----
Tags: [[:設計のポイント]], [[:信頼性]]
ページ名: