はじめてのOpenStack (PackStack) on VMWare Fusion

このblogは、OpenStack Advent Calendar 2013 jpの12/28のエントリです。

はじめに、ここでは、@saito_hidekiさんが書いたOpenStack Quick Startに沿って、OpenStack環境を構築しますので、最初にOpenStack Quick StartをPDFでダウンロードしておく事をおすすめします。

ただし、OpenStack Quick Startでは、VitrualBoxを使用していますが、ここではVMWare Fusionを使います。

環境構成図

MacBook Air 10.8.5 メモリ 8G, HDD 500G
VMWare FUSION 5.0.3
CentOS 6.5 (CentOS 6.4, 6.3では失敗したため)


作成手順

MBA (VMWare Fusion)の設定
環境構成図にあるように、Host Only Network x 2 (vmnet1, vmnet2), NAT Network x 1 (vmnet7)を作成します。
VMware Fusion 5 の network 設定 (応用編) - hrt10の日記 などを参考にしながら作成します。
じつはここで結構はまりましたorz


CentOS 6.5 (OpenStack環境)の作成

  • CentOS 6.5のスペック
    • メモリ: 2048M OpenStack Quick Startには4Gとありましたが、2Gで一応いけました
    • HDD: 20G .@giraffeforestg さんによれば、8Gで作成すると、Puppetがceilometerをインストール中にmongodbが、十分なディスク容量がないため起動しないらしくCeilometer系の機能が使えなくなるとの事ですので、20Gとしておきましょう。
    • CPU: 1 OpenStack Quick Startは、2 vCPUをアサインていましたが、1 vCPUで一応いけました
  • PerlとGitは必要なので、インストールしておきます。
  • VMWare Toolsをインストールしておきます。CentOS6.2にVMware Toolsをインストールするが参考になりました。

じつは、CentOS 6.3で、最初に試しましたが、Puppetのインストールスクリプトが3時間待っても終わらなかったので、OpenStack Quick Startの記述通り、CentOS 6.4にしました。
しかし、Puppetのインストールスクリプトが、opensslをインストールする所で、失敗するため、CentOS 6.5を使用しました。
PuppetでインストールするopensslのバージョンとOS の互換性による問題みたいです。


CentOS 6.5は、minimalでインストールします。NICを前述の通り、3つつけておく必要があります。


じつは、CentOS 6.5でも、最初失敗しましが、前述のVMWare FUSIONのネットワーク設定ミスがありましたのでそこを修正し、再度PackStackを実行した結果成功しました。ただ、.@giraffeforestg さんによれば、一度失敗してもきにせず、もう一度実行すると成功することもあるらしいので、VMWare FUSIONのネットワーク設定ミスに起因していたのかどうかは不明です。


all-in-one.confの変更

#Added by kimisan
CONFIG_QPID_ENABLE_AUTH=n
CONFIG_NEUTRON_LBAAS_HOSTS=


あとは、packstack --answer-file=all-in-one.confで、OpenStackの環境を構成してくれます。OpenStack Quick Startにあるように、1時間くらいかかりますが、気長に待つ事が重要です。


PackStackインストール後は、基本的にOpenStack Quick Start通りに設定すると、OpenStackの環境が出来上がります。

仮想環境である場合、PackStackインストール後、OpenStack Quick Startにあるように、/etc/nova/nova.conf を修正します。これがKVMであると、仮想マシンを実行できないようです。.@giraffeforestg さん談

libvirt_type=qemu

一応、VMWare FusionKVMを実行するときのおまじないもしました。VMXファイルに下記を最終行を追加します。Linux-KVMをVMware Fusionで動かそう!あとFreeBSD BHyVe……! が参考になりました。

vhv.enable = TRUE 

所感

PackStackとは、Puppetによる1台でOpenStackを構成する事が可能なツールです。確かに初心者でも簡単にOpenStack環境を構築する事ができ、OpenStackを始める人にとっては、ありがたいツールとなるでしょう。また、@saito_hidekiさんが書いたOpenStack Quick Startは非常によくまとまっており、必須の情報源になるでしょう。必ずPDFで落として参考にするといいでしょう。
ただ、Puppet君が、環境を構成するのに1時間程度かかるので、Puppetのスクリプトではまった場合は、私のように意外に時間がかかってしまいますorz


しかし、おかげさまで、1台のMBAにOpenStackとCloudStackの環境を共存させる事ができました。

あ、CloudStack側の構築レポートもありますので、もしよければどうぞw


ふ〜、この環境つくるために、貫徹した事はないしょw 

作業ログ (Twitter編)