我が家のOpenStack server
Table of Contents
⚠️ 本記事の執筆には生成AIを大いに利用しています。
こんにちは。みなさん、自宅サーバしてますか?してますよね?
というわけで、今回は私が自宅サーバで運用しているOpenStack環境を、ハードウェア/ソフトウェア両面の構成、さらにちょっとしたこだわりポイントまで、まるっと紹介したいと思います。
(ちなみに、このブログも自宅のOpenStack環境で動いています!)
1. 我が家のOpenStack、ざっくり概要
- OpenStack バージョン: 2024.02 “Dalmatian”
- OS: Ubuntu 24.04 “Noble”
- 構成:
- Management Node × 1(iPXE / DHCP / DNSサーバ)
- Controller Node × 1
- Compute Node × 2
- Block Storage Node × 1
- 用途:
- インテリア(!?)
- 仮想化の勉強
- OSSを動かして遊ぶ
- ISUCONの練習とか
2. ハードウェア構成
ここからはハードウェアの構成を紹介していきます。 ちなみに見た目はこんな感じです。

ルータ
- YAMAHA RTX810
- 家庭内LANとの境界に設置しているVPNルータ
- L2TP/IPSecで外出先でもVPN接続可能!(後述)
- Buffalo BHR-4GRV2
- VMセグメントのゲートウェイ
- 有線ルータ
- DMZ機能を利用して管理セグメントからVMへの通信を通せて便利
- NEC WG2600HS2
- 管理セグメントのゲートウェイ
- Wi-Fiを喋れるので管理面への接続が楽ちん
- DMZ機能なしのため、VPNセグメントからの通信はポートフォワーディングで対応
L2スイッチ
-
ELECOM EHC-G08MN2-HJB
- 1Gbps × 8ポート
- VMセグメント用
-
FOXNEO
- 2.5Gbps × 8ポート + 10G SFP+ ×1(SPFは未使用)
- 管理セグメント用
- VMのルートボリュームとかに使うblockstorageの通信をこっちに流すので、こっちに2.5Gbpsスイッチを使っている
サーバ構成
- Raspberry Pi 4
- Management Node(iPXE/DHCP/DNS)
- 4 cores 4 threads / 4GB RAM
- Raspberry Pi 5
- OpenStack Controller Node
- 4 cores 4 threads / 8GB RAM
- FUJITSU LIFEBOOK
- Compute Node 1
- 4 cores 8 threads / 8GB RAM
- 大学生のとき使っていたノートPC
- 自作ゲーミングPC
- Compute Node 2
- Intel Core i5 13400F 10 cores 16 threads / 32GB RAM
- パルワールドのために組んだやつをWindows/Ubuntuデュアルブートしている
- 2.5GB NIC × 1 (onboard) + 10GB NIC × 2 (PCIe)
- GMKtec miniPC
- Block Storage Node
- AMD Ryzen 7 5825U 8 cores 16 threads / 16GB RAM
- 2.5GB NIC × 2
UPS
- オムロン UPS BW55T
- お守り
3. OpenStack構成
- OpenStack controller node:
- API servers
- keystone / nova / neutron / placement / glance / cinder
- Dashboard
- horizon
- DB
- mysql
- Messaging Queue
- rabbitmq
- API servers
- OpenStack compute node × 2:
- nova-compute
- neutron-openvswitch-agent (ovnにしたい、、、!)
- OpenStack blockstorage node:
- cinder-volume (lvm driver)
ブラウザからhorizonにアクセスしてVMの作成等を行えるようになっています。

また、OpenStackの構築は*自作のAnsible Playbookで行っています! それについては こちら の記事で紹介しているのでぜひご覧ください。
4. 推しポイント紹介!
その1 ネットワークブート
Raspberry Pi 4でiPXEブートサーバを構築を構築しています。
- DHCPサーバ:iPXE用の一時IP配布
- TFTPサーバ:iPXEブート用ファイル配布
- HTTPサーバ:Ubuntuイメージ&cloud-init config配布
新規サーバをLANに繋いで電源を入れるだけで、Ubuntu Nobleが自動インストールされます!すごい!🎉
その2 自宅VPNでどこでも接続!
L2TP/IPSecでVPN接続して、自宅のOpenStack環境に外出先からでもアクセスできます!
VPNの向け先はグローバルIPを直接指してるので、ISPに変えられたら繋がらないです、、、 DDNSとか使いたいなぁとは思っている。
5. 今後やりたいこと
- RPI5に NVMe SSD を取り付けたい
- せっかくRPI5を買ったので
- SDカードをルートボリュームにしたRPI5をコントローラノードにしているせいか、APIサーバの応答が結構遅い
- Block Storage Nodeで Ceph構築
- Glance storeとしても使える?
- モニタリング環境(メトリクスや死活監視)
- 自宅サーバ落ちたら上に載ってるサービスをAWS環境に切り替えるとかもしたい
- KubernetesベースでOpenStackを再構築
- 10G通信 も試してみたい
- NICはある
おわりに
この環境は完全に趣味の産物ですが、自宅でのインフラ遊びとしては最高に楽しいです。 もし、同じように「自宅でOpenStackやってみたい!」という方がいれば、参考にしてもらえると嬉しいです!