Nested OpenStack構成

OpenStackの検証をやっていると、OpenStackの上の仮想マシンにOpenStackをインストールして検証を行うと色々削除作成が容易に出来て色々便利です。しかしながら通常だとvirt_type=qemuとなってしまいます。この場合はKVMが使えませんのでVMで作成されたOpenStack上でさらに仮想マシンを立ち上げると著しくパフォーマンスが劣化してしまう場合があります。これを解消するための設定を以下に記述します。注意点としてはパススルーしてしまうので、CPUの差分が吸収でき無くなり、Live Migrationができる機会が減ってしまう事です。

コンピュートノードの設定

コンピュートノード上でカーネルオプションのNestedを有効化します。

CPUがIntelの場合

“Nested OpenStack構成” の続きを読む

広告
Nested OpenStack構成

新しいOpenStackコマンドラインツール

現在OpenStackをCLIで設定する場合は各Project毎のコマンドラインツールを利用します。例えばComputeの操作はnovaコマンドを利用し、Networkの操作はneutronコマンドを利用します。この仕組みはでは、各Projectと機能を暗記しなければなりません。最初私もProject名を暗記出来なくて、何故このような仕組みになっているか理解出来ませんでした。仕組みを理解すれば納得はしますが、記法が各Projectで微妙に異なっていて統一コマンドラインツールが無いのは何かと不便でした。この問題を解消するために統一的なコマンドラインツールのopenstackコマンドが開発されています。今後各Project毎のCLIはDeplicate扱いとなりopenstackコマンドが標準となるようです。最新のkeystoneのCLIを利用した所そのようなメッセージが表示されました。

OpenStackコマンドを利用する

pipで公開されているため、pipでインストール可能です。pipがシステムにインストールされていなければeasy_installでpipをインストールしてください “新しいOpenStackコマンドラインツール” の続きを読む

新しいOpenStackコマンドラインツール

OpenStackとAPIパフォーマンス測定

OpenStackのパフォーマンスを測定を考えると様々な側面での測定があります。ゲストOSのCPU、NW、ストレージのパフォーマンスを測定する場合や、MariaDB / Rabbit MQ / Mongo DBがどの程度の処理を行えるかを測定する場合もあります。あるいはOVSのスイッチング性能や、L3性能の測定もあります。今回はOpenStackがどの程度APIコールを処理出来るかを測定したいと思います。OpenStack側で最大APIコール数のLimitを設けている場合もあるので測定時は注意ください。

APIコールの測定

OpenStackはRESTのAPIを提供していますので、APIコール数を測定したい場合はJMeterで計測する事や、Pythonでスクリプトを組んで測定する事も出来ます。今回はMirantisがメインに開発しているOpenStack用の計測ソフトウェアであるRallyを使ってみたいと思います。 “OpenStackとAPIパフォーマンス測定” の続きを読む

OpenStackとAPIパフォーマンス測定

OpenStackとVMDKイメージ

OpenStackでハイパーバイザーをVMwareで選択した場合は、KVMで通常利用しているQcow2イメージでは無くVMDKイメージを利用することになります。今回は実は深くて問題が幾つかあるVMDKイメージの話題を書きます。

イメージのフォーマットについて

VMDKイメージを利用するのはもちろんですが、実はVMDKファイルにも様々なフォーマットが存在します。OpenStackではVMDKファイルのSparseとFlatのイメージ形式に対応しています。残念ながら作成済みの仮想マシンをOVFとしてExportするとStream OptimizedのイメージとなりOpenStackでは利用出来ません。OpenStackのサポートしているイメージ形式へのコンバートはVMwareの提供しているvDisk Managerを利用してコンバートが可能となっています。Stream OptimizedのOpenStackでのサポートは2014年12月に開発中のMasterレポジトリにマージされましたので、Kiloリリース以降で予定されています。

https://review.openstack.org/#/c/71173/ “OpenStackとVMDKイメージ” の続きを読む

OpenStackとVMDKイメージ

OpenStackとVMwareとNW連携

OpenStackでVMwareをHypervisorとして選択するとNWの部分は必ずつまずく点になります。結論としては残念ながらOpenStackからVMwarere連携に対応している何らかのSDN製品を別途用意する必要があります。多くのOpenStack対応としているSDN ControllerはKVM前提としている事が多いので選択肢はそれほど多くありません。

現在実装されている方式

OpenStackでNW連携を行う場合はNova Networkを利用する場合とNeutronを利用する方法があります。VMware連携を行う場合も同じく両方の方式を利用する事が出来ます。KVMと同様に現在はNeutronが推奨されているのですが、Nova Networkの方が選択肢は幾つかあります。 “OpenStackとVMwareとNW連携” の続きを読む

OpenStackとVMwareとNW連携

DevstackでVMware連携を利用する

OpenStackの開発版や、Community版のOpenStackを利用したい場合にはDevstackの利用が便利です。多くのDevstackの使用例はKVM前提となっているのでVMware連携時のDevstackの利用方法を書きます。

Devstackの準備

まずは通常どおりDevstackの準備を始めます。Ubuntuを利用する場合は14.04を使った方が無難です。12.04を使うと標準パッケージの幾つかがMinimum Versionを満たさないためそのままではDevstackの実行が失敗します。そのため実行前に各種パッケージをあげとく必要があるので14.04の利用をお勧めします。以下のコマンドでLocalにDevstackを落として来ます。事前にgitをインストールしておき、Root以外のアカウントで実行してください。

git clone https://git.openstack.org/openstack-dev/devstack

stable/juno等の指定をするとリリース済みのパッケージも選択出来ます。

git clone https://git.openstack.org/openstack-dev/devstack -b stable/juno

“DevstackでVMware連携を利用する” の続きを読む

DevstackでVMware連携を利用する

OpenStackとVMwareの連携

VMWareからVIO(VMware Integrated OpenStack)が発表されたようにVMwareもOpenStackとは良い関係性を持つように努力しています。今回はOpenStackとVMwareの連携の一部解説とPackStackを使った環境構築を行いたいと思います。VMwareは近い商品としてはvRA(vRealize Automation)を持っています。この製品はOpenStackと同じIaaS基盤ですが、OpenStackとの連携機能も持っています。vRAは旧vCACとなります。現在VMware社の製品であるvSphereとNSXと連携可能なのは、OpenStackのNova / Glance / Cinder / Ceilometer / Neutronになります。今回はNova / Glance / Cinder連携の部分に焦点を当ててざっくり解説します。OpenStackはあくまでKVM/Xen利用時に全ての機能が利用できるのでVMwareを利用する場合は、どの機能がサポートされているかは逐一確認と注意をする必要があります。 “OpenStackとVMwareの連携” の続きを読む

OpenStackとVMwareの連携