Eucalyptusのアーキテクチャ

データセンター完全ガイド 2011年冬号(2010年12月20日発行)掲載

Eucalyptusの概要

EucalyptusはAmazon EC2/S3 APIと互換性のあるクラウド基盤ソフトウェアで、カリフォルニア大学サンタバーバラ校のコンピュータサイエンス学科の研究プロジェクトとして開発されました。その後、2009年1月にEucalyptus Systems, Inc.を設立し開発の継続と管理を行っています。

EucalyptusはAmazon EC2/S3 APIと互換はありますが、Amazon EC2がパブリッククラウドであるのに対し、Eucalyptusはプライベートクラウドとして利用されることを前提に作られています。そのため、 Amazon EC2にある一部の機能(課金イメージの起動など)がEucalyptusには存在しません。

Eucalyptus はオープンソースとしてソースコードが公開されており、ライセンスはGPLv3となっていますが、現在コミットをするためには CLA (Contributor License Agreement)契約を結ぶ必要があります。なお、CLAを結ぶ以外にもlaunchpadやコミュニティサイトのフォーラムなどでバグ報告などを受け付けています。

Eucalyptusの機能

EucalyptusはAmazon EC2/S3のAPIと互換性を持つミドルウェアとして開発されており、Amazon EC2/S3と同様の機能を持っています。もちろんすべての機能を持っているわけではありませんが、プライベートクラウドとしても必要となる以下の特徴的な機能が実装されています。

図1 Eucalyptusの機能
図1 Eucalyptusの機能

インスタンス管理機能

インスタンス管理機能はIaaS型のクラウドサービスでメインとなる機能の1つで、仮想マシンの起動や停止を行ったり、仮想マシンの起動時にSSHの公開鍵を仮想マシンのイメージに挿入する機能になります。起動時に挿入されるSSHの公開鍵は、仮想マシンを起動する前にSSHの公開鍵と秘密鍵をセットにした「キーペア」と呼ばれるものを作成しておく必要がありますが、キーペアの作成や管理もEucalyptusに実装されており、ユーザーは煩雑な作業を行うことなく利用することができます。なお、この仮想マシンのことをAmazon EC2では「インスタンス」と呼ぶため、Eucalyptusでも同様に「インスタンス」と呼称しております。

イメージ管理機能

イメージ管理機能は、前述したインスタンス管理機能で起動されるインスタンスの元になる仮想マシンイメージを管理する機能で、ユーザーがアップロードした仮想マシンイメージの登録や、ユーザー毎に対しての仮想マシンイメージの起動権限(パブリックイメージ/プライベートイメージ)などを管理する機能になります。なお、イメージ管理機能が管理するイメージの種類としては、カーネルイメージとRAMディスクイメージとマシンイメージの3つがあり、インスタンスはこの3つのイメージを組み合わせることにより起動することができます。

セキュリティグループ管理機能

セキュリティグループ機能は、インスタンスの起動時にあらかじめ「どのセキュリティグループに属させるか」を指定することにより、起動させたインスタンス毎にファイアウォールを設ける機能になります。このファイアウォールはユーザーが必要に応じて任意のポートを開けることが可能ですが、何も設定しなければ外部からインスタンスにアクセスすることができません。たとえば、起動したインスタンスにSSHで接続する場合はセキュリティグループの設定でTCPの22番ポートを明示的に開ける設定を行う必要があります。このセキュリティグループはインスタンス側に変更を要する機能ではなく、外部からインスタンスへ到達する途中のネットワークで実現している機能になります。なお、Eucalyptusに作られたどのユーザーにも必ず「default」という名前のユーザー独自のセキュリティグループが与えられる他、ユーザーが用途に応じて任意の名前のセキュリティグループを用意することができます。

ElasticIP管理機能

Amazon EC2ではインスタンスを起動すると必ずグローバルIPがインスタンス毎に用意され、ユーザーはそのグローバルIPに対して接続することになります。しかし、このグローバルIPはユーザーが事前に選択することができないため、固定的なアクセスが要求される場合には都度DNSを変更しなければなりませんが、それでは利便性が損われるため、Amazon EC2ではElasticIPと呼ばれる機能を用意し、ユーザーがあらかじめグローバルIPを予約しておくことができ、任意のインスタンスに対してその予約しておいたグローバルIPを割り当てることができます。一方、Eucalyptusはプライベートクラウドですので必ずしもグローバルIPである必要はありませんが、Amazon EC2互換のためにElasticIPの機能が実装されており、あらかじめ管理者が用意しておいたIPアドレス群のなかからElasticIPとしてユーザーが予約できるようになっております。

EBS機能

Amazon EC2やEucalyptusではインスタンスを停止するとインスタンス上のデータが消えるようになっていますが、場合によっては消えては困るデータもあります(たとえばユーザーデータやログなど)。そのようなデータを永続的に保持するためにEBS(Elastic Block Store)機能があり、この機能によってインスタンスへ仮想ディスクを取り付けることができます。仮想ディスクはインスタンスからは普通のブロックデバイスとして認識されるので、普通のディスク操作と同様に扱うことができます。

ストレージ管理機能

Eucalyptusは、Amazon EC2互換を実現するうえで欠かせないAmazon S3互換であるストレージ管理機能を実装しています。このストレージ管理機能は前述したイメージ管理機能で使用され、仮想マシンイメージを保持し、要求に応じて仮想マシンイメージを提供します。この機能はファイルシステムのディレクトリとファイルに似たバケットとオブジェクトという概念でデータを管理します。

Eucalyptusのコンポーネント

Eucalyptus は複数台のハードウェアで構成された環境にインストールすることを前提としています。このためEucalyptusでは役割によって「コンポーネント」と呼ばれる単位でソフトウェアが分割されており、各コンポーネントが協調動作することによってEucalyptusのさまざまな機能を実現しています。なお、各コンポーネント間は基本的に暗号化されたSOAPメッセージで通信します。

図2 Eucalyptusのコンポーネント
図2 Eucalyptusのコンポーネント

クラウドコントローラ(CLC)

クラウドコントローラはそれぞれのコンポーネントの中心になるコンポーネントであり、主にユーザーからのAPIリクエストを受け付け、ユーザーの認証をし、ユーザーからのリクエストの内容に従ってクラスタコントローラやストレージコントローラやWalrusに命令を発行し、それらのコンポーネントから返却された実行結果をユーザーに返します。また、Eucalyptusの一部の設定を変更するためのウェブ管理コンソールを提供し、Eucalyptus内のデータをDBで管理しています。

クラスタコントローラ(CC)

クラスタコントローラは物理マシン(後述するノードコントローラ)のリソースとネットワークリソースを管理するコンポーネントであり、常に各種リソースを監視し、クラウドコントローラから要求されたインスタンスに関する命令をリソースの空き具合によって特定のノードコントローラに伝えたり、インスタンスに対するセキュリティグループ機能を実現したり、ElasticIP機能を実現したり、タグVLANによって仮想ネットワークを構築する機能を提供します。また、起動したインスタンスに対する外部からのアクセスの窓口を担います。なお、マルチクラスタ構成の場合は複数のクラスタコントローラ間にvtunを用いた仮想トンネリングを作成します。

ノードコントローラ(NC)

ノードコントローラはハイパーバイザーを用いてインスタンスをホストするコンポーネントであり、クラスタコントローラから渡された要求に従って、仮想マシンイメージをWalrusからダウンロードしたり、インスタンスの起動・停止命令をハイパーバイザーに要求したり、EBSボリュームをインスタンスに取りつけたり取り外したりします。また、クラスタコントローラからの定期的なリソース監視要求に対して自身のリソース使用状況を報告します。なお、ノードコントローラはハイパーバイザーとしてXenおよびKVMを使用できますが、直接これらのハイパーバイザーに要求を出さず、libvirt経由でハイパーバイザーに要求を出します。

ストレージコントローラ(SC)

ストレージコントローラはEBS機能を提供するコンポーネントであり、クラウドコントローラからの要求に従ってボリュームの作成や削除をしたり、ボリュームからのスナップショットを作成および削除などをします。なお、ストレージコントローラはiSCSIもしくはAoE(ATA over Ethernet)を用いて、ストレージコントローラ上に作成されたボリュームファイルをノードコントローラがブロックストレージとして利用できるようにしています。ストレージコントローラは前述のコンポーネントのように独立したコンポーネントですが、クラスタコントローラと同じサーバー上に配置する構成が一般的です。

Walrus

Walrusは前述したストレージ管理機能を提供するコンポーネントであり、Amazon S3互換のAPIによって利用可能なオンラインストレージ機能を提供します。Walrusは前述のコンポーネントのように独立したコンポーネントですが、クラウドコントローラと同じサーバー上に配置する構成が一般的です。なお、Eucalyptusでは主に仮想マシンイメージを保持するためのストレージとして利用されることが多いため、オンラインストレージ機能という認識があまり持たれておりませんが、Amazon S3同様にバージョニング機能やVirtual Hosting of BucketsやBitTorrent対応機能なども実装されています。

まとめ

以上、Eucalyptusのアーキテクチャについて簡単に説明致しました。Eucalyptus Systems, Inc. は2010年3月22日に旧MySQL ABの元CEOであるMarten Mickos氏をCEOとして招き入れ、2010年8月24日にはEucalyptus 2.0.0をリリースしました(2010年11月3日には2.0.1もリリースしました)。このことからも分かるように、EucalyptusはAmazon EC2/S3との互換性を保持しつつ常に品質を改善しております。また、最近ではOpenStackやCloudStackのように、Eucalyptus以外にもさまざまなオープンソースのプライベートクラウドが現れてきました。今後もプライベートクラウドやオープンソースによるクラウド構築基盤は盛んになることは間違いないと思われます。

12月5日開催!クラウド&データセンターコンファレンス 2017-18

資料請求・見積依頼

下記リストの12事業者の資料・見積をまとめてとれます!

データセンター&ITインフラサービスの資料が、まとめてとれます!

資料
すべて
見積
すべて
データセンター&ITインフラサービス
鈴与シンワート
オージス総研
(大阪ガスグループ)
北電情報システムサービス
富士通エフ・アイ・ピー
AGS さいたまiDC
エネルギア・コミュニケーションズ
キューデンインフォコム
エクイニクス・ジャパン
SCSK
シーイーシー
データドック
ベッコアメ・インターネット

※会員としてログインされている場合でも、プロフィールの入力が必要です。予めご了承ください。

雑誌最新号

クラウド&データセンター完全ガイド2017年秋号

【特集】 特集データこそ最大の経営資産の今
[攻め]で臨むITインフラセキュリティ

表紙『クラウド&データセンター完全ガイド2017年秋号』

発売:2017年9月29日
定価:本体2,000円+税
判型:A4変型判(144ページ)
ISBN:978-4-295-00245-1

調査報告書

表紙『データセンター調査報告書2017』

データセンター調査報告書2017

事業者、利用企業共に
クラウドシフトがより鮮明に

発売:2017年10月2日
判型:A4判(372ページ)
プレスリリース
試し読み(サンプル版)

データセンター検索

文字列検索
1/4ラック月額
回線種類

回線月額

インプレスグループ創設25周年