クラウド基盤ミドルウェア「CloudStack」とOpenStackへの取り組み

2011年8月11日(木)
北瀬 公彦

シトリックスのOpenStackへの取り組み

OpenStackとは

OpenStackは、NASAと米Rackspace社によりリードされているオープンソースのクラウド管理ミドルウェアであり、90以上の企業がその開発に参加している。1000以上のユーザー、開発者が何らかの形で関わっていて、オープンソースプロジェクトの中で今、最も熱いプロジェクトの1つである。また、Ubuntuで採用されている開発プロセスが取り入れられている事も特徴の1つで、定期的に、開発者同士が直接会うデザインサミットという会議を行い、ロードマップや機能などを決めてプロジェクトを進めているのも特徴的である。海外だけでなく、NTTデータ、NTT、Midokura、VA Linuxなどから多くの開発者が参加しており、日本でも注目されている。OpenStackは大きく分け、下記の3つのNodeで構成されている。

Nova:IaaSを管理する機能を提供

  • キャパシティの余裕のあるホスト(ハイパーバイザー)を検出して仮想マシンを起動
  • 仮想マシンに割り当てるIPアドレスの管理
  • 仮想マシンの通信を遮断するVLANの制御
  • 外部NW、仮想マシン間のパケットフィルタリング
  • 仮想マシンが一時的に使える外部ストレージ(今後は後述のGlanceに統合される予定である)
  • ユーザーインターフェース(OpenStack Dashboard)の提供
  • API
    • RackSpaceのCloudServers APIベースのOpenStack APIを提供
    • Amazon EC2相当のサービスを提供(Amazon互換API)

Swift:分散ストレージを提供

  • 複数サーバーのHDDを統合、1つの大容量ストレージとして提供
  • 格納するオブジェクトは設定値に基づきレプリケーションされる
  • Rackspace社のCloud Filesで用いていた実装をもとにOSS化
  • OpenStackでは「主に」仮想マシンイメージの置き場として利用される
  • もともとDropBoxのような使い方が想定されていたため、普通のストレージとしても使える

Glance:イメージ管理機能を提供

図5:OpenStackシステム概要

OpenStackプロジェクトでのシトリックスの取り組み

シトリックスは、OpenStackプロジェクトに参加している企業の中でも、大規模な投資を行っており、特にハイパーバイザー対応、ロードバランサー(LB As A Service), ネットワーク(Network As A Service)のレイヤーにおいて貢献している。

ハイパーバイザー対応
XenServer対応はもちろんの事であるが、その他にもvSphere対応を行っている。また、買収したCloud.com社がHyper-V対応を行っていたため、OpenStackの商用ハイパーバイザー対応のほぼすべてにシトリックスは関わっている事になる。
Load Balancing as a Service(Project Atlas
負荷分散機能(ACL、Connection Logging、Connection Throttlingなど)を提供するREST APIの開発に関わっている。現在対応しているLoad Balancerはオープンソースのものになるが、今後はNetScalerへの対応なども考慮している。
Network as a Service
L2ネットワーク管理のためのAPIを提供するAPI開発にも関わっている。このレイヤーでは、NTTデータ、Cisco、Nicira Networkなども開発に参加している。

OpenStackの利用

Project Olympus

Project OlympusはシトリックスがOpenStackをベースに開発を行っている商用のクラウド管理ミドルウェアである。シトリックスがOlympusで行っている事は下記の通り。

  • 採用するOpenStackの徹底したテストと、安定したコードの採用
  • クラウド環境(OpenStack環境)に最適化なXenServerの開発
  • 他のハイパーバイザーへの対応(Hyper-V、vSphere)
  • より洗練したユーザーインターフェースの追加
  • 展開ツールや管理ツールの提供
  • 可用性や、エンタープライズクラスの機能追加
  • NetScaler, Citrix XenDesktop, Citrix XenAppとの連携

CloudStackにおけるOpenStackとの連携

OpenStackとCloudStackは非常に似たスケーラブルなシステムアーキテクチャを採用している。CloudStackのSecondary StorageにOpenStackのSwiftを組み合わせる事により、Amazon S3のような、分散ストレージサービスを提供する事も可能である。また、OpenStack APIとの互換性をサポートする予定となっている。これにより、OpenStack APIを使用して開発したツールから、CloudStackベースのクラウドを管理する事も可能となる。

今後も、OpenStackとの連携をさらに進めていく事になっている。将来的には、Project OlympusとCloudStackは統合されていく事になるであろう。今後の動向に期待していただければと思う。

次回は、クラウドで様々なサービスを提供するNetScalerを紹介したいと思う。

CloudStack Day Japan 2014実行委員

連載バックナンバー

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

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

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

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