このブログをご覧の方で「クラウド」という言葉を知らない方はいないと思います。ですが「クラウドって何?」と聞かれて、きっちり説明できますでしょうか? 実はあいまいだったりしませんか?
企業でのクラウドコンピューティング利用においては、最大の課題を「企業内でのクラウドコンピューティングへの正しい理解」だと筆者は感じております。したがって、クラウドコンピューティングに関して解りやすく説明し、理解を得る活動は実活用に向けて重要な取り組みだと思います。
そこで、今回は今一度「クラウドコンピューティング」とは何かを振り返り、整理してみたいと思います。
「クラウドコンピューティング」の定義
多くの場合、略されて「クラウド」と言われることが多いのですが、正式には「クラウドコンピューティング」という用語になります。では、クラウドコンピューティングとはどういうものなのでしょうか。
NIST(アメリカ国立標準技術研究所)というところが「クラウドコンピューティング」という言葉の定義を示しており、これを引用するのがもっとも適切に説明していることになると思います。なおNISTは2011年5月にドラフト版「クラウドコンピューティングの概要と推奨事項(SP 800-146 – Draft Cloud Computing Synopsis and Recommendations)」という文書を公開しており、アメリカでのクラウドコンピューティングに関する事例や注意すべき点、特徴の取りまとめなどの活動を積極的に行っております。
「クラウドコンピューティングの概要と推奨事項」の冒頭では「クラウドコンピューティング」について、以下のように定義が書かれています。
クラウドコンピューティングとは
- 5つの特徴
- 3つのサービスモデル
- 4つのデプロイメントモデル
を持っているとしています。
そのまま書くと、一体何のことやら!
では、個別にみていこうと思います。
クラウドコンピューティングの「5つの特徴」
クラウドコンピューティングの特徴を理解する上で、まず抑えないといけないことが「コンピューティング」という言葉自体だと思います。この「コンピューティング」に対応する端的な日本語を筆者は思い付きません。
無理やり表現するならば「コンピューターの力」という感じでしょうか。。。
コンピューターの力とは
- やりたいことが実現できるアプリケーション
- アプリケーションを動かすための基盤となるソフトウェア群
- 基盤となるソフトウェアの実行を可能にするハードウェア群
- 遠隔のハードウェアを繋ぐネットワーク網
といったもので構成されています。
現在は企業がこの「コンピューターの力」をうまく活用し、ミッションへ取り組み、ビジネスを進めていくことこそ企業活動であると言える時代です。したがって「コンピューターの力」を調達する方法の改善は、非常に重要な課題であると言えます。
「クラウドコンピューティング」が注目されている理由がここにあります。「クラウドコンピューティング」は従来のコンピューター資源の調達方法をドラスティックに変化させてしまいました。
「クラウドコンピューティング」がもたらした、コンピューター資源の調達における変化とはどういうものでしょうか。それは以下の5つの特徴に表現されています。
- 何時でも使い始められます
- ネットワークを使ってアクセスして下さい
- 必要なものはこちらで準備しておきます
- 激増も激減も設定変更で対応できます
- お支払いは使った分だけです
という感じです。
「クラウドコンピューティング」と言われるものがもたらした最大の変化は「コンピューター資源の所有」から「コンピューター資源のサービス利用」への変化であるという点です。物理的なコンピューターの調達には、時間とお金が必要です。また、必ず冗長なリソース調達が発生します。時間とお金がかかることは、企業活動においては圧倒的なマイナス要因です。この点を解決するために「クラウドコンピューティングベンダー」が準備したコンピューターの力を「サービス」という形態で契約し、利用することこそが「クラウドコンピューティング」だと言えます。
クラウドコンピューティングの「3つのサービスモデル」
さて前章では「クラウドコンピューティングとは、コンピューターの力を"サービス"という形態にて、契約し利用すること」とまとめました。では、この「サービス」とはどういったものになるのでしょうか。
前章では「コンピューターの力」を
- やりたいことが実現できるアプリケーション
- アプリケーションを動かすための基盤となるソフトウェア群
- 基盤となるソフトウェアの実行を可能にするハードウェア群
- 遠隔のハードウェアを繋ぐネットワーク網
と説明しました。
4のネットワークについてはインターネットの回線を指しますので、現在ではどの企業も持っていると思います。つまり、「サービス」として契約し、調達したい部分は1~3になります。
これら1~3のどこまでを調達するか。逆にいうと、企業のミッションやビジネス活動を遂行する上で、どこまでが準備可能かについては、それぞれの企業規模であったり、ITスタッフの人員数や力などによってまちまちだと思います。
例えば、ごく少数の社員の企業では、専門のITスタッフをおくことは難しいため、できる限り広範囲のサービスを利用したいと考えるかもしれません。また、大企業でIT専門のスタッフを抱えている場合は、アプリケーションの開発や動かす基盤については自分たちで行うので、ハードウェア群をサービスとして利用したいと考えるかもしれません。
NISTの定義では、この「サービスの範囲」を「3つのサービスモデル」として説明しています。
- ハードウェア群のサービス提供である「IaaS(Infrastructure as a Service)」
- 1の上にアプリケーションの実行基盤を載せた「PaaS(Platform as a Service)」
- 2の上にアプリケーションを載せた「SaaS(Software as a Service)」
と定義されています。
ちょっとかみ砕いて書いてみると・・・
3. SaaS
仕事で使う機能やアプリケーション(例:メーラー、顧客管理、ネット通販)をサービスとして提供
2. PaaS
「仕事で使う機能やアプリケーション」を稼働させるための基盤をサービスとして提供
1. IaaS
「「仕事で使う機能やアプリケーション」を稼働させるための基盤」の中の最下部にあたるサーバーやストレージ(記憶装置の集合)、ネットワークなどのいわゆる「インフラ」などをサービスとして提供する
となります。図にするとこうなります。
これが、「クラウドコンピューティング」における「サービスの提供形態(サービスモデル)」です。実際に利用する場合は、これらのサービスモデルから、自分たちの利用目的・要件に合わせて選ぶことになります。
例えば、このような要件があったとします。
メール1件の容量も増えてきて、自社のメールサーバでは容量が不足してきた。さらに、新しいウイルスも心配。これらの管理コストも削減したい!
さて、この要件ではどのような対応方法が考えられるでしょうか。
「クラウドコンピューティング」を活用しようとする場合、いくつかのパターンが考えられます。まず「メール」というアプリケーションをどのようにユーザーへ提供するか、組み合わせがあるからです。
一番左の従来であれば、インフラ部分・OS・アプリケーションの稼働環境・アプリケーションの全てを自社で用意することを指しています。もしくは、これら全てをどこかの会社に保持してもらい、自社で占有するようなレンタル契約となるかと思います。
IaaSを利用する場合・・・(左から2番目)
ユーザー企業は、アプリケーションに加え、アプリケーションが稼働するための設定なども行う必要があります。
このサービス利用はもっとも企業側の自由度を獲得することになるでしょう。逆にいえば、もっともやらないといけないことが多くの、当然専門性も高くなります。従来に比べて開放される部分は、ハードウェアの調達時間と管理コストになるでしょう。
PaaSを利用する場合・・・(一番右)
ユーザー企業は、PaaS上で動くソフトウェアを準備する必要があります。
そのため、SaaS利用よりもユーザーへの機能提供開始が遅くなるかもしれません。また、SaaSよりも管理コストが発生します。ただし、ハードウェアやアプリケーション稼働における基盤部分については面倒をみなくてよいので、従来よりも管理コストを抑えることが可能です。
SaaSを利用する場合・・・
ユーザー企業は契約しておしまいです。
支払っている期間メールを使うことができます。ハードの面倒やソフトウェアの面倒は全てベンダーに任せられます。ただし、クラウドベンダーが提供するメニューからの選択となり、自由度が低いことがあります。場合によっては、完全に要件を満たすことができないかもしれません。
ということで、どれが一番よいか判断するためには、企業にて何をどこまで自分たちで行いたいか、行うことができるのかによります。場合によっては、IaaSよりもSaaS利用の方がコストメリットを享受できるかもしれません。どのサービスモデルを選択するかについては、次回以降に考える回を設けますので、今回はここまでとしておきます。
クラウドコンピューティングの「4つのデプロイメントモデル」
それでは最後にデプロイメントモデルをみてみます。
デプロイメントモデルとは、「コンピューター資源をどこに配置するか」という意味です。
NISTの定義では、配置する場所と誰と共有されるのかという点で4つパターンがあるとしています。
- Private Cloud
- Community Cloud
- Public Cloud
- Hybrid Cloud
クラウドコンピューティングを理解するためには、「仮想化」というキーワードを理解する必要があります。
通常コンピューターとは物理的なサーバーなどをイメージすると思います。この「物理的なサーバー」を仮想的につまり、ソフトウェアの力でシミュレーションし、あたかも物理的なサーバーと同じ動きをするものが「仮想サーバ」です。
仮想サーバはあくまで1アプリケーションと言えるため、物理的なサーバー上で何台も動くことが可能になります。この結果、効率よく物理的なサーバー使い切ることが可能になりました。
この「仮想サーバ」を動かす技術こそが、クラウドコンピューティングを支える基本的な技術となります。
現在、この「仮想サーバを動かすための基盤技術」はオープン化されているものもあり、物理的なサーバーを持っているのであれば、自分たちで「クラウド」を運営することも可能になってきております。この自前のサーバーを駆使し、クラウドを実現することを「プライベートクラウド」と言います。プライベートクラウドとは、あくまでクラウドコンピューティングの技術を使い、自前のリソースを有効活用することです。
パブリッククラウドとは、パブリックつまり他の企業とも共有される「インターネット上に配置されたクラウドコンピューティング」を指します。複数企業による、共同購買のような状態です。インターネット上に配置されるため、多くの企業が利用できることから、もっともリソースの効率という点で優れています。ただし、インターネット上に配置にされる特性から様々な課題も生まれると言えます。
最後がプライベートクラウドとパブリッククラウドの両方を同時に利用する「ハイブリットクラウド」です。まさにプライベートクラウドの利点とパブリッククラウドの利点、もしくはお互いの弱点を2つの配置を利用することで「いいとこ取り」を目指す配置と言えます。ですが、同時にもっとも技術的には難しい難易度が高めの配置ともいえます。
これら4つの配置については「セキュリティリスクとクラウド環境」という回を設け、詳しくその特徴と利点や課題を考えたいと思っています。
まとめ
さて、以上NISTの定義を元に「クラウドコンピューティング」というものについて理解をすすめてきました。「クラウドコンピューティング」は私たちに何をもたらしているのでしょうか。筆者は以下のように考えております。
- コンピューターリソースの調達方法と廃棄方法の変化をもたらす
- コンピューターリソースの維持運営にかかるコストを見直すことができる
- コンピューターリソースへの大幅で急激な変化要求に対応することが可能になる
「クラウドコンピューティング」とは、あくまで「コンピューターの力」を企業が利用すること上で、従来手法で解決できなかった課題への一つの答えだと思います。ただし、あくまで「一つの答え」です。
企業での課題が全て解決するわけではなく、あくまでどのように使うかがポイントだと考えております。
したがって、結局のところ
- 「企業のミッションやビジネスモデルにおいて、どのようにITを活用すべきか」
という大命題への取り組みにおける、道具の一つのにすぎません。
より積極的にITの力を使おうとする企業こそ、クラウドコンピューティングの力を生かすことができる企業となり得る点においては従来となんら変わりはないと思います。ITの力を積極的に利用することができる企業となるためには、企業内のITリテラシー向上は必須です。残念なことに日本企業の「ITを利用する力」はアメリカから2年以上遅れていると言われており、その差は広がる一方だという見方もあります。
多くの企業において「クラウドコンピューティング」への理解がすすみ活用されることを期待しつつ、第一回をお届けしたいと思います。
本コラムは、ニフティ株式会社HPに掲載されている「ニフティクラウド ユーザーブログ」より転載したものです。