当然は All in boom のために使います,
PVE + OpenWrt + 黒群晖 DSM + Windwos10 + Ubuntu + Docker + HAOS
そして亡命者は直接 RAID0 に行きます!!
PVE のインストール#
公式サイトから ISO イメージをダウンロードします。私は Ventoy を使ってブートしていますが、書き込みツールを使って ISO を直接 U ドライブに書き込むこともできます。最初は loading で止まってしまいましたが、Ventoy のバージョンが古かったため、アップグレードしたら正常になりました(フォーマットは不要です)。
PVE のインストールに関するチュートリアルはたくさんありますが、特に注意すべき点はありません。IP を正しく書けば問題ありません。
参考動画: PVE 仮想マシンを利用して、自分だけの All In One システムを作りましょう!
PVE インストール後の便利なツール 2 つ:
https://bbs.x86pi.cn/thread?topicId=20
https://github.com/ivanhao/pvetools
ソースを変更し、サブスクリプションの通知を削除し、ハードディスクのパススルーを使用するために pvetools を利用できます。
マークについて:データセンターをクリック - オプション - マークスタイル設定 - 完全;その後、各ノードの最上部にマークを追加します。
OpenWrt#
ソフトルーターはインストールをお勧めしますが、メインでの使用は推奨しません。サイドゲートウェイを作るだけで良いです。例えば、魔法をインストールして Docker がイメージを取得できない問題を解決します。
ソフトルーターについては不良林の動画をお勧めします。非常にわかりやすいです:https://youtu.be/JfSJmPFiL_s?si=09dZqcEKDu1anurs
ファームウェアをダウンロード:https://firmware-selector.immortalwrt.org/?version=23.05.4&target=x86%2F64&id=generic 、COMBINED-EFI (SQUASHFS-COMBINED-EFI.IMG.GZ) を選択することをお勧めします。
イメージをアップロードし、次のコマンドを使用して:qm importdisk 100 /var/lib/vz/template/iso/openwrt.img local-lvm
仮想マシンにインポートします。
魔法の三点セットをインストールします:openClash、homeProxy、passwall
ネットワークカードの半仮想化がうまくいかない場合は、E1000 に戻します。
スピードテストの結果、少なくとも PVE8 では img2kvm ツールは必要なく、直接 qm コマンドでインポートできます。一般的には 2 コア 1G の構成で十分です。
しかし、今でも OpenWrt を理解するのは難しく、かなり複雑です。後で再研究しますが、今はネットワークカードを削除してしまいました。。。
DDNS-Go をルーターのポートフォワーディングと組み合わせることで外部からアクセス可能にするには、ドメイン名が必要で、光モデムはブリッジモードで、パブリック IP が必要です。
DSM#
使用しているのは GXNAS のブートファイルで、または有名なネイティブ RR ブートを見てみることもできます、復活版です https://github.com/RROrg/rr
GXNAS のイメージは直接仮想ネットワークカードをサポートしているので、半仮想化を選択すれば性能が向上します。
All in boom として、私は当然 RAID0 を選択し、データの安全性は定期的な冷却バックアップに依存しています。
Windows/Linux#
私は Win10 LTSC をインストールしています。Win11 は少し複雑で、UEFI + TPM を有効にし、Microsoft アカウントにログインする必要があるため、そんなに複雑にしたくありません。
PS:現在の最新の Win11 は最適化が進んでおり、2G のメモリで軽いタスクを実行するのも非常にスムーズです。
VirtIO ドライバーのイメージは、ページにアクセスして download the latest stable をクリックしてダウンロードできます。詳細は https://pve.proxmox.com/wiki/Windows_VirtIO_Drivers を参照してください。
Win は一般的にリモートデスクトップを使用します。コンピュータの右クリックプロパティで開くことができ、mstsc を使用して接続できます。Win10 の LTSC を新しくインストールした場合、ファンが異常に回転することがありますが、これはバグで、システムを更新して再起動すれば解決します。
Linux については特に言うことはなく、手順通り進めば実機と変わりません。私は Ubuntu Server をインストールしました。
Docker のインストールには [ワンキースクリプト](bash <(curl -sSL https://linuxmirrors.cn/docker.sh)) を使用できます。ソースを変更するための類似の [ワンキースクリプト](bash <(curl -sSL https://linuxmirrors.cn/main.sh)) もあります。
リモートログインを許可する必要がある場合は、/etc/ssh/sshd_config
を修正し、PermitRootLogin prohibit-password
を PermitRootLogin yes
に変更してからサービスを再起動します service ssh restart
。
Docker#
ここでは LXC を使用して Docker を作成することを選択しました。まず、CT テンプレートをダウンロードする必要があります。私は Ubuntu のものを使用しています。DockerHub を使用するために、前述の OpenWrt のゲートウェイを使用します。特権コンテナのチェックを外す必要があります。完了したら、オプション内の機能でネストなどをすべてチェックします。
注意が必要なのは、LXC 仮想化は効率が高いですが、完全な仮想化ではなく、ホストマシンの一部のリソースを共有したり制限があったりするため、Linux では LXC を使用していませんが、Docker はまだ使えると感じています。
Docker を起動できるようにするために、PVE で対応する LXC の設定を変更する必要があります。/etc/pve/lxc/{CTID}.conf
に次の内容を追加します:
lxc.apparmor.profile: unconfined
lxc.cgroup.devices.allow: a
lxc.cap.drop:
ほとんどの場合、Docker は正常に動作します。
ショートカットコマンド bash <(curl -sSL https://linuxmirrors.cn/docker.sh)
を使用して Docker をインストールし、ソースは変更しません。
インストールが完了したら、まずポータイナーをインストールします:
docker run -d -p 8000:8000 -p 9000:9000 --name=portainer --restart=always -v /var/run/docker.sock:/var/run/docker.sock -v portainer_data:/data outlovecn/portainer-cn:latest
サービスの推奨:ローカルネットワークの速度を測定するために speedtest を実行するか、iperf3 を使用することもできます。
HAOS#
冬瓜 HAOS の使用をお勧めします。PE バージョンの ISO を直接使用し、一発インストールします。
まだ詳しく研究する時間がありませんが、いくつかのプラグイン:
- 米家 - Xiaomi MIoT
- 美的美居 - Midea AC LAN
- 海尔智家 - haier
- 格力 - Gree Climate
- 石头 - homeassistant-roborock
Tailscale#
最初は Docker にインストールしようと思いましたが、特に良い記事を見つけられず、自分でやりたくもありませんでした。その後、多くの人が OpenWrt にインストールしているのを見ましたが、大部分は愛快にインストールしているもので、比較的簡単ですが、明らかに私には適していません。しかし、2 つのプロジェクトは良さそうです:
しかし、残念ながらインストール後にログインできましたが、設定したサブネットルーティングが無効でした。おそらく OpenWrt の前の作業でネットワークポートを削除したことが関係していると思います。結局、あきらめました。
最終的に この方 の方法を採用し、LXC を使用してインストールしました。Docker の設定と同様に、/etc/pve/lxc/{CTID}.conf
ファイルに TUN を有効にするための設定を追加する必要があります:
# この 10 200 は pve 上で ls -al /dev/net/tun を実行することで得られます。一般的には 10 200 です。
lxc.cgroup2.devices.allow: c 10:200 rwm
lxc.mount.entry: /dev/net/tun dev/net/tun none bind,create=file
また、LXC 内の /etc/sysctl.conf
で転送を有効にする必要があります:
net.ipv4.ip_forward=1
net.ipv6.conf.all.forwarding=1
# 実行して有効にする
# sysctl -p /etc/sysctl.conf
その後、公式のスクリプトを使用してインストールします:curl -fsSL https://tailscale.com/install.sh | sh
tailscale up --authkey=xxxxx --accept-routes --advertise-routes=192.168.0.0/24
を実行して有効にし、自分のネットワークセグメントと authkey に置き換えることを忘れないでください。
自動起動の設定:
systemd を使用して自動起動を設定します。/etc/systemd/system
に新しい設定ファイル tailscale.service
を作成し、ファイルの内容は以下の通りです:
Description=AutoStart tailscale
After=tailscale.service
Requires=tailscale.service
[Service]
Type=oneshot
ExecStart=/usr/bin/tailscale up --authkey=あなたのauthKey --accept-routes --advertise-routes=あなたの転送範囲
ExecStop=/usr/bin/tailscale down
RemainAfterExit=yes
Restart=on-failure
[Install]
WantedBy=multi-user.target
次に、以下のコマンドを実行します:
systemctl enable tailscale.service
systemctl start tailscale.service
LXC#
LXC のホスト名を変更します:
/var/lib/lxc/コンテナのid番号/config
/etc/pve/lxc/コンテナのid番号.conf
後者のファイルだけを変更しても構いませんが、両方を変更することをお勧めします。