TrueNAS 25.04 虚拟机旁路由解决方案

date
Apr 16, 2025
slug
truenas-2504-vm
status
Published
tags
TrueNAS
summary
新的虚拟机桥接解决方案
type
Post
TrueNAS 25.04 用 Incus 取代了以前的 KVM 虚拟机管理程序(TrueNAS 24.10 及更早版本),用于虚拟机 (VM) 部署。它还引入了对 Linux 系统容器 (LXC) 的支持,从而实现类似于 TrueNAS CORE 中的 jails 的轻量级隔离。
由于以前的 KVM 虚拟机监控程序(TrueNAS 24.10 及更早版本)与 TrueNAS 25.04 中的 Incus 之间的配置不兼容,现有 VM 配置在升级期间不会自动传输。但是,TrueNAS 会保留存储 zvol (也就是虚拟机的硬盘),允许您手动重新创建以前的 VM 配置并使其重新联机。
更新之前,最好手动记录(截图或者记事本)虚拟机的配置。

更新后

首先你需要确保你的 zvol 都在同一个 dataset ,以便后面的导入。如果不在,可以手动迁移。具体方法可以问 ChatGPT。比如我的 zvol 都放在名为 ssd-pool1 的 pool 。
满足以上要求后,你可以点击 Instances 进入新的虚拟机页面,他会让你选择一个 pool 。点击 Select Pool ,选择刚才所有 zvol 都在的哪个 pool 。比如我的就选择 ssd-pool1 。
然后你就可以创建新虚拟机了,点击 Create New Instance ,会让你选择虚拟化类型,有 Container 和 VM 两种,我们要虚拟机就选 VM 。
notion image
然后 VM Image Options 可以选择 Use a Linux image (linuxcontainers.org)Upload ISO, import a zvol or use another volume 。我们选择第二个。 接下来点击 Select Volume,会让你选择挂载的盘,你可以上传 iso 镜像(全新安装),或者现有的 zvol 。
notion image
接着点击 Import Zvols 就可以导入之前的 zvol ,因为他这个有 bug 。如果要导入的 zvol 和你最开始选择的 pool 不是同一个,会报错。
notion image
然后 CPU 、RAM 等配置就自由发挥就行了。
主要说一下网络部分。在之前我们为了能让 truenas 能够访问虚拟机,比如使用虚拟机旁路由提供的代理,我们是配置了网桥 br0 的。配置方法参考:https://www.truenas.com/docs/scale/scaletutorials/network/containernasbridge/
notion image
  1. 如果你的虚拟机只需要 ipv4 ,那么勾选 Bridged NICs br0 就可以了。truenas 也可以访问虚拟机。
  1. 如果你的虚拟机需要 ipv6 ,但是 truenas 不需要访问虚拟机,可以只勾选 Macvlan NICs br0.
  1. 如果你的虚拟机需要 ipv6 ,同时 truenas 需要访问虚拟机,那么需要同时勾选 Bridged NICs br0 和 Macvlan NICs br0 。然后在 openwrt 中删除 wan 口。但是不要把 eth0 和 eth 1 桥接在一起。

© Fantong 2023 - 2025