デブサミ「オラクルのエバンジェリスト2人が考えるクラウド・プラットフォーム」まとめ

2/18に、Developers Summit 2010 (デブサミ2010) で「オラクルのエバンジェリスト2人が考えるクラウド・プラットフォーム」という講演を行いました。今回は、その講演の内容を簡単にまとめておきます。

講演資料は、SlideShareにアップロードしています。

講演は3つのパートに分かれていて、最初の2つのパート「オラクルのクラウド戦略」と「Oracle JRockit Virtual Edition」を僕が、最後の「ストレージ・グリッド」を中嶋さんが話しました。

ラクルのクラウド戦略

ますますバズワード化が進む「クラウド」なるものに対してオラクルは積極的ではないと思われがちです。そこで、このパートでは、クラウド・コンピューティングという観点で利用可能な、オラクルの製品や技術スタックを概説しました。

クラウド・コンピューティングでは、提供されるサービスのレイヤとして、IaaS、PaaS、SaaSという分類が、また、クラウドのサービスを提供する実体を企業内にもつかどうかという観点で、パブリック・クラウド、プライベート・クラウド (あるいは、それらのハイブリッド) という分類があります。

パブリック・クラウドとしては、オンプレミスのCRMとして実績のあるOracle Siebel CRMをベースにしたSaaSCRMとして、「Oracle CRM On Demand」を提供しています。

また、オラクル製品をAmazon Web Services (AWS) 上で利用するソリューションも展開しています。Oracle DatabaseやOracle WebLogic Serverなどを、Amazon EC2上で利用するためのAMI (Amazon Machine Image、AWS向けの仮想マシン・イメージ) を公開したり、Oracle DatabaseのバックアップをAmazon S3上に保存するツールを提供しています。

他にも、Rackspaceが提供するRackspace Cloud上でOracle DatabaseやOracle WebLogic Serverなどを利用するソリューションも展開しつつあります。

とはいえ、(初期コストではなく) TCOの削減、セキュリティ、コンプライアンスQoS制御、他システムとの統合などのために、企業内でのプライベート・クラウド環境構築に興味を持っている企業ユーザーが増えてきています。

「プライベートIaaS」構築のために、オラクルのサーバー仮想化製品「Oracle VM」や運用管理製品「Oracle Enterprise Manager」を利用することもできますが、さらなる効率化向上のために「プライベートPaaS」への道を進むことを、オラクルは推奨しています。

IaaS/PaaS構築のためのオラクルのテクノロジー製品群は、次の通りです。

多数のシステムを集約するプライベートIaaS/PaaSを実現するには、1つの物理サーバーを論理的に「分割」して使うサーバー仮想化だけではなく、複数の物理/仮想サーバーを協調動作させて1つの「サービス」とする「グリッド・コンピューティング」がますます重要になってきます。

ラクルは、中間層、DB層、ストレージという幅広いレイヤにわたり、実績あるグリッド・コンピューティングの実装を提供しています。これらを活用することで、プライベートPaaSの実現がより現実的になります。

  • アプリケーション・グリッド
  • データベース・グリッド
    • DBサーバーのグリッド化
    • Oracle RAC (Real Application Clusters) など
  • ストレージ・グリッド
    • 複数のストレージのグリッド化
    • Oracle ASM (Automatic Storage Management) など

プライベートPaaSは、実は、これまで一部の企業で取り組みが進んでいた社内システムの「共通基盤」構築を進化させた概念と考えることもできます。たとえば、データベース・グリッド (RAC) /ストレージ・グリッド (ASM) を構築した「楽天トラベル」、アプリケーション・グリッド (WebLogic) を構築した「クレディ・スイス」の事例が、プライベートPaaSへの道を示しています。


Oracle JRockit Virtual Edition

Oracle JRockit」は、Java仮想マシン (JVM)「Oracle JRockit JVM」を中心とした製品ファミリーです。ガベージ・コレクションによる停止時間を抑制するを「確定的ガベージ・コレクション」が可能なJVMOracle JRockit Real Time」や、JVMの管理/監視/プロファイリング・ツール「Oracle JRockit Mission Control」があります。

このOracle JRockitに、近い将来追加される新しい製品「Oracle JRockit Virtual Edition」(JRockit VE) をご紹介します。

プライベート・クラウド環境では、アプリケーションはサーバー仮想化環境で動作する場合が多くなります。Javaで書かれたサーバー製品を動かす場合を考えると、物理H/WとJavaアプリケーションの間に、の上に、ハイパーバイザー、OS、JVMと、仮想化/抽象化のレイヤが3つも含まれることになります。

JRockit VEは、OSを排除し、ハイパーバイザー (Oracle VM) 上でネイティブに動作するJVMです。JRockit VEは、単一のJavaアプリケーションを動作することだけに特化することで、メモリの効率的な利用をはじめとする、Linuxのような汎用的なOSでは実現できなかったさまざまな最適化を実現しています。

汎用OSを排除できるJRockit VEによって、デプロイ/運用管理の簡素化、性能/スケーラビリティ向上、セキュリティ向上が可能になります。

Oracle VMでは、「VMテンプレート」と呼ばれる仮想マシン・イメージの作成/利用が可能です。JRockit VEを使うとVMテンプレートの作成や管理が簡単になり、実行時のメモリなどのリソース消費が抑えられ、さらなる「高密度化」が可能になります。

ラクルは、今後「Assembly Builder」と呼ばれる新しいツールの提供も計画しています。VMテンプレート (アプライアンス) は1つの仮想マシンのイメージですが、現実の企業システムは、DBサーバー、APサーバーなど多階層にまたがる場合がほとんどです。アプライアンスだけでは、アプライアンス間の依存関係 (たとえば、APサーバーでの、DBサーバーへのJDBC接続プールの設定) は管理できず、ハイパーバイザー上で起動した後に追加の構成作業が必要になります。

Assembly Builderを使うと、多階層にまたがる複数のアプライアンスの構成を事前に行っておくことで、完全に動作する複数のアプライアンスのセット (アセンブリ) を作成し、それを簡単にハイパーバイザー上で起動できるようになります。

このように、オラクルはプライベートIaaS/PaaS構築のためのさらなる機能強化を進めていきます。