今や企業や個人を問わず、一般的に広く使われるようになったクラウドサービスですが、その基礎技術となっているものが何かをご存知でしょうか?クラウドには「仮想化」という技術が使われ、その上で多様なサービスが提供されています。仮想化は古くからある技術ですが、従来のITサービスの欠点を克服する多くのメリットがあります。
クラウドとは
これまでITサービスを利用するためには、自社でサーバを立て、そこにサービスの環境を構築し、テストを重ねて作り上げていく必要性がありました。しかしこれでは時間がかかり、開発コストも必要となってしまいます。
それに対してクラウドサービスは、既に構築済みの環境がネットワークを介して提供されるため、利用者側の負担が小さくなります。多くの会社が利用するほど規模も大きくなっていくため、利用者当たりのコストもどんどん下がっていきます。その分の余剰を機材の更新、サービスの改善、セキュリティの向上などに割けるため、自社の中でサービスを維持するより、ますます有利になっていきます。ただネットワークの先が見えないために、クラウドの正体が一体何なのか、またどのような技術や仕組みで提供されているのかが一般的に分かりにくいのも事実です。
クラウドを支える基礎技術、「仮想化」とは?
実際のところ、クラウドサービスには数多くの技術が使われていますが、その中でも最も重要な基礎技術が「仮想化」と呼ばれるものです。ここではこの仮想化について、詳しく見ていきましょう。
従来のITサービスの問題点
自社の環境内にサーバを立てて利用するタイプのITサービスの場合、ユーザーの数や使う頻度など、あらかじめ想定することができます。そして、メールであればこのサーバ、データ管理であればこのサーバなど、サービスごとに物理的なサーバを指定し、そこで管理しておけば済みました。
しかしそれでは急激な環境変化に対応できません。またそれぞれのサーバの空き容量をうまくコントロールできないなど、全体の最適化も困難です。
そのためクラウド以前から、こうした資源の効率的な運用を図るために発展してきたのが「仮想化技術」です。
仮想化の歴史
仮想化そのものは、コンピュータの歴史の初期段階、パソコンが普及する前から実用化されていた古い技術です。当時はコンピュータの価格が非常に高く、計算は中央にある大きなコンピュータが行い、端末はそこにアクセスするためのものでした。そのような状況では、計算を一手に引き受ける中央のコンピュータの負担を下げ、必要があれば複数のマシンを繋いで計算させる必要があったため、仮想化は必須の基礎技術だったのです。
その後パソコンが普及し、端末側で複雑な計算ができるようになりました。そのため仮想化自体は、多くのユーザーにとって「旬」のものではなくなりました。しかし高速通信可能なインターネットが普及し、モバイル環境も発達、また上記で示したような自社単独でのシステム維持やセキュリティのコスト等の問題から、近年、再び注目を集める存在となったのです。
仮想化の目的とその分類
仮想化の目的は、サーバに限らず、ネットワークやアプリケーションなどあらゆるIT資源の効率化です。これらのIT資源には、必ずと言っていいほど、使われていない部分があります。その空いた部分を柔軟に使うことでムダを減らし、全体の効率を高める技術が仮想化です。
具体的な仮想化技術には、いくつかの形態があります。いずれもサーバなど物理的なIT資源の構成に依存せず、使いたい側の都合で自在に使えるよう、「論理的に」組み替えることが可能となるものです。
例えば、2つのCPUで構成される1台の「物理サーバ」があったとき、仮想化を使うと、それを1つのCPUで動く2台の「論理サーバ」として認識され、利用できるようになります。このように仮想化は「組み替える方法」×「対象となるIT資源」の数だけパターンがあると言えるのです。
仮想化の種類
では、「組み替える方法」について詳しく見ていきましょう。
①統合する
複数のIT資源を1つに見せる技術です。例えば演算能力の低いコンピュータであっても、それをたくさん集めて繋げば、高性能のコンピュータと同じ働きをしてくれます。能力が足りなければさらに増やし、過剰になれば減らすことで、常に効率的でムダのない能力を実現することが可能となります。
②分割する
その反対に、1つのIT資源を複数に分割して提供する技術です。先ほど例にあげた「1台の物理サーバを2台の論理サーバとして認識」するのは、この技術の結果となります。数や規模が大きくなるほど単価は安くなります。容量の大きなメモリやディスクを購入し、それを仮想化で何台にも分割して使えば、単位当たりの価格は安くなるでしょう。
③統合と分割の合わせ技
こうして分割したIT資源を再び統合したり、統合したIT資源を今度は分割して提供するなど、仮想化ではこのような合わせ技が自在にできます。
仮想化の特徴とデメリット
このように利用する側にとってメリットの大きな仮想化ですが、もちろんデメリットも存在します。また効率化やコスト削減以外の特徴もありますので、ここで整理してみましょう。
仮想化で実現できる3つの「高」
①可用性が高い
ITサービスが安定して稼働することを可用性と言い、特に企業の場合は欠かすことのできない要素です。仮想化されたIT資源は、物理的な機械の構成に依存をしないため、もし何か物理的な障害が出た場合でも、他の物理資源に処理を切り替えることでサービスを止めずに運用できます。
②拡張性が高い
IT資源の量を自在に拡大縮小できるかどうかを「拡張性」と言います。当然、これが高いほど柔軟な環境への対応が可能です。これも、統合や分割を目的としている仮想化ではお手の物となります。物理的なIT資源の場合、発注してから納品され、実際にシステムに繋いで設定、テスト等を行うため時間がかかってしまいます。しかしあらかじめ仮想化されていれば、拡張は非常に短時間で済ませることができます。
③運用保守性が高い
障害が起きた時の復旧や、日常的な設定変更などがやりやすいかどうかを「運用保守性」と言います。仮想化された環境であれば、端末の管理画面から各種の設定を行うことができ、自動処理をすることもできるので、運用保守性面でも大きなメリットがあります。
パフォーマンスやセキュリティも万全ではない
良いことづくしの仮想化技術ですが、もちろん注意すべき点もあります。
①パフォーマンスの注意点
いかに統合や分割が得意だとは言っても、もともとの物理的なIT資源が貧弱では、十分な効果を引き出すことはできません。「空いた部分」がどこにも無ければ、結局のところパフォーマンスは落ちてしまいます。また、設定次第で柔軟に対応できるということは、裏を返せば設定次第でパフォーマンスを落としてしまうこともありえます。
②セキュリティの注意点
仮想化された環境下では、さまざまなOSやアプリケーションを導入できます。その分、セキュリティ対策も多方面に留意していく必要があります。
ただし、こうした注意点はクラウドサービスを提供する事業者であれば当然熟知しており、必要な対応は講じているはずですので、過度に心配する必要はありません。ただし新しい脅威は常に生まれているため、担当者はセキュリティ対策を万全にしておくという意識を常に忘れず、最新の情報に敏感になっておく必要があります。
クラウドサービスは仮想化技術が支えている
利用者側からはどのような仕掛けになっているかが見えにくいクラウドサービスですが、このように、重要な基礎技術となっているのが仮想化です。仮想化技術自体は「閉じた環境」でも活用されますが、それをインターネットを通じて公開し、多くの人にも使えるように開放したのがクラウドサービスということになります。