33 KVM管理设备-配置虚拟机PCIe控制器

2023-11-06

33 KVM管理设备-配置虚拟机PCIe控制器

33.1 概述

虚拟机内部的网卡、磁盘控制器、PCIe直通设备都需要挂接到PCIe Root Port下面,每个Root Port对应一个PCIe插槽。Root Port的下挂设备支持热插拔,但是Root Port本身不支持热插拔,因此需要用户考虑设备热插的需求,规划虚拟机需要预留的最大PCIe Root Port数量,在虚拟机启动之前完成Root Port的静态配置。

33.2 配置PCIe Root、PCIe Root Port和PCIe-PCI-Bridge

虚拟机PCIe控制器通过XML文件进行配置,PCIe Root、PCIe Root Port和PCIe-PCI-Bridge对应XML中的model分别为pcie-root、pcie-root-port、pcie-to-pci-bridge。

33.2.1 简化配置方法

在虚拟机的XML文件中写入以下内容,controller的其他属性由libvirt自动填充:

  <controller type='pci' index='0' model='pcie-root'/>
  <controller type='pci' index='1' model='pcie-root-port'/>
  <controller type='pci' index='2' model='pcie-to-pci-bridge'/>
  <controller type='pci' index='3' model='pcie-root-port'/>
  <controller type='pci' index='4' model='pcie-root-port'/>
  <controller type='pci' index='5' model='pcie-root-port'/>

其中:由于pcie-root和pcie-to-pci-bridge分别占用1个index,因此最终的index等于需要的Root Port数量+1。

33.2.1完整配制方法

在虚拟机的XML文件中写入以下内容:

  <controller type='pci' index='0' model='pcie-root'/>
  <controller type='pci' index='1' model='pcie-root-port'>
    <model name='pcie-root-port'/>
    <target chassis='1' port='0x8'/>
    <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x0' multifunction='on'/>
  </controller>
  <controller type='pci' index='2' model='pcie-to-pci-bridge'>
    <model name='pcie-pci-bridge'/>
    <address type='pci' domain='0x0000' bus='0x01' slot='0x00' function='0x0'/>
  </controller>
  <controller type='pci' index='3' model='pcie-root-port'>
    <model name='pcie-root-port'/>
    <target chassis='3' port='0x9'/>
    <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x1'/>
  </controller>
  <controller type='pci' index='3' model='pcie-root-port'>

其中:

  • Root Port的chassis和port属性必须依次递增,由于中间插入一个PCIe-PCI-Bridge,chassis编号跳过2,但是port编号仍然连续。
  • Root Port的address function的取值范围为0x0~0x7。
  • 每个slot最多下挂8个function,挂满之后需要递增slot编号。

由于完整配置方法相对复杂,建议采用简化配置方法。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

33 KVM管理设备-配置虚拟机PCIe控制器 的相关文章

  • Centos8破解Root密码

    注 Centos7同理 1 重启Centos8系统后 在启动页面中选中第一行 按 e 键进入界面 2 找到linux开头所在行的找到 ro 改为上 rw init sysroot bin bash 同时按下 Ctrl X 跳转到紧急模式 3
  • DIY 云成本优化的5大挑战

    外星人 黑暗骑士 帝国反击战 在 Incredibuild 如果有一样东西我们喜欢 那就是我们的话题永远有续集 我们将针对云端优化推出一个更深入的续集 但这一次我们谈论的是云成本优化 采用 DIY 的方式 如果你还不确定什么是云端优化 请查
  • 服务器经常出现自动重启怎么办

    服务器自动重启是一个复杂且常见的问题 可能由多种原因引起 从硬件故障到软件问题 从电源问题到散热问题 每一个环节都可能成为服务器的杀手 在处理此类问题时 需要我们有一套完整的策略和方案 以便快速准确地定位并解决问题 1 硬件检查 首先 我们
  • 8大数字技术打造ESG发展新范式!工业“双碳”建设应该这么做

    随着国家 双碳 目标的提出 数字化 绿色化证进入历史交汇 协同发展 路径合一 相辅相成的重要阶段 在此背景下 中国信通院 中国航天航空 工业互联网产业联盟于2022年联合出版了 数字技术赋能工业碳达峰碳中和应用指南 以下简称 指南 今年又细
  • 思腾合力赞助CCF YOCSEF太原第十一届学术委员会第三次全体会议

    2024年1月6日 由思腾合力赞助的 CCF YOCSEF太原第十一届学术委员会第三次全体会议暨AC换届选举活动 在山西大学举办 华北区教育行业负责人宋肖敏出席本次会议 会议汇聚了众多学术界和企业界的精英 共同探讨人工智能和计算机科学的未来
  • KALI Linux 最新超详细安装教程

    自己也在学习所以就想着记录一下 接下来开始安装 一 先下载好kali linux 的镜像 可以去kali的官网 https www kali org get kali kali bare metal 还可以去 清华大学开源软件镜像站下载 h
  • 在win10和Linux上配置SSH 无密码登录

    文章目录 一 用途 二 在本地机器上使用ssh keygen产生公钥私钥对 1 在Linux 或macOS 上产生SSH公私钥的方法 2 在win10上产生SSH公私钥的方法 a 检查windows 本地是否安装有ssh b 在本地生成SS
  • 使用匿名binder实现client向server端的死亡通知

    一 引言 因为binder是跨进程通信 难免会遇到服务端出现异常挂死的情况 这个时候需要通知到客户端进行相应的处理 在网络通信中是非常常见的机制 当然 在binder中 Android也为我们写好了相关的框架 但通过binder源码分析 你
  • Linux ls命令

    目录 一 配置项 1 1 ls l 1 2 ls a 1 3 ls lrt 1 4 ls ld 二 案例 2 1 查看指定文件夹下文件的数量
  • IT圈大实话!卷运维不如卷网络安全

    前言 在刚刚过去的金九银十 我进行了多场网络安全的技术面试 我发现最近很多从事运维的选择了辞职 转行到了网络安全这个发展路线 说实话 运维工程师这个岗位在IT行业里面确实是处于最底层的 不管什么环节出现问题 基本都是运维背锅 薪资水平也比不
  • 小白成功搭建Elasticsearch 只需五步(包含配置xpack)

    ElasticSearch 安装成功后 是不需要使用用户名和密码就可以访问的 这也是在配置skywalking的apm过程中 连接es数据库无需设置用户名和密码的原因 启动es也非常的简单 在 bin 目录下运行elasticsearch
  • Linux 软件安装以及管理

    本篇主要记录常用的软件安装和管理方式 主要是 yum rpm dnf apt pip 大致都是一样的 主要是部分软件提供了解决依赖的功能 内容不包括源码安装 源码安装情况相对比较复杂 后续有时间再补充 约定 案例所用模板软件均为 pytho
  • 服务器集群是如何提高计算性能的?

    服务器集群是一种将多台服务器连接起来协同工作的技术 通过集群配置 可以提高计算性能 可靠性和可扩展性 以下是服务器集群如何提高计算性能的详细解释 一 并行处理能力 服务器集群的核心优势在于其并行处理能力 通过将多个服务器组成一个集群 可以将
  • Jenkins流水线怎么做?

    问CHAT Jenkins流水线怎么做 CHAT回复 Jenkins流水线是一种创建 测试和部署应用程序的方法 以下是为Jenkins创建流水线的步骤 1 安装Jenkins 首先你需要在你的服务器上安装Jenkins 这个过程可能会根据你
  • VMware 最新版 - 虚拟机安装、激活、Centos安装、XShell 连接虚拟机、网络配置(全流程)

    目录 一 VMware 从安装到使用全流程 1 1 安装和激活 1 2 下载 Centos 镜像 以 7 为例 1 3 创建虚拟机 1 4 网络配置 1 5 验证网络是否可用 一 VMware 从安装到使用全流程 1 1 安装和激活 a 从
  • SRC漏洞挖掘经验+技巧篇

    一 漏洞挖掘的前期 信息收集 虽然是前期 但是却是我认为最重要的一部分 很多人挖洞的时候说不知道如何入手 其实挖洞就是信息收集 常规owasp top 10 逻辑漏洞 重要的可能就是思路猥琐一点 这些漏洞的测试方法本身不是特别复杂 一般混迹
  • Python自动化操作:简单、有趣、高效!解放你的工作流程!

    今天跟大家分享一套自动化操作流程解决方案 基于 Python语言 涉及 pyautogui pyperclip pythoncom win32com 依赖包 安装命令为 pip install pyautogui pip install p
  • Kubernetes (十一) 存储——Secret配置管理

    一 简介 从文件创建 echo n admin gt username txt echo n westos gt password txt kubectl create secret generic db user pass from fi
  • Kubernetes (十三) 存储——持久卷-动静态分配

    一 简介 二 NFS持久化存储步骤 静态分配 1 集群外主机用上次nfsdata共享目录中创建用来测试的pv 1 3 目录 用来对三个静态pv 2 创建pv的应用文件 vim pv yaml apiVersion v1 kind Persi
  • 短信系统搭建主要因素|网页短信平台开发源码

    短信系统搭建主要因素 网页短信平台开发源码 随着移动互联网的快速发展 短信系统已成为企业和个人进行信息传递的重要工具 建立一个高效可靠的短信系统对于企业来说非常重要 下面我们将介绍一些影响短信系统搭建的主要因素 1 平台选择 在搭建短信系统

随机推荐

  • 二分模板——数的范围

    789 数的范围 先用二分求出x的左边界 a mid gt x mid在x的右边 所以右边界变为mid 即 if a mid gt x r mid else l mid 1 根据模板得出mid mid l r gt gt 1 若得出的左边界
  • stm32+DS1302+TM1638驱动程序

    TM1638数码管显示驱动程序 参考 1 TM1638与STM32连接 1 1 硬件连接 Vcc 电源 GND 电源地 STB PA0 CLK PA1 DIO PA2 1 2 驱动程序 TM1638 c文件 Program Assignme
  • MySQL基础入门语法

    一 数据库基础概念 1 1 数据库定义 数据库 存储数据的软件 长期存储在计算机内 有组织的数据集合 表 数据库存储数据的基本单位 数据按照分类存储到不同的表中 能够高效的的查询其中数据 对于测试工作 如果项目页面没有实现 需要校验数据 则
  • 数据结构之常见排序算法

    文章目录 1 排序概念 2 10种排序比较 3 排序算法 3 1直接插入排序 元素越有序 越高效 3 2希尔排序序 缩小增量排序 3 3直接选择排序 3 4堆排序 3 5冒泡排序 3 6快速排序 递归实现 无序使用最好 3 6 1挖坑法 建
  • 如何使用云桌面进行开发?

    云桌面又称桌面虚拟化 云电脑 是替代传统电脑的一种新模式 采用云桌面后 用户无需再购买电脑主机 主机所包含的CPU 内存 硬盘等组件全部在后端的服务器中虚拟出来 为什么要用云桌面进行开发 采用了云桌面 大量的终端电脑都可以统一集中管理 系统
  • vs2015写的程序,在vs2019下无法运行,报错代码为-1073741701

    vs2015写的程序 在vs2019下无法运行 报错代码为 1073741701 1 现象 2 vs2019下的配置 3 VS015下配置 4 在VS015下运行结果 5 解决 vs2019能够完美的向下兼容vs2017 vs2015的项目
  • C语言函数大全-- x 开头的函数(5)

    x 开头的函数 5 1 xdrmem create 1 1 函数说明 1 2 演示示例 2 xdrmem destroy 2 1 函数说明 2 2 演示示例 3 xdrrec create 3 1 函数说明 3 2 演示示例 4 xdrre
  • flutter手势onLongPress 的默认时间

    这个长按的时间是100ms左右 import dart async import package flutter material dart import package learn flutter02 extension size fit
  • DeviceDriver(十四):多点触摸(MT协议,Input子系统)

    Input子系统框架参考 02 输入子系统 猩猩 點燈的博客 CSDN博客 电阻式多点触摸驱动参考 05 触摸屏驱动 猩猩 點燈的博客 CSDN博客 一 电容触摸屏知识点 1 电容触摸屏是I2C接口 需要触摸IC 因此框架为I2C设备驱动框
  • 文件上传upload-labs第十一至十九关

    第十一关 白名单 get类型 00截断 需要两个条件 php版本小于5 3 4 php的magic quotes gpc为OFF状态 另save path等于下面的值 upload 4 php 00 BP修改一下抓到的包 第十二关 POST
  • 【MySQL存储过程】存储过程的查看与删除

    目录 一 查看存储过程 1 SHOW STATUS语句查看存储过程 2 使用SHOW CREATE语句查看存储过程的定义 3 从information schema Routine表中查看存储过程的信息 二 存储过程的删除 一 查看存储过程
  • QT中HASH函数方法

    包含的头文件 include QCryptographicHash 具体代码实现 通过hash中的sha1加密方式加密 QCryptographicHash Hash QCryptographicHash Sha1 QString word
  • pdf文件太大如何处理?教你pdf压缩简单方法

    PDF文件过大 是很多人在使用PDF文件时都遇到过的一个常见问题 过大的PDF文件不仅会占用大量的存储空间 还会影响文件传输和处理效率 下面给大家总结了几个方法 帮助大家解决PDF文件过大的问题 方法一 嗨格式压缩大师 这是一款专业的文件压
  • PSM:协议状态机(Protocol State Machine),一款用于流式传输的数据协议解析组件

    PSM 协议状态机 Protocol State Machine 一款用于流式传输的数据协议解析组件 介绍 PSM Protocol State Machine 协议状态机 一款用于流式传输的数据协议解析组件 可有效解决沾包 断帧问题 PS
  • 文字识别:Tesseract OCR

    一 安装并配置Tesseract 1 下载Tesseract OCR 网上直接下载即可 2 双击安装 选择所有人均可使用 避免权限问题 勾选最后一项添加语言包 但是全部勾选需要1 3G 可以点开加号 选择自己所需的语言包即可 注意 这里最好
  • 面试经典(4)--链表逆序

    题目 输入单链表的头结点 反转链表并输出反转之后的头结点 pNode代表当前节点 修改pNode的时候 要知道他的前面节点 并保存后面节点 因为一旦pNode gt next被修改 就和后边断开 ListNode reverse ListN
  • MySQL报错:this is incompatible with sql_mode=only_full_group_by

    错误场景 今天在自己电脑运行一个刚clone下来的项目 在登录完成进入主页的时候 报了一串this is incompatible with sql mode only full group by 错误 我很确定之前在公司电脑上是不会有这个
  • 如何命令杀死yarn的作业

    yarn application kill 命令即可kill掉
  • php安装swoole扩展(linux)

    在Linux中php安装swoole扩展 相关环境 LAMP或LNMP开发环境 L 指linux A 指Apache M 指MySQL P 指PHP N 指Nginx 下载swoole wget c https github com swo
  • 33 KVM管理设备-配置虚拟机PCIe控制器

    文章目录 33 KVM管理设备 配置虚拟机PCIe控制器 33 1 概述 33 2 配置PCIe Root PCIe Root Port和PCIe PCI Bridge 33 2 1 简化配置方法 33 2 1完整配制方法 33 KVM管理