跳到主要内容

Proxmox x86_64运行arm架构虚拟机部署教程

一、准备工作

在开始部署aarch64架构的虚拟机之前,请确保您的Proxmox VE环境已经正确安装并配置好,并且有可用的存储空间。

二、创建虚拟机

  1. 创建基础虚拟机 使用以下命令创建一个基础虚拟机,指定内存、CPU核心数、网卡类型和系统标识等参数。
    qm create 116 --name aarch64-vm --memory 8192 --cores 8 --net0 virtio,bridge=vmbr0 --ostype l26

三、特定于aarch64架构的配置

  1. 安装必需固件
    • 对于aarch64架构的支持,需要先安装对应的固件包。
    apt install pve-edk2-firmware-aarch64
  2. 设置机器标识与架构
    • 设置虚拟机使用virt类型的机器标识,并指定架构为aarch64
    qm set 116 --machine virt --arch aarch64
  3. 删除vmgenid
    • 删除生成的唯一标识符以避免潜在冲突。
    qm set 116 --delete vmgenid

四、导入磁盘镜像

这里使用Debian 12的arm-cloud镜像进行演示。请根据实际情况替换镜像文件名和路径。

qm importdisk 116 debian-12-genericcloud-arm64-20241201-1948.qcow2 local-lvm -format qcow2

五、绑定磁盘和配置启动顺序

  1. 挂载磁盘到SCSI控制器
    • 将磁盘挂载到SCSI控制器,并设定启动顺序。
    qm set 116 --scsihw virtio-scsi-pci --scsi0 local-lvm:vm-116-disk-0
    qm set 116 --boot order=scsi0

六、添加云初始化支持

  1. 配置cloud-init
    • 如果需要cloud-init功能,则添加相应的配置。
    qm set 116 --scsi2 local-lvm:cloudinit
    • 配置DNS服务器地址(建议通过WebUI配置)。
    qm set 116 --nameserver "dns服务器地址"
    • 配置SSH密钥(建议通过WebUI上传密钥)。
    qm set 116 --sshkey ~/.ssh/id_ed25519.pub
    • 配置IP地址(根据实际网络配置调整)(建议通过WebUI配置)。
    qm set 116 --ipconfig0 ip=192.168.2.1/24,gw=192.168.2.254,ip6=auto
    • 配置cloud-init用户和密码(生产环境中请使用强密码)(建议通过WebUI配置)。
    qm set 116 --ciuser root --cipassword 强密码

七、配置BIOS/UEFI

  1. 指定使用OVMF作为BIOS类型
    qm set 116 --bios ovmf

八、创建EFI磁盘

  1. 创建EFI磁盘
    • 运行以下命令,为 VM 创建 EFI 磁盘,并替换为实际的 VM ID(建议通过WebUI添加)。
    qm set 116 --efidisk0 local-lvm:0,efitype=4m,format=raw

九、设置CPU型号(可选)

  1. 根据实际需求调整CPU模型
    qm set 116 --args '-cpu cortex-a76'

十、网络配置

  1. 配置网络接口
    • 使用VirtIO网卡连接到指定的桥接网络。
    qm set 116 --net0 virtio,bridge=vmbr0

十一、其他配置项

  1. 启用串口控制台
    • 方便通过串口进行调试或管理。
    qm set 116 --serial0 socket --vga serial0

十二、最终检查与启动

  1. 确认所有配置无误后启动虚拟机
    • 在完成上述所有步骤之后,可以尝试启动新创建的aarch64架构虚拟机。
    qm start 116

十三、附加说明

  • 以上命令中的116代表虚拟机ID,请根据实际情况替换。
  • --ostype l26表示操作系统类型为Linux 2.6及以上版本,对于aarch64系统同样适用。
  • qm set命令用于修改现有虚拟机的属性,确保按照正确的顺序执行每一步操作。
  • 如果您计划将此虚拟机用作模板,可以在最后使用qm template 116命令将其转换为模板。

操作流程图

此控制流图简洁地展示了从创建虚拟机到启动的整个流程,每个节点代表一个关键步骤。