[基礎解説]
Windows IT Proのためのクラウド・コンピューティング入門 ―― Windowsシステム管理者から見たクラウド初歩の初歩 ―― デジタルアドバンテージ 小川 誉久2011/03/10 |
「クラウド・コンピューティング」を知らないシステム管理者はいないだろう。インターネットの「向こう側」にサーバ・システム一式を配置し、これをサービスとして利用するコンピューティングの形態だ。これにより、従来の情報システムでは不可欠だったサーバ・システムの構築が不要になり、メンテナンスが不要ないしは軽減され、素早く安価に情報システムを構築できるとされる。このクラウドと対比する意味で、従来の社内システムは「オンプレミス・システム(on-premise system)」と呼ばれるようになった(premiseは「施設」という意味)。
クラウド・コンピューティング |
クラウドでは、インターネットの向こう側にある仮想的なコンピューティング環境を利用する。情報システムの構築を素早く安価に行うとともに、管理コストを大幅に削減できるとされる。 |
* 企業が自社で所有する「プライベート・クラウド」のように、インターネットではなく社内ネットワークやVPNに接続されるクラウドも存在する。 |
クラウドを利用したシステム構築の実績は徐々に増えつつあるが、いまなお多くの情報システム管理者にとって「クラウド」は遠い存在ではないか。クラウドの利点は、情報システムの実体を意識することなく、構築や管理(の一部あるいは大部分)をサービス提供者まかせにして、システムを作ったり、使ったりできる点なのだが、万一のセキュリティ・トラブルやシステム障害を含めて、情報システムの継続的な安定稼働に責任を負う管理者にとっては、実体が見えないことが同時に不安にもつながってしまう。このため実際のシステムをクラウドで構築するという例は、まだそれほど進んでいない。
しかし企業の情報システム管理者にとって、もはやクラウドは避けて通れない対象である。オンプレミス・システムが必要であることは変わらないが、クラウドを抜きにして、従来型のオンプレミス・システムだけですべてうまく対処できるかといえば、時代がそれを許さないからだ。クラウドのメリットがシステム構築や運用にまつわるものである以上、クラウドをどう使うかは、ソフトウェア開発者だけでなく、システム管理者も積極的な立場で意思決定に加わるべきだ。とはいえ残念ながら、システム管理者を対象にして、クラウドを解説した情報はあまり多くない。そこで本稿では、Windowsベースの情報システム管理者の視点から見たクラウド・コンピューティングの基本を、できるだけ分かりやすくまとめていく。
クラウドとオンプレミスを例えて比べれば…
最初に、オンプレミスとクラウドを身近なものに例えて考えてみよう。ここではオンプレミスを自家用車に、クラウドを新幹線に例えてみた。
自家用車(オンプレミス)とクラウド(新幹線)を比べたときの長所と短所 |
自家用車は自分だけが所有するものだから、当然ながら、いつなんどきでも、好きなときに好きなだけ乗ることができる。そして道路さえあれば、どこにでも行くことができる。制約があまりなく、自由度が高いことが最大の長所だ。一方自家用車の欠点は、車を使おうと使うまいと、ガソリン代や整備費用のほか、税金や保険料、駐車場代などの維持費がかかることである。もちろん、車を複数所有しているなら、その分だけ維持費がかさむことになる。
一方の新幹線は、自分が所有しているわけではないので維持費はいっさいかからない。乗らなければコストは発生しないし、使うときには使った分だけの料金を運賃として支払えばよい。しかし新幹線で行けるのは駅までだし、運行ダイヤに従って便を選んで乗車するしかない。自家用車のように、好きなときに好きなところへ行けるわけではない。所有のための維持費はかからないが、鉄道会社が決めたサービスを利用するしかないので、一定の制約がある。
オンプレミス・システムとクラウド・システムの関係もこれらに似ている。オンプレミスは自分で所有するシステムなので、自由度は大きく、ほぼ制約なく利用できる。しかしその代わり、構築や運用は自分で責任を持たなければならないし、システムの使用量とかかわりなく、相応の維持費がかかってくる。一方のクラウドは、サービス提供者が規定したサービスを使う必要があるので、利用にあたって一定の制約があるが、サービスのデフォルトの環境をある程度そのまま使えるので構築が手軽であり、基本的なシステムの運用はすべてサービス提供者まかせで、維持に手間と時間をかけないですむ。
私たちには、自家用車も新幹線も両方が必要だ。両者の特徴をよく理解して、用途や目的に応じて使い分けている。オンプレミス・システムとクラウド・システムも同じことで、双方の特徴を見極めて、用途に応じて上手に使い分けたり、両者をうまく組み合わせたりできる必要がある。
クラウド・コンピューティングのメリット
すでにいくつかについて触れたが、ここでクラウド・コンピューティングのメリットについて改めて整理しておこう。
■導入費用が安価。使った分だけ課金
ひと口にクラウドといっても、いくつかのタイプがある(タイプの詳細は後述)。しかしいずれにせよ、サービス提供者が用意したハードウェア/ソフトウェア環境をサービスとして利用できるため、自前ですべてを準備することに比べれば、導入にかかるコストは抑制できる。またクラウドの基本は、電気代と同じように、サービスの使用量に応じて料金を支払う従量課金である。オンプレミスでは、想定される最大負荷に耐えうる最大のキャパシティをあらかじめ準備しておく必要があるが、クラウドなら、キャパシティ計画はサービス提供者にまかせて、あまり使わなければそれ相応に、使ったら使っただけ料金を支払えばよい。
■情報システムを素早く構築できる
先の「導入費用が安価」にも通じることだが、あらかじめ用意された環境を使えるので、情報システムを素早く構築できる。変化への素早い対応が求められる現在の情報システムでは、完成形までじっくり作りこんでリリースするよりも、ある程度のシステムを素早く立ち上げて、改良していくほうが適しているケースが多い。
■スケーラビリティ、変化に柔軟に対応
オンプレミスでは、コンピューティング・リソースの性能や容量が物理的なハードウェアに依存するため、簡単には変更できない。これに対しクラウドは、コンピューティング・リソースが仮想的に構築されており、比較的容易にこれらに対応できる。
■管理コスト削減
管理者にとってオンプレミスの最大の悩みは、システムの管理コストだろう。どのような用途にせよ、ビジネスで利用する情報システムなら、万一の事態に備えるためのデータのバックアップは不可欠だし、定期的な修正プログラムの適用も欠かせない。可用性(情報システムを停止せずに運用する能力)が求められる場合がほとんどで、利用者への周知を含めて、作業手順は複雑で、自動化もままならないことが多い。サーバが増えれば、それだけメンテナンスコストがかさむことになる。タイプにもよるが、クラウドはコンピュータ・リソースを直接にはユーザーが管理しなくてよいので、面倒な管理業務の多くをサービス提供者まかせにできる。
クラウドの種類
先に簡単に触れたとおり、クラウドにもいくつかのタイプがある。ユーザー側にどのようなサービスが提供されるか(ユーザーがどこまで自分で用意する必要があるか)に応じて、大きくは次の3種類に分類されている。
■SaaS(Software as a Service:サース)
最上位のアプリケーション・レベルまでをクラウド側で提供してくれるのがSaaSだ。例えばWebブラウザで利用できる電子メール・アプリケーションをはじめ、ワードプロセッサや表計算、CRM(顧客管理)ソフトウェアなど、最終的なアプリケーションがクラウド側で提供されている。Webアプリケーションの延長でもあり、すでに広く利用されているクラウドのタイプである。アプリケーションを手軽に、すぐに使い始められるという利点があるが、アプリケーションがクラウド側で規定されているため、自由度は必ずしも高くなく、独自の拡張などは制限される。具体的なSaaSのサービス例としては、Google Apps(グーグル)、Salesforce CRM(セールスフォース)、Microsoft Office 365(マイクロソフト)などがある。
■PaaS(Platform as a Service:パース)
PaaSでは、クラウド側はアプリケーションを実行するための実行環境を提供する。アプリケーションはユーザー側で用意する必要がある。このためアプリケーションの自由度、拡張性は高い。ただしクラウドとしては後発のタイプであるため、事例はまだあまり多くない。具体的なPaaSのサービスとしては、Google App Engine(グーグル)、Force.com(セールスフォース)、Windows Azure Platform(マイクロソフト)などがある(Windows Azure Platformの詳細については後述)。
■IaaS(Infrastructure as a Service:アイアース、イアース)
クラウド側はサーバ・ハードウェアに相当するプラットフォームだけを提供し、その上に乗るOSからアプリケーションまではユーザー側で用意する形式がIaaSである。物理的なサーバ・ハードウェアの代替をクラウドで行うだけなので、従来型のオンプレミスでのシステム構築の概念やノウハウを基本的にそのまま持ち込める。このため分かりやすく、利用にあたってのハードルが低いというメリットがある。しかしOSを含めて上位ソフトウェアの面倒は自分でみなければならないので、バックアップや修正プログラムの適用、ソフトウェアのバージョンアップなどは、オンプレミスと変わらず自前で行う必要がある。「すぐに始められ、管理も手軽」というクラウドのメリットは小さくなる。具体的なIaaSのサービス例としては、Amazon EC2(アマゾン)、VMware vSphere(VMware。ただしサービス自体はサービス・プロバイダが提供)、Windows AzureのVMロール(マイクロソフト)がある(VMロールの詳細については後述)。
マイクロソフトのクラウド Windows Azure Platform
先の図にあるとおり、マイクロソフトは、SaaS/PaaS/IaaSのいずれにも対応するクラウド・サービスを提供している。SaaSであるOffice 365は、電子メールやOffice機能を提供するものだ。そしてPaaSとIaaSがWindows Azure(アジュール)である。Windows Azureはクラウド・サービスとしては後発で情報が少ないこと、複数のクラウドの種類に対応しており構成が分かりにくいこと、既存のWindowsベースのオンプレミス・システムとの連携機能が重視されており、Windows管理者にとっては重要だと思われるので、ここで概要をまとめておこう。
Windows Azureのクラウド・サービス全体は、Windows Azure Platform(アジュール・プラットフォーム)と呼ばれている。内部は次のように、Windows Azure、Windows Azure AppFablic、SQL Azureというパートに分かれている。これまでの経緯から、クラウド・サービス全体を指して“Windows Azure”と表記されることが多いが(本稿でもそうしている)、厳密には“Windows Azure Platform”と呼ぶべきである。Windows Azureがクラウド・サービス全体を指すのか、内部のパートを指すのかは、文脈で読み分ける必要がある。
Windows Azure Platformの構成 |
Windows Azure Platformの核となるパートがWindows Azureである。内部にはWindowsベースのコンピューティング・リソースを提供する機能、ストレージ機能、管理機能があり、Windows Azure対応のアプリケーションをサポートする。Windows Azure AppFabricには、オンプレミス・システムとWindows Azure対応のクラウド・アプリケーションとの連携をサポートする機能が含まれる。SQL Azureは、クラウド環境に構築されたSQL Serverリレーショナル・データベースで、オンプレミスと同等のRDBMSをWindows Azure対応アプリケーションから利用可能にする。
Windows Azureは、ロール(Role。「役割」の意味)と呼ばれる単位で異なるサービスを提供している。このうちPaaSのサービスを実現するのがWebロールとWorkerロールだ。Webロール/Workerロールでは、Windows Azureなどのパートが提供するサービスを利用してWindows Azure用のアプリケーションを開発する必要がある。Windows Azureに対応したアプリケーションを開発しなければならないが、スケーラビリティに優れたシステムを構築でき、特に大規模システムでは効果が大きい。
一方のVMロールは、先ごろ発表されたサービスで、Windows Server 2008 R2 Enterprise相当の仮想マシン環境を提供してくれるIaaSである。つまり簡単にいえば、自前でWindows Server 2008 R2のサーバを用意する代わりに、Windows Azure上の仮想マシンを利用できるようになるわけだ。SQL Azureも提供されているので、SQL Serverをデータベースとして利用しているアプリケーションも、ほぼそのままクラウド上に持ち込むことができる。IaaSなので基本的なシステム管理は自前で行う必要があるが、その代わり、これまでのWindows管理の知識やスキルはそのまま生かせるので、システム管理者としては最も身近なサービスだろう。
クラウドの評価を始めよう
以上、Windowsシステム管理者の視点から、クラウド・コンピューティングの基本をまとめた。あまり過大評価するのは禁物だが、今後の情報システム構築や運用では、クラウドを選択肢の1つから外すわけにはいかない。自家用車と新幹線を使い分けるように、オンプレミスとクラウドを使い分けたり、組み合わせて使ったりできることが重要だ。今回は第一歩として、クラウドの概要を説明したが、このためにはやはり、実際にクラウドを使って、評価してみるのが早道だろう。まずは、既存のサーバ管理の知識が生かせるIaaSを試してみるとよいのではないか。幸いクラウドは、Amazon EC2にせよ、Windows Azure VMロールにせよ、比較的低コストで試してみることができる(執筆時点でVMロールはベータ・テスト中)。
- 特集:Windows Azure SDK 1.3の新機能(後編)「すべてが自由自在なクラウド環境『仮想マシン・ロール』」(Insider.NET)
- Windows Azure Platform速習シリーズ(Insider.NET)
- 運用:Windowsで構築する、クラウド・サービスと社内システムのSSO環境「第1回 クラウド・コンピューティングとアイデンティティ管理の概要」(Windows Server Insider)
- 運用:Amazon EC2/S3で作るWindows公開サーバ(Windows Server Insider)
- Windows Azure Platform TechCenter(マイクロソフトTechNet)
- クラウドTechCenter(マイクロソフトTechNet)
- ハイブリッド & プライベート クラウド TechCenter(マイクロソフトTechNet)
- Windows Azure Platform を無償で利用するには?(マイクロソフトTechNet)
- Windows Azure Platform 開発者向け技術情報(マイクロソフトMSDN)
基礎解説 |
- Azure Web Appsの中を「コンソール」や「シェル」でのぞいてみる (2017/7/27)
AzureのWeb Appsはどのような仕組みで動いているのか、オンプレミスのWindows OSと何が違うのか、などをちょっと探訪してみよう - Azure Storage ExplorerでStorageを手軽に操作する (2017/7/24)
エクスプローラのような感覚でAzure Storageにアクセスできる無償ツール「Azure Storage Explorer」。いざというときに使えるよう、事前にセットアップしておこう - Win 10でキーボード配列が誤認識された場合の対処 (2017/7/21)
キーボード配列が異なる言語に誤認識された場合の対処方法を紹介。英語キーボードが日本語配列として認識された場合などは、正しいキー配列に設定し直そう - Azure Web AppsでWordPressをインストールしてみる (2017/7/20)
これまでのIaaSに続き、Azureの大きな特徴といえるPaaSサービス、Azure App Serviceを試してみた! まずはWordPressをインストールしてみる
|
|