Chillarin Blog 構成紹介 - 1.物理・仮想基盤編(NUC×3 + Proxmox)-
ちらりんブログの土台、NUC×3 で組んだ Proxmox クラスタと VLAN 設計を解説。家庭 NW と検証/運用 NW を分離し、管理系と VM 系を Catalyst3560 + Cisco1111 で明確に切り分けた構成判断を共有。
本章の内容
前回(0.全体像編)で「ブログ基盤の全体像」を描いたので、今回はその土台になる 物理・仮想基盤 の話です。
- 家庭NW(家族も使う)と、検証/運用基盤(Proxmox/NAS)を分離する
- NUC×3 で Proxmox クラスタを組む
- VLAN で “管理NW” と “VM用NW” をきっちり分ける
ゴール:この構成を読んだ未来の自分が「なぜこうしたか」をすぐ思い出せること。
物理構成(Cisco 1111 → Catalyst 3560 → NUC×3)
昔っから我が家のルータ/スイッチはCisco製品。 ※いつもヤフオクにお世話になってます やはりエンタープライズ製品は色々と細かい設定が可能なので自宅LAB構築においては強い味方になっております。
サーバに関しては一部界隈で流行っていたIntel NUC、今は生産中止になって(ASUSへ売却)しまいましたが、家の片隅でほこりをかぶらせておくのも勿体ないので、我が家ではまだまだ働いてもらっております。
ストレージはQNAPを採用してます。 NASは「容量の逃げ場」を作れるのが最大のメリットで、ラボが育ってきた時に効いてきます。 今はVMは各NUCのローカルに置いてますが、容量が厳しくなったり、バックアップやISOの置き場を整理したくなったら、QNAP側へ寄せていく想定です。
ちなみに、我が家はQNAP/Synology両方ありますが、どちらも甲乙つけがたいです。
本題に入りますが、物理構成を図にするとこんな感じとなります。

論理構成は全体構成でもご紹介しましたが以下のようになっております。

- ルーティングポイントは Cisco 1111
- LAN側の通信はCisco 1111のWAN側IPにPATされインターネットへアクセス
- インターネット側からLAN側へのアクセスは許可していない※ Static NAT等も未使用
- Catalyst 3560 は **L2SW として運用
- 3560→NUC は trunk。native VLAN を 401 に設定して通していますoxmox自体)は VLAN401 untagged(native)で接続
- VM/LXC は必要に応じてTag付きで通信を出す ※例: tag=402で出す
VLAN設計(論理構成)
VLANは3本に整理しています。
なぜVLANを分けるのか
自宅LABでVLANを分ける最大の理由は 「家族のNWと検証基盤を混ぜない」 ことです。検証環境で何か壊しても家族のインターネットが止まらないようにするのが大前提。さらに、Proxmoxの管理通信とVM間の通信を分離しておくと、将来VMを増やしたときにブロードキャストドメインが肥大化しません。
デフォルトGWは全部末尾 254 で統一しています。こうしておくとどのセグメントでも「GWは .254」と覚えるだけで済むので運用がラクになります。
Proxmoxクラスタ(NUC×3)
NUCは3台で運用しています。
nuc1.chillarin.com(SWNUC11PAHi7)nuc2.chillarin.com(BXNUC10i7FNH1)nuc3.chillarin.com(NUC7i7BNH)
pvesh get /nodes で確認すると、3ノードが online で動作しています。
Proxmoxのネットワーク設計(vmbr0 + trunk + VLAN tag)
各NUCは、管理NW(VLAN401)に vmbr0 でぶら下がっています。
管理NW(VLAN401)
NUC側は vmbr0 に管理IPを持たせています(Static)。
nuc1(例)
VLAN-aware bridge を使って vmbr0 を構成しています。VLAN-aware をONにしておくと、将来 vmbr0 上で複数VLANを扱う/VM移動する時に事故りにくいので先に入れてます。
nuc2 / nuc3 も同じ思想
- nuc2:
172.16.1.2/24 - nuc3:
172.16.1.3/24
VM用NW(VLAN402)
VM用NW(VLAN402)は “VMのNICに VLAN tag を付ける” 方式にしています。
- 3560⇔NUC が trunk
- native VLAN は 401(= 管理NWは untagged)
- VLAN402 は VM 側で tag=402 を付けて流す
Proxmox の GUI だと、VMのネットワークデバイスで以下のように設定します。
- ブリッジ:
vmbr0 - VLANタグ:
402 - モデル:
VirtIO-(必要なら)Firewall:ON
メモ:native VLAN(401) の VM は、VLANタグを “空欄” にして untagged で出すのが運用的にラクです。
収容しているVM / LXC
各NUCにどのようなVM/LXCを収容しているかの方針です。
- nuc1: メモリ 64GB を活かし、メモリを多く使うワークロード(メディアサーバ等)を収容
- nuc2: CPU 12コア + メモリ 64GB のバランス型。ブログサーバやGPUパススルーが必要なワークロードを収容
- nuc3: メモリ 32GB の軽量ノード。現状は予備/軽量ワークロード用
※本来ならここら辺の運用方針を固めてから仮想マシンの展開をするべきですが、自宅LABかつ現状困ってないので。。。
ストレージ設計(local-lvm + NFS)
ローカルは local(dir)と local-lvm(lvmthin)でベースを持ちつつ、NASを NFS としてマウントして運用しています。
local/local-lvm:OS・VMディスクのベースnas-iso/nas01:ISO置き場、共有、バックアップ寄り(運用に合わせて役割分担)
ZFS は現時点では使っていません。NUCのストレージ構成(1台にNVMe 1本)だと ZFS の冗長化メリットが薄いためです。将来NASをZFSバックエンドにする可能性はあります。
ここまでのまとめ
- Cisco 1111 が L3(ルーティング/GW)
- Catalyst 3560 が L2(trunk で VLAN を運ぶ)
- NUC×3 で Proxmox クラスタ
- VLAN401 = 管理、VLAN402 = VM用 を分離
- VM側は Proxmox の VLAN tag 機能で VLAN402 を実現
- NAS(QNAP)は主に VLAN401 側に置き、ISO/バックアップ/将来のVMストレージ拡張先として利用
次回は、この基盤の上で Cloudflareを利用してどのようにブログを公開しているか を掘ります。
自宅サーバ運用の全体像は 自宅サーバ運用の完全ガイド — Proxmox + Cloudflare Tunnel + Docker で個人ブログを公開し続ける にまとめています。Proxmox クラスタ・公開経路・Docker 本番化・障害対応までを 1 ページで通読できる Pillar ガイドです。
コメント