先日、SNSで自宅サーバー構成について質問したところ、フォロワーさんからめちゃくちゃ理想的な構成を教えていただきました。
「分用のWEB上で動くアプリなら作ってますけど、サーバは自宅のk8s環境ですね...」というやり取りから生まれた、低コスト(月額約700円)と高性能(k8s/KVM)を両立した構成メモを共有します!
🚀 構成の全体像:なぜこのハイブリッド構成なのか?
教えていただいた構成の核は、「固定IPを持たない自宅サーバー」と「固定IPを持つ安価なVPS」をVPNでつなぎ、VPSをリバースプロキシとして利用する点です。
| レイヤー | 採用技術/デバイス | SNSからの情報 (構成の意図) |
|---|---|---|
| 外部ゲートウェイ | 安価なVPS (月額700円程度) | 「安いvps借りて」固定IP問題を解決。外部アクセスを引き受ける。 |
| セキュリティ | WireGuard (VPN) | 「wireguardで繋いでます」セキュアなVPNトンネルを構築し、自宅IPを隠蔽。 |
| リバースプロキシ | Nginx (VPS上) | 「そこからnginxのリバースプロキシで」外部からのリクエストをVPN経由で自宅へ転送。 |
| 物理ホスト | N100 CPU ミニPC | 「n100cpuのミニpcなので大して電気代かからない」という情報から採用。低電力で24時間稼働可能。 |
| 仮想化基盤 | KVM | 「本サーバからKVMでWEBとDBサーバを分けてます」役割分離とリソースの効率化。 |
| デプロイ環境 | Kubernetes (k8s) | 「自宅のk8s環境ですね」という一言が構成の出発点。モダンなアプリ運用を実現。 |
🛠️ Step 1: 自宅サーバー環境の構築メモ (KVMとk8s)
🏠 物理ホストと仮想化 (KVM)
メインサーバーにはN100 CPUのミニPCを採用しました。このチップは低消費電力でありながら、複数の仮想マシンを動かすのに十分な性能を持っています。
-
KVMで役割分離: KVMで以下の2つのVMを作成し、分離して運用します。
- VM-1: k8sノード(Web/Appサーバー)
- VM-2: DBサーバー (セキュリティのため内部ネットワークに隔離)
☸️ k8sによるアプリケーション運用メモ
VM-1上にk8s(例: k3sやMicroK8s)を構築します。これにより、デプロイ、スケーリング、更新といった運用作業が劇的に楽になります。
# k8s Serviceの定義メモ(Nginxからのアクセスを受け取る)
apiVersion: v1
kind: Service
metadata:
name: my-app-service
# ...
spec:
ports:
- protocol: TCP
port: 80 # Nginx(VPS)からのリクエストを受け取るポート
targetPort: 8080 # アプリケーションコンテナの待ち受けポート
🌉 Step 2: 外部接続経路の確保メモ (VPS + WireGuard)
自宅サーバーを固定IPなしで公開するための、最重要パートです。
1. WireGuardによるVPNトンネルの確立
「安いVPS」と「自宅k8sノード(VM-1)」間に、WireGuardを利用してセキュアなL3 VPNトンネルを構築します。
- VPS側: 固定IPを持つVPNエンドポイント。
- 自宅側: WireGuardクライアントとしてVPNに接続。動的IPアドレスでもOK。
このVPNによって、自宅のグローバルIPアドレスを外部に晒さずに済みます。
2. Nginxによるリバースプロキシ設定 (VPS上)
VPS上で動作するNginxの設定です。外部アクセスはまずここに来ます。
server {
listen 80;
server_name your-domain.com; # ドメイン代は年間2000円くらい
location / {
# ワイヤーガードで割り当てられた自宅VM-1の内部VPN IPへプロキシ
proxy_pass http://[自宅VM-1のWireGuard IP]:80/;
proxy_set_header Host $host;
# ... その他の設定
}
}
💰 費用サマリ:本当に低コスト!
| 費用項目 | 頻度 | 金額(目安) | 備考 |
|---|---|---|---|
| VPS代 | 月額 | 700円 | 固定IPとリバースプロキシの役割。これがないと始まらない。 |
| ドメイン代 | 年額 | 2,000円 | サービスの公開URL。 |
| 電気代 | 月額 | 低額 | N100ミニPCのおかげで、ここを気にしなくて済むのが大きい。 |
📝 まとめ
SNSでのヒントから、「自宅の高性能を活かしつつ、インターネットへの接点は低コストでセキュアに」という理想的なサーバー構成が完成しました。
「k8sは使ってみたいけど、クラウドだと高い...」と感じている方は、ぜひこの「VPSゲートウェイ + 自宅k8s」の構成を試してみてください。月額費用を抑えながら、モダンなクラウドインフラの知識を深めることができます!