*

OpenStack Rally入門

公開日:  |  By  |  OpenStack ,

RallyはOpenStackのプロジェクトの一つです。OpenStackのベンチマークツールと簡単に紹介されることが多いようですが、調べてみると実際にはより広い範囲をカバーしたものであることが分かりました。

この記事ではRallyについての概要と、そのユースケースについて、OpenStack Wikiや海外のブログなどを読んでみて分かったことをまとめました。

プロジェクト概要

まずRallyのプロジェクトについての基本的なところから紹介します。LaunchpadのRallyプロジェクトのページを見ると、このプロジェクトが登録されたのは2013/09/06で、Github上での初回コミット日は2013/8/4となっています。プロジェクトを立ち上げたのはMirantisで、現在も開発のほとんどはMirantisのエンジニアにより行われています。(Stackalytics 調べ)

余談ですが、Rallyは開発のタスク管理にTrelloを使用しています(RallyのTrello board)。Trelloは個人的に好きです。

Launchpadのプロジェクト説明として「Rally benchmark as a service for OpenStack.」と書いてあることからも分かりますが、OpenStack自体のベンチマークを目的としたサービスです。

しかし、Wikiの What is Rally? に書かれていることを読むと、Rallyは単なるベンチマークツールではないことが分かります。ここに書かれている通り、Rallyはベンチマークをそのサイクルに含むOpenStackそのものに対するCI/CD(Continuous Integration/Continuous Deployment)システムという表現が適切と感じました。

それはRallyが持つ機能からも分かります。

Rallyが持つ四つの機能

Rally Actions
OpenStack Wikiより引用

図が示すとおり、Rallyには大きく四つの機能があります。

  1. Deploy
  2. Verify
  3. Benchmark
  4. Generate report

それぞれの役割について簡単に見ていきます。

Deploy

ベンチマークを実行するには、まずベンチマーク対象を用意する必要があります。Rallyはもちろん既存のOpenStack環境を対象とすることが出来ますが、新規にOpenStack環境をデプロイし、そこに対してベンチマークを実行することも出来ます。

デプロイを実行する部分(Deploy engine)はプラガブルな機構になっており、好きなDeploy engineを選択できるようです。WikiにはDeploy engineの例として、DevStack, Fuel, Anvilが紹介されており、デプロイ先は物理、仮想を問わないとされています。

Verify

Rallyは対象のOpenStack環境が正しく動作することをTempestを実行することで検証します。将来的にはTempest以外のツールもサポートする予定とのこと。

“work in progress”と記載があるので、実際にはまだ使えないかもしれません。

Benchmark

対象のOpenStack環境に対して、シナリオに従ったベンチマークを実行します。
シナリオはRallyプロジェクトに集約されており、Pythonで実装されています。これらを参考にすればオリジナルのシナリオも書けそうです。

どのようにベンチマークを実行するかという定義はYAML/JSONで記述します。

詳細についてはWikiのConceptsページを参照して下さい。

Generate report

ベンチマークを実行した結果をグラフなどに出力することができます。ベンチマークの結果を直感的に把握するのに便利そうです。

WikiのRally in actionの項にいくつかのベンチマークのサンプルケースとその出力があります。

構築・運用目線でのRallyの活用

Rally UseCases
OpenStack Wikiより引用

RallyのWikiでは3つのユースケースが紹介されています。

  • Rally for Devs & QA
  • Rally for DevOps
  • Rally for CI/CD

OpenStackを構築・運用する立場という前提で考えると、上の二つのユースケースは参考になりそうです。(最後のユースケースは恐らくOpenStack開発者向け)

Rally for Devs & QAには以下の記載があります。

Deploy new OpenStack with
1) another configuration
2) code that fix performance issue
3) different third part components
(mysql or psql, rabbit or qpid)

Rallyを使うとデプロイから自動化されるため、上記のように設定を変えたりコンポーネントを切り替えて何度もベンチマークを繰り返すというような事がやりやすくなるでしょう。ある構成におけるボトルネックの発見や、最適な設定値にチューニングするような場合が考えられます。

また、”Rally for DevOps”のユースケースでは、既存のOpenStack環境に対して実際に起こりうる負荷をシミュレートしてベンチマークを実施することで、その環境がSLAを満たしていることを確認する流れが提示されています。

Rallyを用いてこのような品質評価を定期的に実施することで、より適切なタイミングでのスケールアウト実施の指標として使えそうです。

まとめ

Rallyについて調べた結果、単なるベンチマークツール以上の機能を有していることが分かりました。Rallyをうまく活用することで、品質の高いOpenStackの環境を構築・運用していくために役立ちそうだと思いました。

参考資料

  • Rally – OpenStack Wiki
    本家ドキュメントだけあってよくまとまっています、関連リンクも要参照。
  • Mirantis Blog
    Rallyの活用事例やTipsなど参考になる記事が多いです。

written by kkosaka

関連記事

no image

Swift 1.11.0 CHANGELOG の翻訳

by You Yamagata 2013.1.23(Swift関連の記事の一覧は インデッ

記事を読む

no image

Keystone認証の利用 ~ Swiftによるオブジェクトストレージシステムの構築(9)

by You Yamagata 2013.05.13 (Last updated 2013

記事を読む

no image

CLIによるSwiftへのアクセス(後編) ~ Swiftによるオブジェクトストレージシステムの構築(4)

by yamagata 2013/2/7(Swift関連の記事の一覧はこちらをご覧ください)前回の

記事を読む

no image

LVM上にインスタンスを作成する

OpenStack 担当 石川です。 実際に自分が使うか使わないかは置いておき、気になったオプ

記事を読む

howtocontribute

OpenStackコントリビューターへの道(OpenStack Advent Calendar 2014 12/12)

by Ikuo Kumagai (@kumagai19o) この記事はOpenStack Ad

記事を読む

summit_top

OpenStack Summit Vancouver Summary

5/18~5/22に開催されたOpenStack Summit Vancouver に参加してきまし

記事を読む

day2_3

OpenStack Upstream Training in Paris 参加報告

by Ikuo Kumagai (@kumagai19o) Bonjuor. またご無沙汰して

記事を読む

blog-ocata

Jujuで Ocataを含む様々なバージョンのOpenStack をデプロイする方法

祝OpenStack Ocata リリース!! ということで、早速デプロイして触ってみたいです。 前

記事を読む

tokyo2

OpenStack Summit in Paris (Day2)

by Ikuo Kumagai (@kumagai19o) 引き続き、OpenStack Su

記事を読む

no image

サーバ1台でのクラスタの構築 ~ Swiftによるオブジェクトストレージシステムの構築(2)

by yamagata 2013/1/21(Swift関連の記事の一覧はこちらをご覧ください)(1/

記事を読む

no image

ビットアイル総合研究所は、クラウド技術に関する調査&研究を通して、社会と会社に寄与していくことを目的に、ビットアイル・エクイニクスの企業内研究所として2011年8月に設立されました。

openstack-figure1-2x
COHO DataStream のCinder連携

OpenStack Cinder のストレージバックエンドとしてはCe

blog-ocata
Jujuで Ocataを含む様々なバージョンのOpenStack をデプロイする方法

祝OpenStack Ocata リリース!! ということで、早速デプ

newton
Juju Manual Cloud で OpenStack 環境構築

本当にご無沙汰しております。 この投稿はOpenStack Adve

top
HACK! THE Juju/MAAS

6/8~6/10まで幕張メッセで開催されたInterop 2016。皆

dpdk
OpenStack OVS VXLAN ネットワークの高速化

少し前の話になりますが、3月2日に開催された 日本仮想化技術株式会社様

→もっと見る

PAGE TOP ↑