OpenStack Ussuri をマニュアルインストールしてみたメモ
OpenStack Docs: OpenStack Installation Guideは頻繁に更新されるので、このメモは参考程度に最新版のドキュメントに倣ってインストールした方がよいです
概要
OpenStack Docs: OpenStack Installation GuideのMinimal deployment for Ussuriをほぼそのままやっていく
アーキテクチャ
コントローラノード 1 台、コンピュートノード 1 台(下図のような感じ)で構築する
Project | Description |
---|---|
Keystone | 認証を司る(めちゃくちゃ重要) |
Horizon | Web UI を提供する。Web からぽちぽち操作して VM やらネットワークやらを簡単に操作できるようになる(CLI ですべて操作する場合は不要) |
Glance | OS イメージを管理する。libvirt とかでおなじみの/var/lib/libvirt/images にあたる |
Cinder | インスタンスに永続的なブロックストレージを提供する |
Placement | CPU やメモリの使用率をはじめとするリソース情報を収集して計画的に VM を配置したりする |
Neutron | インスタンスのネットワークを管理する |
Nova | VM インスタンスの起動・停止など管理する。インストールガイド通り進めると裏でlibvirt を叩くようになっているはず |
- だいぶ雑な理解なので詳しくは公式ドキュメント漁ってください…
- ちなみに各サービスの公式マスコットはこちらから
マシンスペック
Ubuntu 20.04 Server 想定での最低リソース
Node CPU RAM Disk1 Disk2 (for cinder) Controller 1-2 6G+ 25G+ optional (50G+?) Compute 2+ 4G+ 25G+ - - コントローラノードにいろいろ載せるのでメモリは最低でも 6G ぐらいあったほうがよい
- 4G でやっていたらインストール終盤で使い潰していた経験あり
でもメモリ 6G ってなんか気持ち悪い- 余裕あるなら CPU コア数も増やしていいかも
- Cinder(インスタンスに永続的なブロックストレージを提供するサービス)用にコントローラノードにはメインのディスクとは別にもう一つディスクを用意する
- コンピュートノードはインスタンスを実際に起ち上げるので余裕がある限りスペックを強くしておくとよい
- コントローラノードにいろいろ載せるのでメモリは最低でも 6G ぐらいあったほうがよい
NIC
Node NIC1 (for Management) NIC2 (for Provider) Controller CONTROLLER_MANAGEMENT_IP - Compute COMPUTE_MANAGEMENT_IP - - NIC は管理用ネットワークとプロバイダネットワーク(インスタンスを建てたいネットワーク)の最低 2 つはあった方がよい
- NIC1 のアドレスは環境に応じて適宜読み変えてください
- 図の例では
CONTROLLER_MANAGEMENT_IP
: 192.168.0.11COMPUTE_MANAGEMENT_IP
: 192.168.0.12
- 図の例では
- NIC2 にはアドレスを振らない
- 振っても動くといえば動くが Neutron がものすごい勢いでエラーログを吐き続けることになるので振らないほうがよい
インストール手順
環境構築や各サービスのインストール手順は下のリンクであげています
- OpenStack Ussuriマニュアルインストールその1―環境構築編
- OpenStack Ussuriマニュアルインストールその2―Keystone編
- OpenStack Ussuriマニュアルインストールその3―Glance編
- OpenStack Ussuriマニュアルインストールその4―Placement編
- OpenStack Ussuriマニュアルインストールその5―Nova編
- OpenStack Ussuriマニュアルインストールその6―Neutron編
- OpenStack Ussuriマニュアルインストールその7―Horizon編
- OpenStack Ussuriマニュアルインストールその8―Cinder編
- OpenStack Ussuriマニュアルインストールその9―起動編