专属域名
文档搜索
轩辕助手
Run助手
邀请有礼
返回顶部
快速返回页面顶部
收起
收起工具栏
轩辕镜像 官方专业版
轩辕镜像 官方专业版轩辕镜像 官方专业版官方专业版
首页个人中心搜索镜像

交易
充值流量我的订单
工具
提交工单镜像收录一键安装
Npm 源Pip 源Homebrew 源
帮助
常见问题
其他
关于我们网站地图

官方QQ群: 1072982923

intel/intel-fpga-initcontainer Docker 镜像 - 轩辕镜像

intel-fpga-initcontainer
intel/intel-fpga-initcontainer
Kubernetes环境中用于英特尔FPGA编程的容器运行时接口钩子
0 次下载
🙃 代码没问题,结果发布失败在拉镜像
中文简介版本下载
🙃 代码没问题,结果发布失败在拉镜像

Intel FPGA编程CRI钩子(Kubernetes)

镜像概述和主要用途

Intel FPGA编程CRI钩子(Container Runtime Interface Hook)是Intel官方提供的容器运行时钩子工具,专为Kubernetes集群设计,用于实现FPGA(现场可编程门阵列)设备的动态编程与资源管理。该镜像通过与Kubernetes CRI(容器运行时接口)集成,在容器启动阶段自动完成FPGA设备的比特流加载、资源配置及访问控制,确保容器能够无缝使用FPGA加速资源。

该镜像需与Intel FPGA设备插件(Intel FPGA Device Plugin for Kubernetes)协同工作,共同构成Kubernetes集群中FPGA资源管理的完整解决方案。更多信息请参见Intel设备插件GitHub仓库。

核心功能和特性

  • Kubernetes CRI兼容:遵循Kubernetes CRI规范,支持主流容器运行时(如containerd 1.6+、CRI-O 1.24+)。
  • FPGA编程管理:支持动态加载FPGA比特流(Bitstream),实现设备功能重配置。
  • 资源隔离与分配:与Kubernetes资源管理框架集成,确保多容器安全共享FPGA资源。
  • 设备插件协同:通过Unix域套接字与Intel FPGA设备插件通信,获取设备拓扑及状态信息。
  • 轻量级设计:最小化运行时开销,适合生产环境大规模部署。
  • 可配置性:支持通过环境变量自定义编程参数(如比特流路径、超时时间等)。

使用场景和适用范围

典型使用场景
  • FPGA加速应用部署:在Kubernetes集群中运行FPGA加速的AI推理、视频转码、高性能计算等应用。
  • 动态资源复用:根据应用需求加载不同功能的FPGA比特流,实现设备多用途复用。
  • 云原生加速:边缘或云环境中通过Kubernetes编排FPGA加速任务,提升计算效率。
适用范围
  • Kubernetes版本:1.24及以上
  • 容器运行时:containerd 1.6+、CRI-O 1.24+
  • FPGA设备:Intel FPGA系列(如Arria 10、Stratix 10、Agilex)
  • 依赖组件:需预先部署Intel FPGA设备插件(v0.25+)及OPAE驱动

使用方法和配置说明

前提条件
  1. Kubernetes集群(1.24+)正常运行
  2. 容器运行时(containerd/CRI-O)已安装并启用CRI钩子支持
  3. Intel FPGA设备插件已部署(参考官方部署文档)
  4. FPGA设备已物理连接至节点,且OPAE驱动正常加载
镜像获取

通过Docker拉取官方镜像(具体标签请参考GitHub仓库最新版本):

bash
docker pull intel/intel-fpga-cri-hook:latest
配置参数

该镜像通过环境变量配置,主要参数如下:

环境变量名描述默认值
FPGA_DEVICE_PLUGIN_SOCKETFPGA设备插件的Unix域套接字路径/var/lib/kubelet/device-plugins/fpga.sock
CRI_HOOK_PATHCRI钩子配置文件路径/etc/containerd/hooks.d/fpga-hook.json
BITSTREAM_BASE_PATHFPGA比特流文件存储路径/opt/fpga/bitstreams
LOG_LEVEL日志级别(debug/info/warn/error)info
HOOK_TIMEOUT钩子处理超时时间(秒)30
部署示例
Docker Run命令示例(节点级部署)
bash
docker run -d \
  --name fpga-cri-hook \
  --restart=always \
  --privileged \
  -v /var/lib/kubelet/device-plugins:/var/lib/kubelet/device-plugins \
  -v /etc/containerd/hooks.d:/etc/containerd/hooks.d \
  -v /opt/fpga/bitstreams:/opt/fpga/bitstreams \
  -e FPGA_DEVICE_PLUGIN_SOCKET=/var/lib/kubelet/device-plugins/fpga.sock \
  -e BITSTREAM_BASE_PATH=/opt/fpga/bitstreams \
  -e LOG_LEVEL=info \
  intel/intel-fpga-cri-hook:latest
Docker Compose配置示例
yaml
version: '3.8'
services:
  fpga-cri-hook:
    image: intel/intel-fpga-cri-hook:latest
    container_name: fpga-cri-hook
    restart: always
    privileged: true
    volumes:
      - /var/lib/kubelet/device-plugins:/var/lib/kubelet/device-plugins
      - /etc/containerd/hooks.d:/etc/containerd/hooks.d
      - /opt/fpga/bitstreams:/opt/fpga/bitstreams
    environment:
      - FPGA_DEVICE_PLUGIN_SOCKET=/var/lib/kubelet/device-plugins/fpga.sock
      - CRI_HOOK_PATH=/etc/containerd/hooks.d/fpga-hook.json
      - BITSTREAM_BASE_PATH=/opt/fpga/bitstreams
      - LOG_LEVEL=info

启动服务:

bash
docker-compose up -d
容器运行时配置(以containerd为例)
  1. 编辑containerd配置文件(通常位于/etc/containerd/config.toml):
toml
[plugins."io.containerd.grpc.v1.cri".containerd.runtimes.runc]
  [plugins."io.containerd.grpc.v1.cri".containerd.runtimes.runc.options]
    SystemdCgroup = true

[plugins."io.containerd.grpc.v1.cri".hooks]
  [plugins."io.containerd.grpc.v1.cri".hooks.prestart]
    path = "/etc/containerd/hooks.d/fpga-hook"
  1. 重启containerd服务:
bash
systemctl restart containerd
验证部署
  1. 检查CRI钩子容器状态:
bash
docker ps | grep fpga-cri-hook
  1. 查看钩子日志(无错误输出即为正常):
bash
docker logs fpga-cri-hook
  1. 部署测试Pod验证FPGA访问: 创建fpga-test-pod.yaml:
yaml
apiVersion: v1
kind: Pod
metadata:
  name: fpga-test
spec:
  containers:
  - name: fpga-test-container
    image: ubuntu:22.04
    command: ["sleep", "3600"]
    resources:
      limits:
        intel.com/fpga: 1  # 请求1个FPGA资源(需与设备插件配置匹配)

部署并验证:

bash
kubectl apply -f fpga-test-pod.yaml
kubectl exec -it fpga-test -- bash -c "opae-nic-discovery"  # 需预装OPAE工具

若输出FPGA设备信息,表明CRI钩子部署成功。

注意事项

  • 权限要求:容器需--privileged权限或CAP_SYS_ADMIN capability,以访问FPGA设备。
  • 版本兼容性:确保CRI钩子与FPGA设备插件版本匹配(建议使用最新稳定版)。
  • 比特流管理:BITSTREAM_BASE_PATH目录需预先存放合法比特流文件,且容器有读取权限。
  • 日志调试:故障排查时可将LOG_LEVEL设为debug,通过容器日志定位问题。
  • 集群部署:生产环境建议通过DaemonSet在所有FPGA节点部署,实现集群级资源管理。
查看更多 intel-fpga-initcontainer 相关镜像 →
intel/intel-gpu-initcontainer logo
intel/intel-gpu-initcontainer
暂无描述
310M+ pulls
上次更新:未知
intel/intel-fpga-plugin logo
intel/intel-fpga-plugin
适用于Kubernetes的Intel FPGA设备插件,用于在Kubernetes集群中管理和调度Intel FPGA设备资源,支持容器化应用访问FPGA硬件加速。
50K+ pulls
上次更新:未知
intel/intel-gpu-plugin logo
intel/intel-gpu-plugin
Intel GPU设备插件是一款为Kubernetes集群开发的组件,旨在实现对Intel GPU资源的识别、管理与高效调度,支持部署GPU加速的工作负载,包括AI模型训练、高性能计算、数据分析等任务,并通过优化资源分配和实时监控,提升集群中GPU资源的利用率及相关工作负载的运行效率。
1510M+ pulls
上次更新:未知
intel/intel-sgx-initcontainer logo
intel/intel-sgx-initcontainer
暂无描述
50K+ pulls
上次更新:未知
intel/intel-qat-initcontainer logo
intel/intel-qat-initcontainer
Intel QuickAssist Technology (QAT) Kubernetes初始化容器,用于在主容器启动前完成QAT硬件加速相关初始化配置,为集群工作负载提供加密、压缩等任务的性能加速支持。
110K+ pulls
上次更新:未知
intel/intel-sgx-plugin logo
intel/intel-sgx-plugin
暂无描述
1100K+ pulls
上次更新:未知

轩辕镜像配置手册

探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式

登录仓库拉取

通过 Docker 登录认证访问私有仓库

Linux

在 Linux 系统配置镜像服务

Windows/Mac

在 Docker Desktop 配置镜像

Docker Compose

Docker Compose 项目配置

K8s Containerd

Kubernetes 集群配置 Containerd

K3s

K3s 轻量级 Kubernetes 镜像加速

Dev Containers

VS Code Dev Containers 配置

MacOS OrbStack

MacOS OrbStack 容器配置

宝塔面板

在宝塔面板一键配置镜像

群晖

Synology 群晖 NAS 配置

飞牛

飞牛 fnOS 系统配置镜像

极空间

极空间 NAS 系统配置服务

爱快路由

爱快 iKuai 路由系统配置

绿联

绿联 NAS 系统配置镜像

威联通

QNAP 威联通 NAS 配置

Podman

Podman 容器引擎配置

Singularity/Apptainer

HPC 科学计算容器配置

其他仓库配置

ghcr、Quay、nvcr 等镜像仓库

专属域名拉取

无需登录使用专属域名

需要其他帮助?请查看我们的 常见问题Docker 镜像访问常见问题解答 或 提交工单

镜像拉取常见问题

轩辕镜像免费版与专业版有什么区别?

免费版仅支持 Docker Hub 访问,不承诺可用性和速度;专业版支持更多镜像源,保证可用性和稳定速度,提供优先客服响应。

轩辕镜像支持哪些镜像仓库?

专业版支持 docker.io、gcr.io、ghcr.io、registry.k8s.io、nvcr.io、quay.io、mcr.microsoft.com、docker.elastic.co 等;免费版仅支持 docker.io。

流量耗尽错误提示

当返回 402 Payment Required 错误时,表示流量已耗尽,需要充值流量包以恢复服务。

410 错误问题

通常由 Docker 版本过低导致,需要升级到 20.x 或更高版本以支持 V2 协议。

manifest unknown 错误

先检查 Docker 版本,版本过低则升级;版本正常则验证镜像信息是否正确。

镜像拉取成功后,如何去掉轩辕镜像域名前缀?

使用 docker tag 命令为镜像打上新标签,去掉域名前缀,使镜像名称更简洁。

查看全部问题→

用户好评

来自真实用户的反馈,见证轩辕镜像的优质服务

用户头像

oldzhang

运维工程师

Linux服务器

5

"Docker访问体验非常流畅,大镜像也能快速完成下载。"

轩辕镜像
镜像详情
...
intel/intel-fpga-initcontainer
官方博客Docker 镜像使用技巧与技术博客
热门镜像查看热门 Docker 镜像推荐
一键安装一键安装 Docker 并配置镜像源
咨询镜像拉取问题请 提交工单,官方技术交流群:1072982923
轩辕镜像面向开发者与科研用户,提供开源镜像的搜索和访问支持。所有镜像均来源于原始仓库,本站不存储、不修改、不传播任何镜像内容。
咨询镜像拉取问题请提交工单,官方技术交流群:
轩辕镜像面向开发者与科研用户,提供开源镜像的搜索和访问支持。所有镜像均来源于原始仓库,本站不存储、不修改、不传播任何镜像内容。
官方邮箱:点击复制邮箱
©2024-2026 源码跳动
官方邮箱:点击复制邮箱Copyright © 2024-2026 杭州源码跳动科技有限公司. All rights reserved.