带有 LXD 和 Multipass 的工作站虚拟机

主要观点:作者多年来使用多种工具创建虚拟机,加入 Canonical 后,LXD 和 Multipass 成为其工作流程中不可或缺的部分,分享使用它们的原因和日常工作中的用法。
关键信息

  • LXD 和 Multipass 都可作为 snap 包安装,在多种 Linux 发行版及其他平台上可用。
  • Multipass 可提供按需访问 Ubuntu VMs 的简单方式,默认使用最适合的宿主机管理程序,可自定义实例,有别名等功能,还可创建蓝图。
  • LXD 多年来一直维护于 NixOS,4.0 LTS 版本起支持运行虚拟机,可通过 API 启动容器或虚拟机,有桌面虚拟机功能,LXD UI 是与虚拟机交互的好方式。
  • LXD 功能更强大,支持更复杂的网络等,Multipass 则小巧易配置,各有优势。
    重要细节
  • 安装命令:sudo snap install lxdsudo lxd init --minimalsudo usermod -aG lxd $USERsudo snap install multipass
  • NixOS 中安装 Multipass 的配置:{ virtualisation.multipass.enable = true; }
  • NixOS 中安装 LXD 及启用 UI 的配置:{ virtualisation.lxd = { enable = true; zfsSupport = true; ui.enable = true; }; networking = { firewall = { trustedInterfaces = [ "lxdbr0" ]; }; } }
  • Multipass 基本操作命令:multipass shellmultipass mountmultipass removemultipass purgemultipass alias等。
  • LXD 启动虚拟机命令:lxc launch ubuntu:noble ubuntu --vmlxc launch images:fedora/40 fedora --vmlxc launch images:archlinux arch --vm -c security.secureboot=false等。
  • LXD 桌面虚拟机启动命令:lxc launch images:ubuntu/24.04/desktop ubuntu --vm --console=vgalxc launch images:archlinux/desktop-gnome arch --vm -c limits.cpu=8 -c limits.memory=16GiB -c security.secureboot=false等。
  • 启用 LXD UI 的命令:lxc config set core.https_address :8443sudo snap set lxd ui.enable=truesudo systemctl reload snap.lxd.daemon
阅读 54
0 条评论