本記事は、Trustworthy Computing のブログ “ Cloud services: building resiliency and business continuity ” (2013 年 1 月 17 日公開) を翻訳した記事です。
デビッド・ビルズ 、信頼できるコンピューティング、信頼性主任ストラテジスト
クラウド コンピューティングが複雑なものである以上、私たちクラウド サービス プロバイダーは、不具合は起こるもので、生じるかどうかという問題ではなく、いつ生じるかという問題であることを肝に銘じておく必要があります。 クラウド プロバイダーは、サービスの信頼性が最大になり、不具合が生じたときのお客様への影響が最小になる方法で、サービスを設計および構築する必要があります。 このアプローチの主要な面は、事業継続性、つまり惨事が発生しても基幹のビジネス機能が継続して可用であることを保証することです。 私はこの点について、『Disaster Recovery Journal』という事業継続計画に関する学術誌の冬季号でインタビューを受けました。
信頼性について、私はすべてのサービス プロバイダーが目指す成果であると考えています。 サービスは設計したとおりに機能し、必要なときに予想どおりの対応をするものです。 信頼性を向上させる 1 つの方法は、耐性の高いサービス、つまり、一定のタイプの障害に耐えながら、顧客の立場から見れば完全に機能し続ける能力を備えたサービスを構築することです。
伝統的にこの業界全体では、耐性をハードウェアのレベル (RAID、デバイスの冗長ペア、複数のパスなど) で実装することに焦点を当ててきました。 ハードウェア メーカーが製造するデバイスの長期的な信頼性という点で、私たちもその充実した機能のメリットを享受してきました。 しかし、ハードウェアのレベルで設計され実装される耐性に頼ってばかりはいられないと考えています。 ソフトウェアも信頼性の重要な役割を担います。 信頼性の高いクラウドベースのサービスとなるのは、インテリジェントなインフラストラクチャの設計と、同様にインテリジェントなソフトウェアの設計が二人三脚で提供される場合です。
信頼性の高いサービスの設計および構築には、さまざまな問題が伴います。 前述のとおり、クラウド サービスは複雑です。 設計者が直面する最大の難点の 1 つが、インターネット規模で運用するクラウドベースのサービスの実稼働コンピューティング環境に潜在的な予測不能性があることです。 クラウド プロバイダーが共有型インフラストラクチャを幅広く使用し、サード パーティが提供する機能への依存を高めれば、各自のクラウド サービスのあらゆる面を直接的に制御することが困難になります。 設計者は、この点を踏まえて、自らが構築するクラウドベース サービスが、こうしたレベルの潜在的な予測不能性にどのように対処するかを考える必要があります。
重要な点は、クラウド サービスの複数のレベルに耐性を構築する方法を検討することのほか、不具合が生じた事態に備えることです。 また、事業継続性と障害復旧も極めて重要です。信頼性とは、通常の状況ですべてが動作しているときに予測可能で信頼できるだけでなく、予測不能な事態が生じたときに合理的な方法で対応できることでもあるためです。
Disaster Recovery Journal のサイトでこの記事の全文 (英語) をご覧いただけます。