All Products
Search
Document Center

Elastic Container Instance:Tentukan atau kecualikan keluarga instans ECS

Last Updated:Jun 21, 2026

Saat membuat Pod ECI dengan menentukan vCPU dan memori, Anda dapat menambahkan anotasi k8s.aliyun.com/eci-instance-family jika memerlukan instans dasar tertentu, misalnya hanya menggunakan keluarga instans ecs.g6. Topik ini menjelaskan cara menentukan atau mengecualikan keluarga instans ECS saat membuat Pod ECI.

Cara kerja

Saat membuat Pod ECI dengan menentukan vCPU dan memori, sistem dapat menggunakan berbagai tipe instans ECS. Sistem secara otomatis memilih tipe instans yang memenuhi kebutuhan vCPU dan memori serta memiliki stok tersedia. Anda dapat menambahkan anotasi k8s.aliyun.com/eci-instance-family untuk mempersempit pilihan dengan menentukan atau mengecualikan keluarga instans ECS.

  • Jika Anda menentukan satu atau beberapa keluarga instans ECS, sistem hanya memilih tipe instans dari keluarga tersebut. Jika tidak ada tipe instans yang sesuai dalam keluarga yang ditentukan, pembuatan Pod gagal.

  • Jika Anda mengecualikan satu atau beberapa keluarga instans ECS, sistem memilih tipe instans dari keluarga instans ECS lain yang didukung.

Catatan

Untuk kontrol yang lebih granular, Anda dapat menggabungkan anotasi ini dengan k8s.aliyun.com/eci-instance-generation untuk menentukan atau mengecualikan generasi instans ECS.

Tabel berikut mencantumkan keluarga instans ECS yang dapat Anda tentukan atau kecualikan.

Arsitektur

Generasi keluarga instans ECS

Keluarga instans ECS

Arm

8

g8y, c8y, dan r8y

x86

8

g8i, c8i, r8i, hfg8i, hfc8i, dan hfr8i

7

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

6

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

5

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

4

sn2ne, sn1ne, se1ne, dan se1

Untuk informasi selengkapnya tentang tipe instans ECS, lihat topik berikut:

Catatan penggunaan

  • Pod ECI yang dibuat dengan menentukan atau mengecualikan keluarga instans ECS ditagih berdasarkan tipe instans ECS yang disediakan, bukan berdasarkan vCPU dan memori yang diminta.

    Penting

    Setelah Pod ECI dibuat, Anda dapat menjalankan perintah kubectl describe pod untuk melihat detailnya. Periksa bidang k8s.aliyun.com/eci-instance-spec untuk mengonfirmasi tipe instans ECS aktual yang digunakan untuk penagihan.

  • Saat menentukan atau mengecualikan keluarga instans ECS, sistem tidak dapat secara otomatis memilih tipe instans khusus tertentu, seperti tipe instans GPU (misalnya, gn6i) atau tipe instans dengan disk lokal (misalnya, i2g). Untuk menggunakan tipe instans ini, Anda harus menentukannya secara langsung. Untuk informasi selengkapnya, lihat Tentukan tipe instans ECS untuk membuat Pod.

  • Fitur ini hanya berlaku saat Anda menentukan kebutuhan vCPU dan memori. Jika Anda menentukan tipe instans ECS secara eksplisit, anotasi ini tidak berpengaruh.

  • Anda dapat menggunakan fitur ini untuk membuat instans preemptible. Dalam skenario ini, sistem mempertimbangkan urutan keluarga instans dalam konfigurasi Anda dan harga pasar, dengan memprioritaskan harga. Jika Anda memiliki kebutuhan ketat terhadap keluarga instans tertentu, kami menyarankan agar Anda hanya mengonfigurasi satu keluarga.

Konfigurasi

Tetapkan nilai untuk anotasi k8s.aliyun.com/eci-instance-family menjadi satu atau beberapa keluarga instans ECS sesuai aturan berikut:

  • Anda dapat menentukan daftar keluarga instans ECS yang didukung oleh ECI, dipisahkan koma.

    Penting

    Saat ini, tipe instans generasi ke-8 hanya tersedia untuk arsitektur Arm. Saat membuat Pod, Anda harus menggunakan nodeSelector untuk menjadwalkan Pod ke node berbasis Arm. Oleh karena itu, Anda tidak dapat mencampur keluarga instans berbasis Arm dan x86 dalam nilai anotasi yang sama. Saat menargetkan node Arm, Anda hanya dapat menentukan atau mengecualikan keluarga berbasis Arm lainnya. Untuk contoh konfigurasi, lihat Contoh 5: Tentukan keluarga instans berbasis Arm.

  • Tambahkan tanda hubung (-) di awal nama keluarga instans untuk mengecualikannya.

    Misalnya, k8s.aliyun.com/eci-instance-family: "-ecs.c6, -ecs.c5" mengecualikan keluarga instans ecs.c6 dan ecs.c5.

  • Jika Anda menentukan beberapa keluarga instans, sistem mencoba keluarga tersebut sesuai urutan yang diberikan.

    Misalnya, k8s.aliyun.com/eci-instance-family: "ecs.c6, ecs.c5" berarti sistem pertama-tama mencoba memilih tipe instans dari keluarga ecs.c6. Jika tidak ditemukan tipe instans yang sesuai dengan stok tersedia, sistem beralih ke keluarga ecs.c5. Jika keluarga ecs.c5 juga tidak memiliki tipe instans yang sesuai, pembuatan Pod gagal.

Saat menggunakan anotasi k8s.aliyun.com/eci-instance-family, Anda harus terlebih dahulu menentukan vCPU dan memori. Anda dapat melakukannya dengan salah satu cara berikut:

  • Definisikan requests atau limits untuk kontainer. Kami merekomendasikan penggunaan limits.

  • Tambahkan anotasi k8s.aliyun.com/eci-use-specs ke metadata Pod.

Contoh 1: Tentukan keluarga instans ECS

Parameter

Hasil

  • Ini menentukan 2 vCPU dan 4 GiB memori menggunakan bidang limits.

  • Anotasi k8s.aliyun.com/eci-instance-family: "ecs.c6, ecs.g6" memprioritaskan keluarga ecs.c6, dengan keluarga ecs.g6 sebagai cadangan.

Sistem pertama-tama mencoba menggunakan tipe instans ecs.c6.large, lalu beralih ke ecs.g6.large.

Catatan

Konfigurasi ini memiliki efek yang sama dengan menyetel k8s.aliyun.com/eci-use-specs: "ecs.c6.large,ecs.g6.large".

apiVersion: apps/v1
kind: Deployment
metadata:
  name: test
  labels:
    app: test
spec:
  replicas: 1
  selector:
    matchLabels:
      app: test
  template:
    metadata:
      name: test
      labels:
        app: test
        alibabacloud.com/eci: "true" 
      annotations:
        k8s.aliyun.com/eci-instance-family: "ecs.c6,ecs.g6"    # Prioritaskan keluarga ecs.c6, lalu gunakan keluarga ecs.g6 sebagai cadangan.
    spec:
      containers:
      - name: nginx
        image: registry.cn-shanghai.aliyuncs.com/eci_open/nginx:1.14.2
        ports:
        - containerPort: 80
        resources:
          limits:
            cpu: "2"       # Batas vCPU        
            memory: "4Gi"  # Batas memori

Contoh 2: Kecualikan keluarga instans ECS

Parameter

Hasil

  • Anotasi k8s.aliyun.com/eci-use-specs: "2-4Gi" menentukan sumber daya vCPU dan memori (2 vCPU, 4 GiB memori).

  • Anotasi k8s.aliyun.com/eci-instance-family: "-ecs.hfg6,-ecs.hfg5" mengecualikan keluarga instans ecs.hfg6 dan ecs.hfg5.

Sistem memilih tipe instans yang sesuai dari keluarga instans ECS yang didukung, kecuali ecs.hfg6 dan ecs.hfg5.

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"                    # Tentukan rentang vCPU dan memori.
        k8s.aliyun.com/eci-instance-family: "-ecs.hfg6,-ecs.hfg5"    # Kecualikan keluarga instans ecs.hfg6 dan ecs.hfg5.
    spec:
      containers:
      - name: nginx
        image: registry.cn-shanghai.aliyuncs.com/eci_open/nginx:1.14.2
        ports:
        - containerPort: 80

Contoh 3: Tentukan generasi tertentu dari keluarga instans ECS dan kecualikan keluarga instans ECS tertentu

Parameter

Efek

  • Anotasi k8s.aliyun.com/eci-use-specs: "2-4Gi" dikonfigurasi untuk menentukan sumber daya vCPU dan memori (2 vCPU, 4 GiB memori).

  • Anotasi k8s.aliyun.com/eci-instance-generation: "6,5" dikonfigurasi. Anotasi ini menentukan bahwa sistem menggunakan keluarga instans ECS generasi keenam, lalu generasi kelima.

  • Anotasi k8s.aliyun.com/eci-instance-family: "-ecs.hfg5" dikonfigurasi untuk mengecualikan keluarga instans ecs.hfg5.

  • Sistem memprioritaskan pemilihan tipe instans dari keluarga instans ECS generasi keenam yang memenuhi persyaratan spesifikasi vCPU dan memori.

  • Jika sumber daya keluarga instans ECS generasi keenam tidak mencukupi, sistem memilih tipe instans dari keluarga instans ECS generasi kelima (kecuali ecs.hfg5) yang didukung oleh 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"                   # Menentukan spesifikasi vCPU dan memori.
        k8s.aliyun.com/eci-instance-generation: "6,5"           # Menentukan bahwa keluarga instans ECS generasi keenam dan kelima digunakan secara berurutan.
        k8s.aliyun.com/eci-instance-family: "-ecs.hfg5"           # Mengecualikan keluarga instans ecs.hfg5.
    spec:
      containers:
      - name: nginx
        image: registry.cn-shanghai.aliyuncs.com/eci_open/nginx:1.14.2
        ports:
        - containerPort: 80

Contoh 4: Kecualikan generasi tertentu dari keluarga instans ECS dan keluarga instans ECS tertentu

Parameter

Efek

  • Anotasi k8s.aliyun.com/eci-use-specs: "2-4Gi" dikonfigurasi untuk menentukan sumber daya vCPU dan memori (2 vCPU, 4 GiB memori).

  • Anotasi k8s.aliyun.com/eci-instance-generation: "-5,-4" dikonfigurasi untuk mengecualikan keluarga instans ECS generasi kelima dan keempat.

  • Anotasi k8s.aliyun.com/eci-instance-family: "-ecs.hfg6" dikonfigurasi untuk mengecualikan keluarga instans ecs.hfg6.

Sistem memilih tipe instans dari keluarga instans ECS generasi ketujuh dan keenam (kecuali ecs.hfg6) yang memenuhi persyaratan spesifikasi vCPU dan memori.

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"                    # Menentukan spesifikasi vCPU dan memori dalam mode pencarian fuzzy.
        k8s.aliyun.com/eci-instance-generation: "-5,-4"          # Mengecualikan keluarga instans ECS generasi kelima dan keempat.
        k8s.aliyun.com/eci-instance-family: "-ecs.hfg6"            # Mengecualikan keluarga instans ecs.hfg6.
    spec:
      containers:
      - name: nginx
        image: registry.cn-shanghai.aliyuncs.com/eci_open/nginx:1.14.2
        ports:
        - containerPort: 80

Contoh 5: Tentukan keluarga instans berbasis Arm

Parameter

Hasil

  • Anotasi k8s.aliyun.com/eci-use-specs: "2-4Gi,4-8Gi" menentukan sumber daya vCPU dan memori. Pertama digunakan 2 vCPU dan 4 GiB memori, diikuti oleh 4 vCPU dan 8 GiB memori.

  • Anotasi k8s.aliyun.com/eci-instance-family: "ecs.c8y" menentukan bahwa tipe instans dari keluarga ecs.c8y digunakan.

  • Label alibabacloud.com/eci: "true" dan kubernetes.io/arch: arm64 menjadwalkan Pod ke node virtual berbasis Arm.

Tipe instans ecs.c8y.large digunakan terlebih dahulu, diikuti oleh tipe instans ecs.c8y.xlarge.

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,4-8Gi"              # Tentukan beberapa rentang vCPU dan memori.
        k8s.aliyun.com/eci-instance-family: "ecs.c8y"            # Tentukan keluarga instans ecs.c8y.
    spec:
      containers:
      - name: nginx
        image: registry.cn-shanghai.aliyuncs.com/eci_open/nginx:1.14.2
        ports:
        - containerPort: 80
      nodeSelector:
        kubernetes.io/arch: arm64  # Jadwalkan Pod ke node Arm.

Contoh 6: Konfigurasi tidak valid

Jika Anda menggunakan fitur ini dalam skenario yang tidak didukung, sistem akan mengabaikan anotasi tersebut dan menghasilkan event IgnoreInstanceTypeFeatures.

Nama event

Tipe

Pesan

Deskripsi

IgnoreInstanceTypeFeatures

Warning

[eci.containergroup]Fitur tipe instans akan diabaikan karena spesifikasi yang diberikan, [%s], secara eksklusif sesuai dengan tipe instans ECS.

Karena k8s.aliyun.com/eci-use-specs menentukan tipe instans ECS secara eksplisit, sistem mengabaikan anotasi untuk menentukan keluarga instans ECS.

Pada contoh berikut, sistem mengabaikan anotasi yang menentukan keluarga instans ecs.c6. Sistem membuat Pod ECI hanya dengan menggunakan tipe instans ecs.c5.large.

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"   # Tentukan tipe instans ECS secara eksplisit.
        k8s.aliyun.com/eci-instance-family: "ecs.c6"   # Anotasi ini diabaikan.
    spec:
      containers:
      - name: nginx
        image: registry.cn-shanghai.aliyuncs.com/eci_open/nginx:1.14.2
        ports:
        - containerPort: 80

Anda dapat melihat event IgnoreInstanceTypeFeatures di event Pod.