世界を動かす技術を、日本語で。

クラウドプロバイダーに支払わないための自宅ラボの過剰設計

2025年8月5日原文(ergaster.org)

概要

  • VPSから自宅サーバー への移行と、 Proxmox VE による柔軟な仮想化環境構築
  • 実験と学習 のためのVM自動化・安全運用の要件整理
  • ハードウェア選定ディスク暗号化、および バックアップ戦略 の重要性
  • Opentofu/Terraform、cloud-init、Ansible を活用したIaCによる構成管理
  • Proxmox VEのインストール とトラブルシューティングの実践記録

自宅サーバー移行と設計方針

  • VPSから自宅のmini PC (Minisforum UM880 Plus)へのサービス移行
  • VM(仮想マシン)による分離 で本番サービスと実験環境を両立
  • Kubernetes習得 を目指し、まずは 単一ノードk3s から段階的に拡張予定
  • クラウド利用回避 (学習コスト・コスト増加防止)のためオンプレ運用
  • ハードウェア追加投資は最小限、現状のmini PCを最大限活用

セキュリティ・信頼性要件(脅威モデル)

  • 最大の脅威:物理盗難 (リビング設置のため)
    • ディスク暗号化 でデータ漏洩対策
    • 堅牢なバックアップ 運用
  • ハードウェア故障 への備え
    • 自動インストール・構成管理 で復旧容易化
  • 人的ミス への備え
    • バージョン管理・ロールバック 可能なセットアップ
    • Infra Nerds Club の友人グループからのアドバイス活用
  • 電源障害・遠隔復旧
    • KVM経由でWake on LAN 送信可能なネットワーク設計

仮想化・自動化技術選定

  • Proxmox VE によるホスト型仮想化(唯一現実的な選択肢)
  • VM自体は使い捨て、VM内サービスのデータ・構成のみバックアップ
  • Opentofu(Terraform派生) でVMの定義・自動生成
    • cloud-init で初期設定(ユーザー、SSH鍵、ネットワーク等)
  • Ansible でサービスやネットワーク設定などの状態管理
    • 冪等性 確保(同じPlaybookを何度実行しても同じ結果)

Proxmoxホストのセットアップ手順

  • Debian上にProxmoxを追加インストール (ディスク暗号化対応のため)
    • Debianインストーラー でLVM+暗号化構成
    • rootパスワード設定 (Proxmoxはroot重視設計のため)
    • パッケージ選択は最小限 (SSHサーバー+標準ユーティリティのみ)
  • KVM経由で暗号化パスワード入力 運用
    • Dropbearやmagic USB stick によるリモート解除も選択肢
  • SSH設定の一時変更
    • rootログイン一時許可→公開鍵コピー→再度禁止でセキュア化

Proxmoxインストール時のトラブルと対応

  • Proxmox導入直後に起動不能 (暗号化ディスクは解除されるが、その後進まない)
  • 原因調査のためGRUBのquietパラメータを削除 し、詳細な起動ログを確認
  • Proxmoxカーネル自体は暗号化ディスク対応、問題は別要因と判明
  • 段階的なインストール・再起動で切り分け、トラブルシューティングを実施

インフラ自動化の全体像

  • Opentofu/Terraform :VMやDNSレコードのコード化・自動生成

  • cloud-init :VM初期化時のユーザー・SSH設定・ネットワーク構成

  • Ansible :OSやサービスの詳細設定・冪等性のある構成管理

  • IaC(Infrastructure as Code) による再現性と移行容易性の確保

    • 例:OpentofuでDebian VMをcloud-init付きで定義
    • 例:Ansibleでネットワークやタイムゾーン等を冪等的に設定

今後の展望

  • VMの再現性ある構築・設定 (次回記事で詳細解説予定)
  • クラウド・オンプレ間の柔軟な移行 を可能にする運用設計
  • 安定したインフラ基盤の上でKubernetes学習・実験 を継続

この構成により、 安全性・柔軟性・自動化 を高いレベルで両立しつつ、 学習・実験・本番運用 を一台のmini PC上で実現可能。今後は、VMの自動構築・サービスデプロイの具体的な手順をさらに掘り下げていく予定。

Hackerたちの意見

誰かが手頃な価格でホームラボを始めたいなら、Dell Wyse 5070をeBayでチェックすることを強くおすすめするよ。市場に50ドルであふれてるし、いろんなニーズに十分なパワーがあると思う。M.2スロットがあって、SATAもサポートしてるし、'extended'バージョンには小さいPCIeカード用のスペースもあるし、パラレルポートとシリアルポートが2つあって、昔を思い出させるよ。

これを何に使うつもりなのか、ちょっと気になるな。

消費電力を考慮したらどうなる? 24時間365日稼働させても大丈夫なデバイスってあるのかな?

Proxmoxを使ってタロスクラスターを構築するためにDell Wyse 5070を買ったよ。かなり良いし、RAMを32GBにアップグレードできる。

もう少しお金を出せるなら、Optiplex MicroやLenovo Tiny、HP Miniシリーズで、少なくとも第8世代のi5を搭載したものもいい選択肢だよ。eBayで70〜120ドルくらいで見つかるし、Wyse 5070よりもずっとパワフルで、しかもかなり省エネ(アイドル時約10W、Wyseは5W)。だいたい、NVMeが1つ、SATA 2.5インチスロットが1つ、プレミアムモデルにはPCIeもついてる。

Raspberry Pi 5をおすすめするよ。安くて小さくて、広く使われてるから、いろんなことがすでに多くの人に試されてる。

もう一つのヒント:中古のゲーミングPC!アップグレードサイクルのおかげで、信じられないほど安くてパワフルなものがあるよ。ただ、中古のゲーマー機器はあまり信頼性がないかもしれないから、RAID 1を設定することを忘れずに。

もう一つの安い選択肢はFujitsuのFutroだね。これは大きなサーバーラックを運営するための薄型サーバークライアントとして設計されてる(たぶん?)。とにかく、4-8GBのRAM、SSD(ほとんどの人がアップグレードするけど)、モデルによっては2.5または10Gbitのイーサネットカード用のPCI-eスロットもあるよ。eBayで約50ドル。

アリエクスプレスでN150ボードを使って自作したよ。SATAスロットが6つ、2.5Gイーサネットが4つ、m.2スロットが2つある。安い中古ケースを探して、ちょっとしたRAMを用意すれば準備完了。ハードウェアトランスコーディングもできるし、4Kも楽々処理できる。消費電力はたったの6Wだよ!

ミニPCが$600って聞いて目が点になったよ。7世代のOptiPlexを$45で買ったけど、まだそのポテンシャルを使い切れてないんだよね。

でも、停電や他の理由でサーバーがシャットダウンする可能性がある。仕事中や休暇中に起こるかもしれないし、WireGuardでも解決できない。停電の問題は軽減されていないようだ。私のホームラボは進化した対策をしてきた:小さなUPSの側に穴を開けて、大きな(車用の)バッテリーに接続して長時間稼働できるようにしたんだけど、それは専用のインバーター/充電器/切替スイッチに置き換えられて、でかいAGMキャラバンバッテリーに繋がってる(これで数回、2〜3時間の停電を乗り切ったことがある)。今は最近のLiFePo4バッテリー電源ステーションに置き換えた。もちろん、これはただのホームラボだから、ホスティングしてるものに重要なものはないけど、それがポイントじゃないんだ。「いろんなこと」に勝ちたいし、ちょっとした電力の変動の後にすべてがちゃんと再起動したか確認するのが嫌なんだ(リモートファイルストレージをマウントしてるものがいくつかあって、特定のデバイスが起動するスピードのせいで、これらのマウントは起動時に失敗することが多いから、まだその問題を解決することに決めてない)。

小さなUPSの側面に穴を開けて、大きな(車の)バッテリーに接続して、稼働時間を延ばせるようにしたんだ。これについてもっと教えてくれない? APCのBack UPS PRO USV 1500VA(BR1500G-GR)を使ってるんだけど、これでもできるか知りたいな。

Hacker Newsで議論の続きを見る