quartz-research-note/content/自宅サーバー.md

94 lines
3.8 KiB
Markdown
Raw Normal View History

---
title: 自宅サーバー
tags:
- server
- self-hosted
---
## 物理構成
### Macbook Pro (mid 2012)
SSD(256GB)に載せ替え、メモリ16GB
接続は有線、電源はMagsafe-USB typeC変換アダプタにしてMacbook Pro 2019のアダプタをもらってきている
![](img/server3.jpg)
### NAS
- ケースJONSBO N1
- フロントの14cmケースファンはうるさかったのでKAZE FLEX 140 SQUARE PWM 1200rpmに交換CPUファンのPWMを分岐した
- [アリエクで買える謎のNAS用Mini-ITXマザー](https://ja.aliexpress.com/item/1005005293008975.html)
- CPUはオンボードJ6413
- SATAx6
- なぜか2.5GbEが3つもついてる
- フロントパネルはUSB変換かまして2.0でしか使えない(オーディオ用のヘッダは無い)
- メモリ DDR4 8GB(マザボの限界)
- ストレージ
- CrucialのなんかSSD 256GB(ブート用)
- WD Red Pro 6TB x4 ZFSでRAIDZ2(RAID6相当)組んでるので実用量は10TBくらい
- WD Blue 4TB x1 (前使ってた外付けHDDからデータを移し終わったので挿してるけど、未使用)
- Corsair SF450 -PLATINUM
- 低負荷だとファン停止して動いてくれるのが嬉しい(今の所回ってるの見たことない)
今の所熱は夏冷房かけずに外出してもなんとか大丈夫そう
![](img/server1.jpg)
酵母のスターターを膨らませるのにも便利
![](img/server2.jpg)
## 論理構成
どちらもベアメタルにインストールされてるのは[[Proxmox]]
NASはSSD上にボリューム作って[[TrueNAS]] Coreを立ち上げ、NFSサーバーとして仮想マシン用のボリュームを提供している
[[TrueNAS]]は普通にScaleの方でよかったと思う、よくわかってなかったので・・・GUIでアップグレードできるのでそのうち上げる。
あと、TrueNASをVMとして展開するデメリットとして、S.M.A.R.Tとか温度のモニタリングができない、ネットワークのインターフェースが仮想デバイスなので10GbEとして表示される、とかがある。
### 仮想マシンというかLXC
Docker用にLXCコンテナが計3つぐらい動いてる。ブートディスクは全てNASのNFSサーバー上。
Proxmoxの性質上、どうしてもDockerコンテナをいっぱい立ち上げたければそのホストになるVMかLXCを立てる必要がある。
LXCはライブマイグレーションできないのが悲しい。
いっぱいいるけど全部[[Portainer]]で一覧してWebから管理はできている
#### MBP-Dockerホスト1(Mastodon)
[[Mastodon]]とそのリバースプロキシ関連が立ち上がってる。わざわざホスト分けた意味はあんまりない気がする。そのうちホスト2と合体してもいいかも
自宅のインターネッツがIPoE環境でIPv4は複数人でポートを共有&自分で選択はできないので[[Cloudflare Tunnel]]を使って公開している(後述のVPNと同じ仕組み)。
#### MBP-Dockerホスト2
主にテスト用。外に公開する前提のサービスを立ち上げたり試したり。定期的に稼働してるのは以下
- ObsidianのSelf-hosted LiveSyncこのVaultと別の元々使ってたやつのCouchDB
- Mastodon用のElasticSearch
- Mastodon以外でも使う機会あるかなと思って一応メインのdocker-composeから分けてる
### NAS-Dockerホスト3
主に家庭(?)用サービス。
- Cloudflare Tunnel用デーモン
- ゼロトラスト系VPNWireguard用のやつ。こいつがいるので実質的に外出先でもこのNASで立ち上がってるサービスは普通に使える。
- [[PhotoPrism]]
- [[JellyFin]]
- [[Dashy]]
- 単にIPが迷子になるので便利。
## そのうち立ち上げたいもの
- NocoDB
- パスワードマネージャLastPass置き換え