DevStackをAWSで構築してみる
DevStackは、簡単に設定できると聞いて設定してみる。All-in-OneVMで、heatやneutronのコマンドを調べてみた。
AWSの画面も3年ぶりぐらいで見たが、ずいぶん整理されており、親切になっている。また、スポットインスタンスで作業するなら、1時間1.5円程度、月だと1000円程度か?構築時間も20分程度で完了するので、ちょっとコマンドの挙動を調べたいというレベルなら十分である。とはいえ、AWSの無料で使えるt2.microでもDevStackは、一部機能は動く(後述)。
- 手順
- ubuntuを選択する(メモリ3.75GB以上m3.medium以上)
- sudo apt-get install git
- git clone http://github.com/openstack-dev/devstack
- cd devstack
- cp sample/local.conf local.conf(devstackの設定。heat/neutronの構成が必要な場合は、このファイルを編集)
- ./stack.sh
- source openrc (OpenStack環境変数設定のため(この後、普通にコマンドが動くはず))
- 調査開始
- 参考にしたページ
- Devstack入門 · rafiror/openstack Wiki · GitHub
- OpenStack Docs: DevStack
- OpenStack DevStack Tutorial(主な設定ファイル等々)
- 各モジュールの設定
- デフォルトは、nova/cinder/glance/keystone/horizon/tempest
- Heat/GettingStartedUsingDevstack - OpenStack
- NeutronDevstack - OpenStack
- http://rally.readthedocs.org/en/latest/install.html#rally-with-devstack-all-in-one-installation(課題あり、openrcに設定する形式だと、パスワード設定が求められるので面倒。local.confの文末に最後のenable_plugin以下を記載するのが良いと思う。)
- Cinder on DevStack - Quick Start · rushiagr(Cinderは、設定の問題ではなく、ボリュームを作れば良かった。)
- 動作環境でのトラブル等々
- ドキュメント作成(openstack-manuals/api-site等)や、DevStackでkeystone/cinderだけなら1GB RAMのt2.microで出来る。しかし、デフォルトのDevStackは、4GB程度のRAMが必要である。
-
- t2.microの場合、keystone/cinderのみ利用ならば起動する。local.confに以下の設定を追加する。
-
- ドキュメント作成(openstack-manuals/api-site等)や、DevStackでkeystone/cinderだけなら1GB RAMのt2.microで出来る。しかし、デフォルトのDevStackは、4GB程度のRAMが必要である。
disable_service tempest
disable_service horizon
disable_service n-api
disable_service n-cpu
disable_service n-net
disable_service n-cond
disable_service n-sch
disable_service n-novnc
disable_service n-crt
disable_service n-cauth
disable_service g-api
disable_service g-reg
-
-
- AWSの無料のインスタンスである、t2.microでは、そのままではメモリ不足となり、(Liberty前の版では)nova-apiが起動しない。clean.sh等でスクラッチからやってみると、fork時のメモリ不足と出る。このため、m3.medium(3.75GB RAM)で稼動させた。参考までにm3.large(7.5GB RAM)にもしてみたが、体感スピードは変わらず(実際のところは30分から20分へ早くなっていた)。なお、このレベルなら、1時間2円程度で済む。
- DevStack起動時の各モジュールの物理メモリ使用量を見てみた。DBのメモリ使用量は、MySQLのほうが小さい。また、DBよりも各モジュールのほうがメモリ使用量が大きい。
- DB
- PostgreSQL 300MB
- MySQL 100MB
- nova 1600MB
- cinder 500MB
- glance 500MB
- keystone 700MB
- neutron 400MB
- DB
- 権限の問題で、失敗する場合がある。その場合"--os-username admin"と引数を追加すると実行できたりする。
- AWS内にubuntuのミラーサイトがあるようである。このため、構築も早くできる。3MBから10MB以上の速度が出ている。
- AWSで新しいスポットインスタンス画面での入札が出来るが、取り消しもその画面で取り消さないと取り消しにならない。旧画面で取り消しても、キャンセルは有効にならない。(知らずに過剰課金になる)
- DB認証問題の対処(アカウント名の変更)
-
- 仕組み