赛尔校园公共服务平台 Logo
平台使用
阿里云
百度云
移动云
智算服务
教育生态
登录 →
赛尔校园公共服务平台 Logo
平台使用 阿里云 百度云 移动云 智算服务 教育生态
登录
  1. 首页
  2. 阿里云
  3. 弹性容器实例 ECI
  4. 操作指南
  5. Knative
  6. Knative服务管理
  7. 使用GPU资源

使用GPU资源

  • Knative服务管理
  • 发布于 2025-04-15
  • 0 次阅读
文档编辑
文档编辑

如需在Knative中部署需要GPU资源的任务(如AI或高性能计算),您可以在Knative Service中指定GPU规格并创建GPU实例。您还可以开启共享GPU调度能力,允许多个Pod共享GPU,提升使用率。

前提条件

已在集群中部署Knative,请参见部署Knative。

使用GPU

您可以通过在Knative Service中添加spec.template.metadata.annotations下的k8s.aliyun.com/eci-use-specs字段指定GPU规格,然后通过spec.containers.resources.limits下的nvidia.com/gpu字段声明GPU资源。

示例如下。

apiVersion: serving.knative.dev/v1
kind: Service
metadata:
  name: helloworld-go
spec:
  template:
    metadata:
      labels:
        app: helloworld-go
      annotations:
        k8s.aliyun.com/eci-use-specs: ecs.gn5i-c4g1.xlarge  # 指定支持的ECS GPU规格。
    spec:
      containers:
        - image: registry.cn-hangzhou.aliyuncs.com/knative-sample/helloworld-go:73fbdd56
          ports:
          - containerPort: 8080
          resources:
            limits:
              nvidia.com/gpu: '1'    # 容器所需的GPU个数,必须指定该值,否则Pod启动后将会报错。

支持指定的ECS GPU规格族如下:

  • GPU计算型实例规格族gn7i(NVIDIA A10),例如ecs.gn7i-c8g1.2xlarge。

  • GPU计算型实例规格族gn7,例如ecs.gn7-c12g1.3xlarge。

  • GPU计算型实例规格族gn6v(NVIDIA V100),例如ecs.gn6v-c8g1.2xlarge。

  • GPU计算型实例规格族gn6e(NVIDIA V100),例如ecs.gn6e-c12g1.3xlarge。

  • GPU计算型实例规格族gn6i(NVIDIA T4),例如ecs.gn6i-c4g1.xlarge。

  • GPU虚拟化型实例规格族vgn6i-vws(NVIDIA T4),例如:ecs.vgn6i-m4-vws.xlarge、ecs.vgn6i-m8-vws.2xlarge。

  • GPU计算型实例规格族gn5i(NVIDIA P4),例如ecs.gn5i-c2g1.large。

  • GPU计算型实例规格族gn5(NVIDIA P100),例如ecs.gn5-c4g1.xlarge。

    gn5配备了本地盘,您可以挂载使用本地盘,请参见创建本地盘实例。

说明
  • 当前ECI GPU支持的驱动版本为NVIDIA 460.73.01,可支持的CUDA Toolkit版本为11.2。

  • 关于ECS GPU规格族的更多信息,请参见ECS实例规格可购买地域总览和实例规格族。

开启共享GPU调度能力

  1. 参见运行共享GPU调度示例为节点开启共享GPU调度能力。

  2. 在Knative Service中通过aliyun.com/gpu-mem字段配置GPU显存大小。示例如下。

    apiVersion: serving.knative.dev/v1
    kind: Service
    metadata:
      name: helloworld-go
      namespace: default
    spec:
      template:
        metadata:
          annotations:
            autoscaling.knative.dev/maxScale: "100"
            autoscaling.knative.dev/minScale: "0"
        spec:
          containerConcurrency: 1
          containers:
          - image: registry-vpc.cn-hangzhou.aliyuncs.com/hz-suoxing-test/test:helloworld-go
            name: user-container
            ports:
            - containerPort: 6666
              name: http1
              protocol: TCP
            resources:
              limits:
                aliyun.com/gpu-mem: "3" # 设置GPU显存大小

相关文档

  • 在Knative中部署AI模型推理任务时,您可以配置自动扩缩容、灵活分配GPU资源等功能,提高AI推理服务能力和GPU资源利用率,请参见在Knative中部署AI模型推理服务的最佳实践。

  • 关于使用GPU时的常见问题及解决方案,请参见GPU FAQ。

相关文章

快速部署Serverless应用 2025-04-15 17:15

本文以Hello World示例为您介绍如何通过Knative快速部署一个Serverless应用。 前提条件

为Knative选择网关 2025-04-15 17:15

Knative网关提供了一种灵活的方式来接入外部流量,并将这些流量路由到不同的Knative服务上。ACK Knative支持ALB、MSE、ASM、Kourier四种网关,每种网关都有其特定的优势和适用场景。本文从产品定位、产品架构、基础路由、运维能力、性能特点、支持的主流协议和可观测能力进行对比

使用Kourier网关 2025-04-15 17:15

Kourier是一个基于Envoy架构实现的轻量级网关,是Knative社区提供的开源网关实现,提供Knative Revisions流量分发,支持gRPC服务、超时和重试、TLS证书和外部认证授权等功能。 前提条件

使用ALB网关 2025-04-15 17:15

在大规模Web应用、需要精细化流量分发、需要自动弹性伸缩等对HTTP/HTTPS请求有复杂路由需求的应用中,推荐您基于ALB网关实现Knative服务的流量分发和路由。ALB是专门面向HTTP、HTTPS和QUIC等应用层负载场景的负载均衡服务,具备超强弹性及大规模七层流量处理能力。ALB网关是一款

使用ASM网关 2025-04-15 17:15

在大规模分布式系统、微服务应用流量管理等场景下,特别是已采用或计划采用Istio作为服务网格框架的业务场景中,推荐您使用ASM网关实现Knative服务的流量分发和路由。ASM网关兼容社区Istio规范,控制面组件由ACK托管,简化了服务治理,包括服务调用之间的流量路由与拆分管理、服务间通信的认证安

使用MSE网关并实现精准自动弹性 2025-04-15 17:15

在微服务架构的业务场景下,推荐您使用MSE网关实现Knative服务的流量分发和路由。MSE网关是一款全托管免运维的网关,支持实现基于请求的精准自动弹性,即精准地控制单个Pod的请求并发处理数,能够满足大规模云原生分布式应用的流量治理诉求。 前提条件 已在集群中部署Knative,请参见

目录
Copyright © 2025 your company All Rights Reserved. Powered by 赛尔网络.
京ICP备14022346号-15
gongan beian 京公网安备11010802041014号