AMD SEV使用

本文详细介绍了如何在Linux环境下配置和检查AMD SEV支持,包括使用libvirt进行虚拟机设置,如launchSecurity、虚拟机类型、内存、Virtio设备等。同时,文章还提及了虚拟机内部的SEV检查以及存在的限制,例如必须使用OVMF引导,virtio-blk磁盘类型的限制等。

qemu中有对SEV的部分介绍:qemu-5.0/docs/amd-memory-encryption.txt

Libvirt对SEV的配置

libvirt官方文档如下:

https://libvirt.org/formatdomaincaps.html#elementsSEV

https://libvirt.org/kbase/launch_security_sev.html

https://libvirt.org/formatdomain.html#sev

宿主机支持SEV检查

在libvirt >= 6.5.0时,可以使用virt-host-validate命令查看宿主机是否支持SEV,或者通过以下步骤来手动检查是否支持SEV:

  1. grep -w sev /proc/cpuinfo查看宿主机是否支持sev特性
  2. 修改grub确保mem_encrypt=on kvm_amd.sev=1,kvm_amd.sev=1也可以通过modprobe配置,通过cat /sys/module/kvm_amd/parameters/sev查看值为1表示SEV特性开启

libvirt支持SEV检查

libvirt >= 4.5.0(最好>5.1.0,其中解决了SEV的bug)

QEMU >= 2.12.0

开启内核对SEV的支持之前libvirtd如果已经处于运行状态,则需要重启libvirtd服务,并删除capabilities的缓存:

rm -f /var/cache/libvirt/qemu/capabilities/*

使用virsh domcapabilities命令或者调用接口virConnectGetDomainCapabilities,可以从输出的sev标签中获取到对sev的支持情况:

# virsh domcapabilities

<domainCapabilities>

...

  <features>

    ...

    <sev supported='yes'>

      <cbitpos>47</cbitpos>

      <reducedPhysBits>1</reducedPhysBits>

    </sev>

    ...

  </features>

</domainCapabilities>

cbitpos:C-bit位处于第几位。

reducedPhysBits:需要有多个位用于sev,这些位不能用于物理地址寻址。

如果使用virsh domcapabil

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值