本站支持搜索的镜像仓库:Docker Hub、gcr.io、ghcr.io、quay.io、k8s.gcr.io、registry.gcr.io、elastic.co、mcr.microsoft.com
Intel QAT 设备插件为 Kubernetes 环境提供 Intel QAT 设备支持。该插件通过 Linux 内核中的虚拟功能(VF)设备驱动识别并管理 QAT 硬件资源,使容器能够访问 QAT 硬件加速的加密和压缩功能。支持的设备由系统中可用的 VF 驱动决定,适用于需要高性能加密/压缩处理的 Kubernetes 工作负载。
插件支持的设备包括但不限于:
QAT 插件支持多种命令行参数配置,核心模式包括 dpdk 和 kernel,具体参数如下表:
| 参数 | 参数类型 | 说明 |
|---|---|---|
| -dpdk-driver | string | 用于配置 QAT 设备的 DPDK 设备驱动(默认:vfio-pci) |
| -kernel-vf-drivers | string | 系统中 QAT 设备的 VF 驱动列表(逗号分隔),支持驱动包括:DH895xCC、C62x、C3xxx、4xxx、C4xxx、D15xx(默认:c6xxvf,4xxxvf) |
| -max-num-devices | int | 插件可提供的最大 QAT 设备数量(默认:32) |
| -mode | string | 插件模式,可选 dpdk 或 kernel(默认:dpdk) |
| -allocation-policy | string | 资源分配策略:balanced(均衡分配 VF 资源到 PF 设备)或 packed(优先填满一个 PF 设备再分配下一个)(无默认值) |
注意:
- 若内核版本 ≥ 5.9,
vfio-pci模块需加载disable_denylist=1参数以确保插件正常工作。kernel模式默认不包含在构建中(包括 Docker Hub 镜像),需通过特定命令构建(见 构建插件镜像)。kernel模式基于系统配置的逻辑实例分配资源,不保证容器间设备隔离,不推荐使用,未来将被弃用。
dpdk 模式(推荐)提供隔离的设备访问,kernel 模式(兼容旧系统)基于逻辑实例分配。Docker Hub 提供预构建镜像 intel/intel-qat-plugin,支持最新版本和特定版本标签(如 v0.18.0)。部署命令:
# 部署指定版本(替换 <RELEASE_VERSION> 为版本号,如 v0.18.0) kubectl apply -k [***]<RELEASE_VERSION> # 部署调试模式(开启详细日志) kubectl apply -k [***]<RELEASE_VERSION>
export INTEL_DEVICE_PLUGINS_SRC=/path/to/intel-device-plugins-for-kubernetes git clone [***] ${INTEL_DEVICE_PLUGINS_SRC}
使用 make 构建本地镜像(默认驱动为 Docker,可通过 BUILDER 参数指定其他工具):
cd ${INTEL_DEVICE_PLUGINS_SRC} # 构建 dpdk 模式镜像(默认) make intel-qat-plugin # 构建 kernel 模式镜像(需手动指定) make intel-qat-plugin-kerneldrv
构建成功后生成镜像 intel/intel-qat-plugin:devel。
通过 kustomize 部署 ConfigMap 和 DaemonSet:
# 部署默认配置 kubectl apply -k ${INTEL_DEVICE_PLUGINS_SRC}/deployments/qat_plugin # 部署调试模式 kubectl apply -k ${INTEL_DEVICE_PLUGINS_SRC}/deployments/qat_plugin/overlays/debug
检查节点资源分配,确认插件已注册 QAT 设备:
kubectl describe node <节点名称> | grep qat.intel.com/generic # 预期输出(示例): # qat.intel.com/generic: 10 # qat.intel.com/generic: 10
直接编译插件二进制文件:
cd ${INTEL_DEVICE_PLUGINS_SRC} make qat_plugin
在节点上以 root 身份运行插件(根据实际环境调整参数):
sudo -E ${INTEL_DEVICE_PLUGINS_SRC}/cmd/qat_plugin/qat_plugin \ -dpdk-driver igb_uio \ -kernel-vf-drivers dh895xccvf \ -max-num-devices 10 \ -debug # 预期输出(示例): # QAT device plugin started # Discovered Devices below: # 03:01.0 device: corresponding DPDK device detected is uio0 # ... # device-plugin registered
通过 DPDK 的 ***-perf 和 compress-perf 工具验证 QAT 加密/压缩加速能力。
igb_uio、vfio-pci)。hugepages-2Mi=1024)。cd ${INTEL_DEVICE_PLUGINS_SRC} make ***-perf # 生成镜像 intel/***-perf:devel
通过 kustomize 部署 DPDK 测试 Pod(包含 QAT 设备请求和大页配置):
kubectl apply -k ${INTEL_DEVICE_PLUGINS_SRC}/deployments/qat_dpdk_app/base/ kubectl get pods # 确认 Pod 状态为 Running
进入 Pod 执行加密性能测试:
kubectl exec -it qat-dpdk bash # 执行 AES-CBC 加密吞吐量测试(根据 DPDK 版本调整 .so 文件版本) dpdk-test-***-perf -l 6-7 -w $QAT1 \ -d /usr/lib64/librte_***_ring.so.1.1 \ -d /usr/lib64/librte_pmd_qat.so.1.1 -- \ --ptest throughput --devtype ***_qat \ --optype cipher-only --cipher-algo aes-cbc \ --cipher-op encrypt --cipher-key-sz 16 \ --total-ops 10000000 --burst-sz 32 --buffer-sz 64
通过 kustomize 部署预配置的加密/压缩测试:
kubectl apply -k ${INTEL_DEVICE_PLUGINS_SRC}/deployments/qat_dpdk_app/test-***1 kubectl apply -k ${INTEL_DEVICE_PLUGINS_SRC}/deployments/qat_dpdk_app/test-compress1 # 查看测试日志 kubectl logs qat-dpdk-test-***-perf-tc1 kubectl logs qat-dpdk-test-compress-perf-tc1
注意:自动测试需集群启用 Kubernetes CPU 管理器
static策略。
OpenSSL 加速演示需结合 Kata Containers,详情参考 Kata Containers 文档。
通过 PCI 设备 ID 检查节点是否存在 QAT 硬件:
for i in 0442 0443 37c9 19e3; do lspci -d 8086:$i; done # 若输出包含类似 "8086:0442" 的设备,则表示存在 QAT 硬件
免费版仅支持 Docker Hub 加速,不承诺可用性和速度;专业版支持更多镜像源,保证可用性和稳定速度,提供优先客服响应。
免费版仅支持 docker.io;专业版支持 docker.io、gcr.io、ghcr.io、registry.k8s.io、nvcr.io、quay.io、mcr.microsoft.com、docker.elastic.co 等。
当返回 402 Payment Required 错误时,表示流量已耗尽,需要充值流量包以恢复服务。
通常由 Docker 版本过低导致,需要升级到 20.x 或更高版本以支持 V2 协议。
先检查 Docker 版本,版本过低则升级;版本正常则验证镜像信息是否正确。
使用 docker tag 命令为镜像打上新标签,去掉域名前缀,使镜像名称更简洁。
探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式
通过 Docker 登录方式配置轩辕镜像加速服务,包含7个详细步骤
在 Linux 系统上配置轩辕镜像源,支持主流发行版
在 Docker Desktop 中配置轩辕镜像加速,适用于桌面系统
在 Docker Compose 中使用轩辕镜像加速,支持容器编排
在 k8s 中配置 containerd 使用轩辕镜像加速
在宝塔面板中配置轩辕镜像加速,提升服务器管理效率
在 Synology 群晖NAS系统中配置轩辕镜像加速
在飞牛fnOS系统中配置轩辕镜像加速
在极空间NAS中配置轩辕镜像加速
在爱快ikuai系统中配置轩辕镜像加速
在绿联NAS系统中配置轩辕镜像加速
在威联通NAS系统中配置轩辕镜像加速
在 Podman 中配置轩辕镜像加速,支持多系统
配置轩辕镜像加速9大主流镜像仓库,包含详细配置步骤
无需登录即可使用轩辕镜像加速服务,更加便捷高效
需要其他帮助?请查看我们的 常见问题 或 官方QQ群: 13763429