Home Lab初心者のためのハードウェアガイド
(linuxblog.io)- Home Labは、自宅でネットワークやサーバー構成を安全に実験するためのサンドボックス環境であり、リモートバックアップやモニタリングから機器テストまで、本番環境への負荷を気にせず扱える
- 導入前には、温度、換気、電源、騒音、ほこり、ケーブル経路といった物理的条件を先に確認し、自宅の構造に合ったネットワーク図を描いておくとよい
- ラックとキャビネットは機器の奥行きや発熱によって選び方が変わり、浅いネットワーク機器と奥行きのあるサーバー機器を同じ基準で選ぶと、冷却性やアクセス性が損なわれることがある
- ISPモデム、ルーター・スイッチ、UPS、パッチパネル、ケーブル、サーバーを最初からすべてそろえる必要はなく、小さな構成から始めて電力と拡張余地を調整していくのが現実的
- 2020年に12Uラックから始めた構成は、6年で10Gアップリンクと2.5G LANまで拡張されたが、重要なのは高価な機器よりも運用可能な配置と電力管理にある
Home Labの目的と運用範囲
- Home Labは、自宅で安全に実験できるテスト環境であり、新しい設定を本番機器に直接適用するリスクを減らせる
- 運用例は次のとおり
- リモートバックアップ
- リモートサーバーのネットワーク監視と通知
- 有線UAP AP
- さまざまな機器やサービスの実験
- この構成は2020年に初公開されて以来、継続的に更新されており、2026年3月時点の構成の変化と6年間のタイムラインを含む
設置場所を選ぶ基準
- Home Labの設置場所は、温度と換気、ケーブル配線、アクセス性、電源、騒音、ほこり、人の往来をあわせて見る必要がある
- 候補場所ごとの長所と短所ははっきりしている
- ホームオフィス: 机と機器が近くケーブルを短くできるが、ホームオフィス自体がない場合や、すでに長時間過ごす空間である場合がある
- リビング: 比較的涼しくスペースもあるが、人通りが多く破損のリスクがある
- クローゼット: アクセスしやすく隠しやすいが、換気とスペースが不足しやすい
- 地下室: 比較的涼しいが、浸水やアクセス性の問題が起こりうる
- 屋根裏: 騒音が少なくケーブル配線もしやすいことがあるが、地域によっては高温・雨漏り・湿気の問題がある
- ガレージ: 室内の騒音を減らせて目立ちにくいが、虫・熱・ほこり・長いケーブル・車両による破損のリスクがある
- 実際の構成ではホームオフィスに設置しており、ノートPC・デスクトップ・サーバー・その他の機器が同じ空間にあるため、ケーブル配線を短く保てた
- 設置前にはホームネットワーク図を描くか、ネットワーク設計ツールを使って配線経路と家の構造を先に確認するとよい
ラック、キャビネット、機器収納方式
- ネットワークキャビネット・ラックとサーバーキャビネット・ラックは混同されやすいが、ルーター・スイッチ・パッチパネルは通常サーバーより浅く、発熱も少ない
- サーバー用機器を入れる予定があるなら、ネットワークキャビネットでは奥行きや換気が不足する可能性があり、ガラス扉付き製品は放熱に不利なことがある
- キャビネットとラックを選ぶ際は、まず設置環境を見るべき
- 大型で重いサーバーを設置するなら、キャビネットや4面ラックの安定性が重要
- 機器の側面・背面に頻繁にアクセスするなら、オープンラックや側面着脱式キャビネットが有利
- 追加冷却が必要な機器では、密閉型キャビネットの換気設計がより重要
- ほこりの多い部屋では、キャビネットのほうが機器保護に向く
- リビングのように来客のある空間では、施錠できるキャビネットのほうが見た目をすっきりさせやすい
- アクセス制限やセキュリティが必要なら、ロック機構付きキャビネットが適している
推奨ハードウェアと選定基準
- 製品価格はAmazonの現在価格基準のため変動することがあり、一部のAmazonリンクは報酬型リンク
-
ISPケーブルモデム
- 初心者は、ラック全体を組む前でもISP提供モデムを交換するだけでホームネットワーク実験を始められる
- 米国の多くのISPはモデムのレンタル料を毎月請求するため、自分で購入することにコスト面の意味がある場合がある
- ISP提供のモデム・ルーター一体機は品質が低かったり中古だったり、機能が不足していたりすることがあり、新たな脆弱性が見つかった際のファームウェア更新をISP任せにせざるを得ないこともある
- 良いISPと十分な機器を使っているならそのままでもよく、交換の理由は追加のネットワーク機能とHome Labの実験環境を確保するため
- ケーブルインターネットの例として、Motorola MB7621 32×8、Motorola MB8611 DOCSIS 3.1モデルがある
- 光回線では、事業者によってはONTを自分で交換できる場合もあるが、多くの構成ではONTはISPが管理し、ユーザーはルーター以降を制御する
- ケーブルモデムは発熱が大きいため、ラック上部に置くか、上下に空気が流れるスペースを確保する必要がある
-
ラック
- ラックユニットのUまたはRUは1 3⁄4インチ、44.45mmで、19インチ・23インチラックフレームや機器の高さを表す単位
- 一般的なフルサイズラックの高さは42U
- 例示機器:
- StarTech 12U Wall Mount Rack: 奥行き13.5インチ、幅19インチ、耐荷重125lbsで、2020年から使用している12U壁掛けラック
- Samson SRK-12 Universal Equipment Rack Stand: 浅い機器と互換性のあるオーディオ機器ラックで、キャスター付きのため壁や床に固定しなくてもよい
- NavePoint 9U Basic IT Wall Mount Network Rack Locking Glass Door: 見た目のよいネットワークキャビネットだが、夏にしかエアコンを使わない環境では密閉型キャビネットは適さなかった
- ラック機器を測る際は、ラック内部の幅ではなく、ラック棚板の幅と機器の幅を比較する必要がある
-
UPS
- プロパンのバックアップ発電機があり切り替えに約1分かかる環境だったため、100W〜200Wの負荷を数分維持できるUPSが必要だった
- CyberPower OR500LCDRM1U UPSは500VA/300W、6口コンセント、AVR、1Uラックマウント製品で、重さは約20lbs
- このUPSは、バッテリーを約50%まで使った際に、PoE AP 2台と27インチモニターを含めて30分を少し超えるランタイムを示した
- UPSは長時間稼働を目指すとコストが大きくなるため、必須の低消費電力機器を安全にシャットダウンできる時間を確保する構成が現実的
- PoE APはそれぞれ最大約9Wで、UPS負荷を20〜30%程度に抑えるのに役立つ
-
棚板と電源
- 1U UPSにラックマウントがない場合は機器の上に置けるが、バッテリーを涼しく保ち熱の蓄積を減らすには通気型1U棚板が適している
- AC Infinity Vented Cantilever 1U Universal Rack Shelfは奥行き6インチから16インチまであり、通気孔とスロットが冷却とケーブル整理に役立つ
- CyberPower UPSには6口のコンセントがあり、このうち4口はバッテリーバックアップとサージ保護、2口はサージ保護専用
- ADJ Products AC POWER STRIP PC-100Aは1U CyberPower UPSに直接接続でき、機器ごとの電源オン・オフを簡単にできる
- コンセントセーバーと1Uブランキングパネルは、電源活用とラック内のエアフロー改善に使える
冷却、ネットワーク、ケーブル、サーバー構成
-
冷却
- ラック機器の適切な温度維持は、過熱防止、一貫した性能、寿命延長に重要
- AC Infinity CLOUDPLATE T7-N 2U Intakeは約4年間使用し、低いファン速度でもラックを十分に冷やせた
- ほこりの蓄積により約2年後からファン故障が始まり、3年目には4基中3基のファンが故障した
- 内部コネクタが基板にホットグルー固定された3ピンのウェハコネクタだったため、ファン交換は難しかった
- 2025年4月にこの機器を取り外し、1U通気パネルを使う受動冷却へ移行し、その後は問題なく動作している
- エアコンがありほこりの少ない環境では、能動冷却ファンは不要な場合があり、必要なら数か月ごとに圧縮空気で清掃することで2〜3年の寿命を期待しやすくなる
-
ルーターとスイッチ
- ルーティングとスイッチングの要件は、Cisco、Ubiquiti、TP-Linkの機器で大半を満たせると考えている
- この構成はホームオフィスというより小規模ビジネス向け機器に近く、将来の機能拡張も見据えている
- ルーター例:
- Peplink B-One Gigabit Dual WAN WiFi Router: Multi-WANロードバランシング、1Gbpsスループット、WAN 2ポート、LAN 4ポート、デュアルバンド2x2 MIMO Wi-Fi
- Ubiquiti Dream Machine UDM Pro: 10G、マルチギガビット、PoE、オールインワンのルーター・セキュリティゲートウェイ
- TP-Link ER8411 10G VPN Router: 最大10個のWANポート、SPIファイアウォール、Omada SDN、ロードバランス、雷保護
- MikroTik RB4011も小型高性能機器の例として挙げられる
- スイッチ例:
- Ubiquiti USW-Pro-Max-16-PoE: 16ポート Layer 3 Etherlightingスイッチ、2.5GbE、PoE++出力
- TP-Link SG2210XMP-M2: 8ポート 2.5GBASE-T、2ポート 10GE SFP+、8ポート PoE+
- Netgear、pfSense、OPNsense、IPFireなど他の選択肢もあり、推奨機器のすべてが各自の要件に合うとは限らないため、別途調査が必要
-
パッチパネルとケーブル
- 16ポートのパッチパネルを選んだが、振り返ると24ポートを選ぶべきだったと考えている
- それでも6年後の時点で16ポートはぎりぎり十分な水準
- ISPの最速プランは下り160Mbps、上り30Mbpsで、Home LabにCAT8やCAT7は必要なかった
- 1000Mbpsの上限で十分だったため、250フィートのCAT6リールと複数長さのCAT6ケーブルを購入した
- よりスムーズなネットワークトラフィックが必要ならCAT6a以上を検討できるが、RJ45コネクタやパッチパネルが対応していなければ、CAT7やCAT6aケーブルは無駄になる
- 初期設置時には同軸ケーブルが約3フィート足りなかったため、必要長より長めのケーブルを見込んで予算を立てるとよい
-
サーバー
- サーバーは、NAS、VM、Webサーバー、バックアップサーバー、メールサーバー、広告ブロックなど何をホストするかで要件が大きく異なるため、特定モデルは推奨していない
- 実際の構成では、eBayで中古購入したThinkCentre M73とThinkCentre M715qを使用している
- どちらの機器も静かで冷却性が高く、Ubuntu ServerとWindows 10を実行している
- 本格的なサーバーとしてはDell、HP、Cisco、Lenovo製品が選択肢であり、Home LabではCraigslistやeBayで中古購入することが多い
シンプルな全館VPN構成の例
- 友人向けに構成した全館VPNは、700VA UPSで40W未満しか使っておらず、Home Labが必ずしも複雑だったり電力を多く消費したりする必要はないことを示している
- 構成要素は次のとおり
- StarTech.com 6U Wall Mount Network Equipment Rack
- AC Infinity Vented Cantilever 1U Universal Rack Shelf
- C2G 12-Port Patch Panel
- VCE CAT6 RJ45 Keystone Jack Inline Couplers
- Raspberry Pi 4 2GB Basic KitでUnifi Controllerを実行
- Brume GL-MV1000でEdge GatewayとWireGuard VPNを実行
- Edgeswitch 10xp
- StarTech.com 8 Outlet Horizontal 1U Rack Mount PDU Power Strip
- CyberPower SL700U Standby UPS System, 700VA/370W
6年間の変化と結論
- Home Labは2020年に12U壁掛けラック、ケーブルモデム、EdgeRouterから始まった
- 6年後には10Gアップリンク、pfSenseファイアウォール、2.5G LANへアップグレードされ、監視はZabbixからCheckmk RAWに置き換えられた
- 主な変化は次のとおり
- 2020年3月: 初回ビルド完了
- 2020年4月: 4Gフェイルオーバー、VLAN、ブランキングパネル、Zabbix監視を追加
- 2020年5月: Raspberry PiとZabbixダッシュボードモニターを追加
- 2020年6月: キーボードを追加し、メッシュカバーを色付きプレキシガラスに交換
- 2022〜2023年: 新居へ移転、EdgeRouterをPeplink Balance 20xに交換、UPSをアップグレード
- 2025年以降: 10Gアップリンクと2.5G LAN、pfSenseファイアウォールへアップグレード、ZabbixをCheckmk RAWに置換、受動冷却へ移行
- 最も重要な運用原則は、小さく始めて成長に備えること
- 最初の日からラック、キャビネット、パッチパネル、すべての機器をそろえる必要はなく、ISPモデムの交換と適切なルーターの追加から始められる
- 機器を選ぶ際は、消費電力を最初から考慮することで、電気料金が過度に増える事態を避けられる
1件のコメント
Hacker News の意見
記事は良いが、規模と範囲が大きくて気後れしやすい。ホームラボは机の上の NUC 1台でも十分に始められるし、64GB RAM があれば本当に多くのものを載せられる。
NUC は 24/7 稼働の効率が良いが、CPU 負荷が長く続くとうるさくなる。そういうときは eBay で OptiPlex や Precision Tower SFF、できれば ECC 対応モデルに拡張するとよい。Dell SFF は小さいが、ちゃんとしたデスクトップ/サーバーに静かなファンがあり、eBay で40ドルの 10G Mellanox 3 カードも入り、横に積み重ねやすい。第12世代 CPU 以前の OptiPlex は電力とスペースが制約になり得るので避けたほうがよく、i5-12500 の中古はすでにかなり安い。LGA1700 なら必要なときに i9-14900 non-K も載せられる。
個人的には、隅に箱を4台積み上げ、作業台の裏にラックのサイドパネル2枚をボルトで留めた偽ラックに部品をネジ止めして使っている。棚の上の NAS と複数の Raspberry Pi もつながっていて、このごちゃごちゃした構成が気に入っているし、多くを学べた。手元にあるもので始め、必要になったら拡張すればよい。ラックは趣味が深まり、スタイル点を気にするようになったときに格好いいものだ。
tasmota ベースのスマートプラグにつないでみたところ、アイドル時はおよそ 6W だった。BIOS 設定と tuned プロファイルで低電力チューニングはいつもしているが、概して NUC が 30W を超えることはめったにない。昔のタングステン電球1個の半分ほどだ。
古い中古ノートPC、特に画面が割れたものはほとんどタダ同然で買えるし、すでに持っているか知人がくれれば本当に無料だ。Plex 程度が目標ならうまく動くし、ノートPCの消費電力も、特にアイドル時は NUC より大きく多いわけではない。今は見た目が良いのでちゃんとしたラックマウントサーバーを使っているが、ほとんどの人には古いノートPCで十分だと思う。
ただ、後でラックマウントして一部のハードウェアをアップグレードするときには、この「入門者」向けガイドが本当に役に立った。
[0] https://blog.janissary.xyz/posts/homelab-0
Lenovo のミニPCはテレビの裏で Syncthing ノードと HTPC を兼ねている。世界で最も洗練された構成ではないが、よく動き、とても安く、アパートに合った構成だ。
少し脇道にそれるけれど、ホームサーバーには Proxmox を本当に称賛したい。25年間、自宅で何らかの形で Linux サーバーを動かしてきて、いつも Ubuntu のような単一システムを手作業で管理していたが、ものすごく面倒だった。
Proxmox は、1台のハードウェア上で複数のコンテナや仮想マシンを簡単に動かせるようにしてくれる。最初は大きな Ubuntu システムを1つ仮想化するところから始めたが、それだけでもバックアップや高可用性といった利点がある。今ではサービスをそれぞれコンテナに分離し始めていて、ずっとすっきりしている。
仮想マシン自体も有用だが、Proxmox が提供するマシン間の移行、集中バックアップ/リストアツールは本当に解放感がある。最近は Windows VM に PCIe GPU パススルーを付けて、Moonlight/Sunshine で家の中の非力なマシンにゲームをストリーミングできるようにしたが、あまりにうまく動くので、実際のゲーミングPCは隅でほこりをかぶっている。唯一の不満は、もっと安い有料ライセンスがあればいいのに、ということだ。受け取っている価値に報いたいが、CPUあたり年100ドル以上は趣味用途には高すぎる。無料ティアがまったく煩わしくないのはありがたいが、中間の段階があるとよい。
ただし、ストレージ全般は簡単ではない。さまざまな選択肢の結果をきちんと理解するのは難しく、zfs、lvm、lvm-thin、再パーティション化などにかなり慣れていないと、NAS の基盤を適切にセットアップするのは難しい。
ある人たちはデータ配列[1]を Proxmox に直接マウントし、Plex のようなストレージ層の上にあるものだけを仮想化していると聞く。一方で、HBA[2] を NAS VM に PCI パススルーする人たちもいる。前者の利点は、ループバック SMB/NFS/9p の代わりに LXC コンテナへ直接バインドマウントできる点だと思う。また、TrueNAS や Unraid をベアメタルの基盤として使い、ストレージとハイパーバイザーを一緒に担わせる人たちもいて、これも筋が通っている。TrueNAS の Linux 版も、もう成熟する時間があったはずなので、試してみるべきかもしれない。Intel プロセッサ内蔵の Quicksync でハードウェアトランスコーディングも使っているが、VM 越しに使う際に問題があるのか気になっている。おそらくローカルの Proxmox TTY は諦めることになりそうだ。
[1] VHD ではなく、実際のファイルが入っている配列のこと。そもそも分けておくほうだが、すべてのデータを SSD に置く余裕はなく、HDD に OS ルートを置くのも耐えられないので、必要でもある。あるいは、ファイル用データセットと VM ルート用の zvol または NFS を持つ、単一のマスター ZFS 配列が理想かもしれない。
[2] 個別の SATA パススルーより信頼性が高いと聞いたが、より大ざっぱに束ねられるという欠点がある。つまり VM がすべてのポートを排他的に制御するため、配列ではないディスクをそこに接続できない。
別のディストリビューションや非 Linux 系も混在させられるので、柔軟性が高くなる。たとえば私は OPNsense ルーターを動かしている。Proxmox の代わりに xcp-ng を使っている。
これが新しい「I use Arch btw」ミームになるのは分かっているけど、この道に進むならディストリビューションとして Nix を強くおすすめする。理想的には一度動くようにしたら、そのまま起動し続ければいいのだが、Nix を使うとシステムの状態がすべて git に記録される。
もう「6か月前にこれをどう直したんだっけ?」となったり、Ubuntu のディストリビューションアップグレードが壊れたあとに手作業でシステムを組み直したりする必要がない。変更したもの、インストールしたパッケージ、設定した値がすべて git のログにある。自分も、インストール済みのものやシステム構成を確認するドキュメントとして git リポジトリをよく見ている。
複数のデバイスにシステム/ユーザー/アプリケーション設定を素早く簡単に同期できるのは驚きだ。宣言的なアプローチのおかげで、動くようにするまでの苦労が報われ、一度分かれば同じことを二度と繰り返さずに済む。宣言的なので、動作する設定例がドキュメントとして残り、そこから拡張できる。今は Nix で「Linux from Scratch」をビルドしながら Nix の開発環境を学んでいるが、遅いものの、成功するたびに再現可能な状態として固まっていく。LLM は散在した貧弱なドキュメントを要約するのに確かに役立つが、それでもかなりの粘り強さが必要だ。全体として Nix をとても楽しんでいて、ホームラボでもっと活用したい。
概念は理解できるが、新しいパッケージやアプリを試したいときは、Nix 流で頭を抱えるよりも docker-compose と VM のほうが早くたどり着ける。
cidataのドライブとインストールメディアを一緒に挿して電源を入れればいい。Nix のほうが簡単だったかは分からないが、cloud-init は、こういうことをする人ならすでに使い方を知っていそうなスクリプトを実行できるようにするだけなので、別の DSL は不要だ。誰かは「YAML は嫌い」と言うだろうが、ホームラボに関心がある人は職場でも複数のサーバーを管理している可能性が高く、cloud-init、Ansible、Kubernetes、あるいは選択肢なく YAML を使う何かを避けられない。ホームラボの目的が、他人のものを壊す可能性なく仕事でやっていることを練習することにあるなら、どうせ使う必要のあるツールに慣れ、自宅環境を職場とあまり違うものにしないほうがいい。もちろん Hacker News の多くの人は、自分とは違って「ホームラボ」を、家族や友人のためのメディアサーバー、チャット、写真共有などをセルフホストするという意味で使っており、実際のデータセンターを練習するためのミニデータセンターという意味では使っていない。
興味があれば、チュートリアルはここ[0]にある。唯一の問題は Nix 設定をリモート配布する部分だ。唯一のファーストパーティ製ツールである nixops は実質的に放置され、サポートも打ち切られた状態だ。morph や deploy-rs のようなコミュニティツールは有望に見えるが、Flakes 対応や活動状況/長期的な持続可能性はまちまちだ。
[0] https://blog.janissary.xyz/posts/nixos-install-custom-image
Ubuntu は単純にいまいちだ。昔は何年も Ubuntu を使っていて、非専門家にも安定して使いやすい Linux ディストリビューションをついに推薦できるようになったと本当に喜んでいたが、インプレースアップグレードが2、3回連続でシステムを壊し、Gentoo のよく文書化されたインストール手順と、何年もの試行錯誤で得たシステム管理者としての知識がなければ直せない状態にした後は、見切りをつけた。友人に Ubuntu を使わせてはいけない。
何年もの間、自分の機材を IKEA FRIHETEN ソファ の中に入れていた。利点はアクセスしやすいこと、電源ケーブル1本+光 WAN 1本+イーサネット LAN 1本以外は完全に見えないこと、構造上ケーブルを外へ出しやすく、内部の配置や配線もしやすいことだ。
騒音低減もタダで付いてきて、冬には座ったお尻が絶対に冷たくならない程度の暖房にもなる。配偶者は点滅するライトをまったく見なくて済むので喜び、UPS とディスクベイを買ったことにも気づかなかった。欠点は、中で作業するのが少し不便なこと、座ったり開閉したりすると振動があり、回転式ハードディスクが嫌がるかもしれないこと、熱は意外と大丈夫だったが、クローゼットより悪いわけではなかったことだ。液体をこぼすリスクはあるが、設計上、中に入るより周囲に流れる傾向があり、最悪の場合はハードウェアの下に受け皿を置けばよい。掃除で家具を動かす配偶者がケーブルを引っ張る可能性があるので、余裕を持たせる必要がある。
† https://www.ikea.com/us/en/images/products/friheten-sleeper-...
†† 後ろの隅に配線してから最寄りのコンセントまで壁の中に隠したので、実際には見えなかった。
結局やらなかった理由の一つは、機器のすぐ上や周囲がソファという燃料になる火災が嫌だったからだ。サーバー本体よりも UPS が少し心配だった。その区域を板金で補強し、UPS バッテリーの種類によってガスが出る可能性があるなら換気を良くすれば少し安心できただろうが、作業が大きくなりすぎる。結局、機器は布素材から離したラック/棚に置き、目視で確認できるようにした。
換気、熱、火災リスクがかなり心配になりそうだ。lack rack を思い出す。
https://archive.is/Uf2k3
ホームラボの世界全体が素晴らしい。人によって低消費電力、興味深いプロセッサ、データの所有権、高可用性、UPS/家全体のUPSといった目標があり、こうした重なり合う関心事とソフトウェアが交わる共通の場所が自宅だという点が面白い。
業界の専門家が趣味で遊んでいるケースから、業界外の人たちまで引き込む人々の幅広さも興味深い。自分もすっかりハマっていて、少なくとも自分にとっては初期のインターネットの魔法のような感覚をよみがえらせてくれる。
別の観点から見ると、自分のホームラボはこうだ。場所は地下のオフィスの棚の上で、換気は問題なく、WiFiは悪くないがすごく良いわけでもない。
ハードウェアは近所の交換会で拾ってきた古いPCで、別の古いPCから抜いたRAMを追加し、ハードディスクとWiFiカードを買った。ソフトウェアはDebian stableとpodman/podman-composeだ。便利なサービスはすべてcomposeファイルの入ったフォルダで、podman-composeでsystemdユニットに変換して使っている。記事に出てきた構成が好みなら、それは素晴らしいことなので好きなだけやればいい。でも必ずそうする必要はないし、特に最初からそうする必要はまったくない。この古くてほぼタダのPCで、家族が毎日使うサービスをいくつも動かしているが、16GB RAMの半分も使っておらず、CPU使用率も5%を超えない。
背面にケーブル用の穴を開けてあり、発熱が十分少なかったので空気の流れが問題になったことはなかった。個人Webサイトと水槽のWebカメラをホストし、ドアベルに接続し、XMPPやドキュメント保管庫としても使っていた。サーバーが必要なものは何でもそこに入れていた。引っ越し後は古いMac MiniをNASとして使うようになり、その後はあまりいじる時間がなくなった。
リモートアクセス用にtailscaleも設定してある。
時間をかけて作り込んだかなり大きなホームラボがあり、うまく動いているのでとても気に入っています。ただ本当の問題は災害復旧です。全部を複製しようとすると永遠にかかりそうですし、すべてを覚えていられるかも分かりません
ルーター設定、スイッチ設定、NAS、複数のVLANに散らばったDockerコンテナなど、ネットワークは最初に図にしておいたものの、時間がたつにつれて最新状態を保てなくなりました。インフラ図を描き、文書化し、最新の状態に保つための良いツールがあるのか気になります。バックアップとアップグレードも常に問題です。コンテナを1つ作っておいて、6か月後に見返すと何をしたのかまったく分からないことがよくあります。NUC、NAS、デスクトップ、サーバーなど複数のマシンに数十個のコンテナが散らばっていて、サービスごとにbind mountの場所、実行ユーザー、権限の慣例がすべて違うように感じます。頭の中に全部入れておくことはできませんし、特に時間がたった後はなおさらです。中央のインターフェースからバックアップ、復元、アップグレードだけ押せるとよいのですが。昔のVM clone/snapshotでcattleのように運用していた頃が懐かしいです。ProxmoxマシンにはまだいくつかVMがあるのである程度似たことはできますが、ホームラボ全体にはそういう仕組みがありません。理論上は家が燃えても全構成を完全に復旧できる地点まで行きたいです。自宅構成管理でKubernetesまで行くよりも、もっと単純な方法がきっとあるはずで、皆さんが何を使っているのか気になります
1人か2人で広く拡張するのは難しすぎますが、1つのスタックを深く掘ればよく分かるようになり、すべてがまったく同じ方式なら、全部動くか全部動かないかに近い状態になります。結局、すべてが正しく動かなければならない構造になります
80%はVMを作る、rcloneでファイルをコピーする、必要ならサービスをインストール/起動する程度で、カスタムコマンドを使ってだいたい3行です。VMが起動していればデプロイは100msほどで終わります。たまにスクリプトがもっと複雑になることもありますが、基本的な考え方は、内部でどんなシステムを使っていても
deploy.ps1を実行すれば、インターネットなし、依存関係なしで、宇宙の熱的死まで動き続けるようにすることです。すべてを失った後でdeployを再実行し、リストにまとめて全体を復旧しました。ルーティング設定の文書化が100%ではない点には同感です。自分のルーター/スイッチ設定も正直かなり複雑なので、減らすべきだと思いますSuper Micro Computerならすでにできるのかもしれませんが、対象はデータセンターです。夢見ることしかできません
Proxmoxはアイドル時に約12W、OpenWRTは約4.5Wを消費し、NodeJSでOpenWRT上にMeshCommanderを動かしてリモート管理できます。ZFSのネイティブ暗号化を使っているため、外付けドライブへの全体バックアップはこのように行っています
# create backup pool on external drivezpool create -f rpoolbak /dev/sdb# create snapshot on proxmox NVMezfs snapshot -r "rpool@backup-2024-01-19"# recursively send the snapshot to the external drive (initial backup)# pv only is there to monitor the transfer speedzfs send -R --raw rpool@backup-2024-01-19 | pv | zfs recv -Fdu rpoolbak増分バックアップは
-Iオプションと、開始/終了を示す2つのスナップショットを渡せばよいです# create new snapshotzfs snapshot -r "rpool@backup-2024-01-20"# only send everything between 2024-01-19 and 2024-01-20zfs send -RI --raw rpool@backup-2024-01-19 rpool@backup-2024-01-20 | pv | zfs recv -Fdu rpoolbak簡単で速く、かなり信頼できます。
zfs-auto-snapshotを使えば、ファイルシステムを15分単位で戻せます。仮想マシンのロールバックにもかなり便利です[1]。最近NVMeのSamsung 980 Proが壊れましたが、zfsでバックアップを逆方向、つまりrpoolbakからrpoolへ復元するシェルコマンドを実行したところ、700GBで約2時間かかり、サーバーは再びオンラインになりました。ZFSが、特に暗号化では場合によって「実験的」だということは知っていますが、結果にはかなり満足しています1: https://pilabor.com/series/proxmox/restore-virtual-machine-v...
そこで文書化に多くの時間を使い、できるだけシンプルで基本に近く、コミュニティのサポートがある方式で作ろうとしています。その結果、まだホームラボも、ここで誰かが呼んでいた「homeprod」もありません。同じ問題意識を持つよう説得している友人も見つけたので、バス係数が1にならないよう、ホームラボの文書と手順を互いにミラーリングしてみようかと思っています
昨年からホームラボ構成をセットアップして維持してきましたが、本当に驚きです。コンテナ、仮想マシン、ネットワーキングについてものすごく多くを学びました。
paperless-ngx [1] や immich [2] のような一部のセルフホストアプリケーションは、機能面でプロプライエタリなクラウドソリューションをはるかに上回っています。tailscale [3] のような VPN サービスを加えたので、今では世界中どこからでもホームラボにアクセスできます。足りないのは、NUC やミニ PC のような低消費電力マシンを用意して、24/7 必要なサービスを移し、電気代を下げることだけです。維持できて、週末に定期点検やアップグレードをする気力があるなら、自分のホームラボを作ることを 100% おすすめします。
[1] https://docs.paperless-ngx.com/
[2] https://immich.app/
[3] https://tailscale.com/
ホームラボ機器が非技術系 nerd の生活空間にあるなら、騒音、照明/ディスプレイ、目立たなさ も考えるべきです。アパート暮らしで長い間クローゼットの中に置いていましたが、リビングに移した後はいくつかの解決策を使いました。
目立たなくするために、ほかの家具と合う IKEA CORRAS キャビネットを使いました。以前はラックマウント用ポストを入れていましたが、出っ張るので取り外しました。騒音については、ファンレス機器か、少数の Noctua ファンで冷却できる機器を選びました。1U PSU のファンも Noctua に替えますが、多少のはんだ付けと悪態が必要です。結局、データセンターではない環境では、PSU 以外はファンレスで動かせる Atom サーバーをよく使うようになりました。今唯一静かでない 3090 GPU サーバーは、必要なときだけ起動するようにしています。ノート PC から Wake-on-LAN コマンドを実行していますが、IPMI、PDU や IoT コンセントの小技、ソフトウェアで 3090 とファンを止める、Kubernetes 自動化なども可能です。明るすぎる表示 LED は白いラベルプリンターテープで覆うとうまくいき、思ったより見た目も良いです。見る必要のない光には黒いラベルプリンターテープを使います。コンソールは、特に TrackPoint キーボード付きの古い IBM のような、目立たないスライドアウト式ラックコンソールが好みです。リビングに監視用ディスプレイを置くなら、少なくともキーボードはスライドアウト引き出しに入れるでしょう。不要な機器も処分します。そうしないと、今のラックスペースの倍以上が必要になり、リビングでオーディオファイル向け機器のように見せかけるのも難しくなります。アパートで今はルーターまで触りたくなく、サーバーだけ欲しいなら、プラスチック筐体の OpenWRT ルーターも検討に値します。ルーター、スイッチ、パッチパネル数ラックユニット分を置き換えられ、外部 WiFi AP や配線も不要になるかもしれません。
自分の「要件」を考えると、最低限の予算や支出をどの程度に見積もるべきか気になります。あるいは vast.ai のようなサイトで十分だと考えるかも知りたいです。
30 歳を過ぎたからか、単に ホームネットワーク と、コンピューターが 2 台以上ある状態と呼んでいます。なぜホームネットワークがあるかというと、ここにいる多くの人と同じくネットワークアプリケーションを開発しているからです。
ネットワーク技術者ではありませんが、TCP/IP や DNS などインターネットのさまざまな構成要素が実際にどう動いているのかを理解するのは本当に有用で、多くの開発者との差別化にもなります。自分のネットワークを自分で制御し、好きなようにできる柔軟性も良いところです。なぜコンピューターが複数台あるかというと、最近は仮想化がかなり良いので、いろいろな OS で遊ぶことが主な理由ではありません。実際には機器の置き場所のためです。ハードディスクはかなりうるさいので食器棚の中に置きたい一方、画面とキーボードは机の上に置きたいのです。なので食器棚には NAS があり、机には静かな PC、リビングには無音のメディアセンターとその他の機器があります。一つ言うなら、ラックマウントサーバー機器の誘惑に負けないことです。見た目は格好よく、中古で安く手に入りますが、家庭には向いていません。代わりに大きなファン付きのデスクトップ PC ケースを使うのが良いです。ラックマウントのネットワーク機器はかなり良いです。
本物の OOB 管理システム もあるので、かなり役に立ちます。 https://www.supermicro.com/en/products/system/iot/1u/sys-510...
一般的な奥行きの深いラックマウントサーバーは、ホームラボでは手間の割に得られるものが少ないという点には同意します。
ただし 本物のラックマウント機器 を家に持ち込むことを少しでも考えているなら、事前に何らかの方法であのひどい騒音を聞いておくことを強くおすすめします。それに耐えて暮らすのは想像しにくいです。
ただし本物のラックがないとかなり面倒になります。結局、ラックのような塔として他の機器の上に積むことになり、手を入れたい機器にアクセスするには全部解体しなければなりません。リース返却品のラック機器で行くなら、きちんとラックとレールも買うのが良いです。レールは少し高いことがあるので、付属している出品を確認すべきです。レールはサーバーよりずっと長く互換性がある場合が多いため、リース返却機器を大量処分する大企業は通常付属させず、小さな販売者はしばしば付属させています。