Todos los productos
Search
Centro de documentos

Elastic Container Instance:Especificar o excluir generaciones específicas de familias de instancias ECS para crear un pod

Última actualización: Sep 04, 2026

Si crea un pod de Elastic Container Instance mediante la especificación del número de vCPU y el tamaño de memoria, es posible que requiera tipos de instancia de Elastic Compute Service (ECS) específicos. Por ejemplo, si desea utilizar únicamente familias de instancias ECS de sexta generación, como g6 o c6, para crear el pod. En este caso, puede agregar la anotación k8s.aliyun.com/eci-instance-generation para especificar la generación deseada de familias de instancias ECS. Este tema describe cómo especificar o excluir generaciones específicas de familias de instancias ECS al crear un pod.

Descripción de la función

Cuando crea un pod de Elastic Container Instance mediante la especificación del número de vCPU y el tamaño de memoria, el sistema utiliza diversos tipos de instancias ECS para respaldar la creación y selecciona automáticamente los tipos de instancia que cumplen con los requisitos de vCPU y memoria, y que cuentan con recursos suficientes. En este caso, puede agregar la anotación k8s.aliyun.com/eci-instance-generation para especificar o excluir generaciones específicas de familias de instancias ECS.

  • Si especifica generaciones concretas de familias de instancias ECS, el sistema selecciona tipos de instancias ECS únicamente de las generaciones especificadas. Si los recursos de dichas generaciones son insuficientes, el sistema no crea el pod.

  • Si excluye generaciones concretas de familias de instancias ECS, el sistema selecciona tipos de instancias ECS de otras generaciones compatibles con Elastic Container Instance para crear el pod.

A continuación se describen las generaciones de familias de instancias ECS que puede especificar o excluir al crear pods, así como las familias de instancias ECS correspondientes a cada generación.

Arquitectura

Generación de familias de instancias ECS

Familia de instancias ECS

Arm

8

g8y, c8y y r8y

x86

8

g8i, c8i, r8i, hfg8i, hfc8i y hfr8i

7

g7, c7, r7, hfg7, hfc7, hfr7 y g7ne

6

g6e, g6, c6e, c6, r6e, r6, hfc6, hfg6

5

u1, g5, g5ne, c5, r5, ic5, hfc5 y hfg5

4

sn2ne, sn1ne, se1ne y se1

Para obtener más información sobre los tipos de instancias ECS, consulte los siguientes temas:

Precauciones

  • Los pods creados con base en generaciones específicas de familias de instancias ECS se facturan según el tipo de instancia ECS utilizado realmente. La facturación no se basa en el número de vCPU ni en el tamaño de memoria especificados.

    Importante

    Una vez creado el pod, ejecute el comando kubectl describe pod para consultar los detalles YAML del pod. El valor del campo k8s.aliyun.com/eci-instance-spec indica el tipo de instancia ECS que utiliza el pod. La facturación del pod se basa en dicho tipo de instancia ECS.

  • Al especificar o excluir generaciones concretas de familias de instancias ECS, el sistema no puede seleccionar automáticamente tipos de instancia específicos, incluidos los tipos acelerados por GPU (como los de la familia gn6i) y los tipos con discos locales (como los de la familia i2g). Si desea crear un pod con tipos de instancias ECS específicos, especifíquelos directamente. Para obtener más información, consulte Specify ECS instance types to create pods.

  • Puede especificar o excluir generaciones concretas de familias de instancias ECS para crear elastic container instances preemptibles. En este escenario, el sistema selecciona el tipo de instancia ECS más adecuado según el precio de mercado y el orden de las generaciones de familias de instancias ECS que haya configurado. Si tiene requisitos estrictos respecto a las generaciones, se recomienda especificar únicamente una generación.

  • La función para especificar o excluir generaciones concretas de familias de instancias ECS solo surte efecto cuando se crean pods mediante la especificación del número de vCPU y el tamaño de memoria. Si especifica primero los tipos de instancias ECS al crear los pods, esta función no tendrá efecto.

Descripción de la configuración

Los valores válidos de k8s.aliyun.com/eci-instance-generation corresponden a las generaciones de familias de instancias ECS. Tenga en cuenta los siguientes puntos:

  • Puede configurar varias generaciones. Los valores válidos son las generaciones de las familias de instancias ECS que pueden utilizarse para crear pods.

    Importante

    Las familias de instancias ECS de octava generación solo admiten la arquitectura Arm. Para crear un pod con familias de instancias ECS de octava generación, debe especificar el campo nodeSelector para programar el pod en un nodo virtual basado en Arm. No es posible combinar las familias de instancias ECS de octava generación con aquellas que utilizan la arquitectura x86. Al crear pods basados en Arm, no es necesario especificar ni excluir generaciones concretas de familias de instancias ECS; por ejemplo, no necesita excluir las familias de octava generación. Para obtener más información, consulte Schedule pods to an Arm-based virtual node y ECS instance types of the Arm architecture.

  • Si antepone un signo menos (-) a una generación de familias de instancias ECS, dicha generación queda excluida.

    Por ejemplo, k8s.aliyun.com/eci-instance-generation: "-5,-4" indica que se excluyen las familias de instancias ECS de quinta y cuarta generación, y que se utilizan las de séptima o sexta generación.

  • El sistema selecciona las generaciones especificadas siguiendo el orden en que se definieron.

    Por ejemplo, la anotación k8s.aliyun.com/eci-instance-generation: "6,5" indica que el sistema utiliza preferentemente familias de instancias ECS de sexta generación. Si los recursos de estas familias que cumplen con las especificaciones requeridas de vCPU y memoria son insuficientes, se recurre a las familias de quinta generación. Si los recursos de las familias de quinta generación también resultan insuficientes, no se crea ningún pod.

Antes de utilizar la anotación k8s.aliyun.com/eci-instance-generation, debe especificar el número de vCPU y el tamaño de memoria mediante uno de los siguientes métodos:

  • Especifique el parámetro limits o requests de los contenedores. Se recomienda utilizar el parámetro limits.

  • Agregue la anotación k8s.aliyun.com/eci-use-specs a los metadatos del pod.

Ejemplo 1: Especificar generaciones concretas de familias de instancias ECS

Parámetro

Efecto

  • Se configura el parámetro limits para definir los recursos de vCPU y memoria (2 vCPU y 4 GiB de memoria).

  • Se configura la anotación k8s.aliyun.com/eci-instance-generation: "6,5". Esta anotación indica que el sistema utiliza primero las familias de instancias ECS de sexta generación y luego las de quinta generación.

  • El sistema selecciona preferentemente tipos de instancia de las familias de instancias ECS de sexta generación que cumplen con los requisitos de especificación de vCPU y memoria.

  • Si los recursos de las familias de instancias ECS de sexta generación son insuficientes, el sistema selecciona tipos de instancia de las familias de quinta generación.

apiVersion: apps/v1
kind: Deployment
metadata:
  name: test
  labels:
    app: test
spec:
  replicas: 1
  selector:
    matchLabels:
      app: nginx
  template:
    metadata:
      name: nginx-test
      labels:
        app: nginx
        alibabacloud.com/eci: "true" 
      annotations:
        k8s.aliyun.com/eci-instance-generation: "6,5"    # Specifies that the sixth-generation ECS instance families and fifth-generation ECS instance families are used in sequence.
    spec:
      containers:
      - name: nginx
        image: registry.cn-shanghai.aliyuncs.com/eci_open/nginx:1.14.2
        ports:
        - containerPort: 80
        resources:
          limits:
            cpu: "2"       # Specifies the maximum number of vCPUs.        
            memory: "4Gi"  # Specifies the maximum memory size.

Ejemplo 2: Excluir generaciones concretas de familias de instancias ECS

Parámetro

Efecto

  • Se configura la anotación k8s.aliyun.com/eci-use-specs: "2-4Gi" para definir los recursos de vCPU y memoria (2 vCPU, 4 GiB de memoria).

  • Se configura la anotación k8s.aliyun.com/eci-instance-generation: "-5,-4" para excluir las familias de instancias ECS de quinta y cuarta generación.

El sistema selecciona tipos de instancia de las familias de instancias ECS de séptima y sexta generación que cumplen con los requisitos de especificación de vCPU y memoria.

apiVersion: apps/v1
kind: Deployment
metadata:
  name: test
  labels:
    app: test
spec:
  replicas: 1
  selector:
    matchLabels:
      app: nginx
  template:
    metadata:
      name: nginx-test
      labels:
        app: nginx
        alibabacloud.com/eci: "true" 
      annotations:
        k8s.aliyun.com/eci-use-specs: "2-4Gi"                    # Specifies the vCPU and memory specifications in fuzzy search mode.
        k8s.aliyun.com/eci-instance-generation: "-5,-4"          # Excludes the fifth-generation and fourth-generation ECS instance families.
    spec:
      containers:
      - name: nginx
        image: registry.cn-shanghai.aliyuncs.com/eci_open/nginx:1.14.2
        ports:
        - containerPort: 80

Ejemplo 3: Especificar generaciones concretas de familias de instancias ECS y excluir familias de instancias ECS específicas

Parámetro

Efecto

  • Se configura la anotación k8s.aliyun.com/eci-use-specs: "2-4Gi" para definir los recursos de vCPU y memoria (2 vCPU, 4 GiB de memoria).

  • Se configura la anotación k8s.aliyun.com/eci-instance-generation: "6,5". Esta anotación indica que el sistema utiliza primero las familias de instancias ECS de sexta generación y luego las de quinta generación.

  • Se configura la anotación k8s.aliyun.com/eci-instance-family: "-ecs.hfg5" para excluir las familias de instancias ecs.hfg5.

  • El sistema selecciona preferentemente tipos de instancia de las familias de instancias ECS de sexta generación que cumplen con los requisitos de especificación de vCPU y memoria.

  • Si los recursos de las familias de instancias ECS de sexta generación son insuficientes, el sistema selecciona tipos de instancia de las familias de quinta generación (excepto ecs.hfg5) compatibles con Elastic Container Instance.

apiVersion: apps/v1
kind: Deployment
metadata:
  name: test
  labels:
    app: test
spec:
  replicas: 1
  selector:
    matchLabels:
      app: nginx
  template:
    metadata:
      name: nginx-test
      labels:
        app: nginx
        alibabacloud.com/eci: "true" 
      annotations:
        k8s.aliyun.com/eci-use-specs: "2-4Gi"                   # Specifies the vCPU and memory specifications.
        k8s.aliyun.com/eci-instance-generation: "6,5"           # Specifies that the sixth-generation and fifth-generation ECS instance families are used in sequence.
        k8s.aliyun.com/eci-instance-family: "-ecs.hfg5"           # Excludes the ecs.hfg5 instance family.
    spec:
      containers:
      - name: nginx
        image: registry.cn-shanghai.aliyuncs.com/eci_open/nginx:1.14.2
        ports:
        - containerPort: 80

Ejemplo 4: Excluir generaciones concretas de familias de instancias ECS y familias de instancias ECS específicas

Parámetro

Efecto

  • Se configura la anotación k8s.aliyun.com/eci-use-specs: "2-4Gi" para definir los recursos de vCPU y memoria (2 vCPU, 4 GiB de memoria).

  • Se configura la anotación k8s.aliyun.com/eci-instance-generation: "-5,-4" para excluir las familias de instancias ECS de quinta y cuarta generación.

  • Se configura la anotación k8s.aliyun.com/eci-instance-family: "-ecs.hfg6" para excluir la familia de instancias ecs.hfg6.

El sistema selecciona tipos de instancia de las familias de instancias ECS de séptima y sexta generación (excepto ecs.hfg6) que cumplen con los requisitos de especificación de vCPU y memoria.

apiVersion: apps/v1
kind: Deployment
metadata:
  name: test
  labels:
    app: test
spec:
  replicas: 1
  selector:
    matchLabels:
      app: nginx
  template:
    metadata:
      name: nginx-test
      labels:
        app: nginx
        alibabacloud.com/eci: "true" 
      annotations:
        k8s.aliyun.com/eci-use-specs: "2-4Gi"                    # Specifies the vCPU and memory specifications in fuzzy search mode.
        k8s.aliyun.com/eci-instance-generation: "-5,-4"          # Excludes the fifth-generation and fourth-generation ECS instance families.
        k8s.aliyun.com/eci-instance-family: "-ecs.hfg6"            # Excludes the ecs.hfg6 instance family.
    spec:
      containers:
      - name: nginx
        image: registry.cn-shanghai.aliyuncs.com/eci_open/nginx:1.14.2
        ports:
        - containerPort: 80

Ejemplo 5: Configuraciones no válidas

La función para especificar o excluir generaciones concretas de familias de instancias ECS solo surte efecto si crea pods mediante la especificación del número de vCPU y el tamaño de memoria. Si crea pods especificando tipos de instancias ECS, la función no tendrá efecto. Cuando las generaciones especificadas de familias de instancias ECS no surten efecto, se genera un evento IgnoreInstanceTypeFeatures.

Nombre del evento

Tipo

Mensaje del evento

Descripción del evento

IgnoreInstanceTypeFeatures

Warning

[eci.containergroup]The instance type features will be ignored as the provided specifications, [%s],correspond exclusively to ECS instance types.

La anotación k8s.aliyun.com/eci-use-specs define los tipos de instancias ECS. En consecuencia, se ignoran otras anotaciones destinadas a especificar las generaciones de familias de instancias ECS.

En el siguiente ejemplo, la anotación que especifica las familias de instancias ECS de sexta generación se ignora automáticamente, y solo se utiliza el tipo de instancia ecs.c5.large para crear un pod:

apiVersion: apps/v1
kind: Deployment
metadata:
  name: test
  labels:
    app: test
spec:
  replicas: 1
  selector:
    matchLabels:
      app: nginx
  template:
    metadata:
      name: nginx-test
      labels:
        app: nginx
        alibabacloud.com/eci: "true" 
      annotations:
        k8s.aliyun.com/eci-use-specs: "ecs.c5.large"   # Specifies a specific ECS instance type.
        k8s.aliyun.com/eci-instance-generation: "6"    # Specifies specific generations of ECS instance families. The setting does not take effect.
    spec:
      containers:
      - name: nginx
        image: registry.cn-shanghai.aliyuncs.com/eci_open/nginx:1.14.2
        ports:
        - containerPort: 80

Puede encontrar el evento IgnoreInstanceTypeFeatures en los eventos del Pod.