クラウドネイティブアプリケーション検証
2014年10月~2015年3月
プロジェクト概要
本検証ではクラウドネイティブアプリケーションの一つである、RACKにの検証を実施する。
クラウドネイティブアプリケーションとは、プログラマブルにクラウド環境の制御を行いサービスを実現するアプリケーションである。クラウドネイティブアプリケーションを開発する場合、クラウド環境で提供されているネイティブなAPIを利用し開発者が一から実装することが必要となる。RACKを用いると、クラウドネイティブアプリケーションを開発する上で必要なAPIが提供されているため、比較的容易に開発が可能となる。
RACKとは、Real Application Centric Kernelの略称。CTC伊藤忠テクノソリューションズが開発し、OSSとして公開しているアプリケーションフレームワークである。RACKは、OpenStack上で直接動作するアプリケーションを簡単に作成するための仕組みを提供しており、プログラマはRACKを使うことで、OpenStackとの連携を意識せずに、OpenStack上のリソースをスケールさせることができる。
プロジェクトの背景
RACKアプリケーションを動かす場合、動作環境の構築に手間がかかってしまう。また、全てCLIベースなので、簡単にRACKアプリケーションを試すことができない。そのため、容易にRACKを動かせるようにWEBのGUIから動作できるRACKアプリケーション開発Toolを開発し、RACKアプリケーション開発の効率化を検討した。
1.アプリケーションプログラムの作成
2.アプリケーションを組み込んだ仮想マシンイメージの作成
3.アプリケーションの実行
RACKアプリケーション開発は1.~3.の繰り返しを開発者が行うが、CLIで毎回実行するため煩雑になる。沖縄オープンラボでは、RACKアプリケーション開発をより簡易的におこなえるようにRACKアプリケーション開発Tool(以降RACK WEB Tool)を開発した。RACK WEB Toolを用いると2.~3.の一連の作業をGUIで行い開発の効率化が可能と考える。
RACK WEB Toolを用いたRACKアプリケーション開発は、Gitにソースを登録し(Push)、そのソースが実行できる仮想マシンのイメージを作成(Build)、アプリケーションの実行(Load&Run)の流れで行う。