IaaS クラウドで重要なProgrammable Infrastructure

2011年9月29日(木)
田中 智文(TANAKA TOMOFUMI)

※この記事は、書籍『Eucalyptusではじめるプライベートクラウド構築』の内容を、ThinkIT向けに特別にオンラインで公開しているものです。詳しくは記事末尾の書籍紹介欄をご覧ください。

本章では、IaaS クラウドの重要な要素であるProgrammable Infrastructure について説明します。

API の概要

Xen やKVM、HyperV などを利用した仮想化技術と、Eucalyptus で構成されるクラウドとの最も大きな違いは、本節で述べるAPI の有無にあります。API はプログラムによって操作可能なインターフェイスで、Eucalyptus で構成したクラウドはインスタンスの立ち上げやEBS の取り付けなどの機能をプログラムによって操作できます。

クラウドと呼ばれるサービスの多くは、プログラムから操作を行うためのAPI を備えています。クラウドの管理するインスタンスや仮想ネットワークなどのインフラストラクチャをプログラムから操作することを、Web2.0 時代でのバズワードであった「Programmable Web」になぞらえて「Programmable Infrastructure」と呼ぶことがあります。クラウドのビジネス的な側面としてコストの削減やスモールスタートが挙げられることに対し、クラウドの技術的な側面としての大きな要素は、このProgrammable Infrastructure と言えます。これにより、これまで人の手によってなされてきたコンピュータやネットワークの管理を、プログラムによって自動化できるようになりました。負荷に応じて自律的に増殖するシステムなどの新しいシステムの形が提言され、実現されてきています。

クラウドを操作するAPI は、各クラウドサービスを提供するベンダがそれぞれ独自の方法を提供するという形態が主流でした。たとえばMicrosoft Windows Azure であれば、Azure のデータセンターを操作するためにSDK が必要となり、ホスティング会社として著名なRackspace であればRackspace API を利用します。その中で、クラウドのAPI を統一化する流れとして、OCCi(Open Cloud Computing Interface)などが提案されましたが、クラウドのAPI として現在デファクトスタンダードとなっているのは最大手のクラウドサービスプロバイダであるAmazon のAWS API(Amazon Web Services API)と言えます。Eucalyptus は、このAWS API のうちのEC2 APIとS3 API を採用しています。

本節では、Eucalyptus に対してAWS API を利用してEucalyptus の管理するインフラストラクチャを操作する方法について説明します。

API の種類

Eucalyptus の提供するAPI は大きく分けてSOAP API とQuery API があり、どちらも機能性に違いはありません。両者のAPI は「Web API」と呼ばれる形式でHTTP を用いて特別なURLに対してHTTP メソッドを実施する、またはリクエストパラメータに特別な情報を付与することでEucalyptus に対して操作する情報を送信します。

Eucalyptus はAPI リクエストを受け付けるためのエンドポイントを提供しており、通常は、次のアドレスがEucalyptus のエンドポイントとなっています。このURL に対してHTTP リクエストを送付すると、Eucalyptus はAPI リクエストとして処理します。

http:// CLCのIPアドレス :8773/services/Eucalyptus

Eucalyptus ではAmazon EC2/S3 のAPI をサポートしており、EC2 API はバージョン2009-04-04、S3 API はSOAP API についてはバージョン2006-03-03、Query API については最新のロギング機能やバージョニング機能を、それぞれサポートしています。

SOAP API とQuery API

Eucalyptus のエンドポイントに対してSOAP メッセージを送信してEucalyptus を操作するAPI を「SOAP API」と呼び、エンドポイントに対して所定のリクエストパラメータを付与してHTTP POST を実施しEucalyptus を操作するAPI を「Query API」と呼びます( 図1 )。

図1:SOAP API とQuery API の概要(クリックで拡大)
著者
田中 智文(TANAKA TOMOFUMI)
NTTデータ先端技術株式会社

2008 年に高知から上京し、NTTデータ先端技術株式会社に入社。業務ではWebアプリケーションの開発やOSSクラウド基盤の調査、検証に従事。志田の作成したGUIクライアント「tAWS」のメンテナンスと機能拡張を行っている。
Twitter:@tanacasino

連載バックナンバー

Think ITメルマガ会員登録受付中

Think ITでは、技術情報が詰まったメールマガジン「Think IT Weekly」の配信サービスを提供しています。メルマガ会員登録を済ませれば、メルマガだけでなく、さまざまな限定特典を入手できるようになります。

Think ITメルマガ会員のサービス内容を見る

他にもこの記事が読まれています