全部产品
Search
文档中心

Elastic Container Instance:Tentukan atau kecualikan keluarga instance ECS tertentu untuk membuat pod

更新时间:Jul 02, 2025

Saat membuat pod Elastic Container Instance dengan menentukan jumlah vCPU dan ukuran memori, Anda mungkin perlu menggunakan jenis instance Elastic Compute Service (ECS) tertentu. Sebagai contoh, jika Anda hanya ingin menggunakan keluarga instance ecs.g6 untuk membuat pod, Anda dapat menambahkan anotasi k8s.aliyun.com/eci-instance-family untuk menentukan keluarga instance ECS yang diinginkan. Topik ini menjelaskan cara menentukan atau mengecualikan keluarga instance ECS tertentu saat membuat pod Elastic Container Instance.

Deskripsi fitur

Saat Anda membuat pod dengan menentukan jumlah vCPU dan ukuran memori, sistem menggunakan berbagai jenis instance ECS untuk mendukung pembuatan tersebut. Sistem secara otomatis memilih jenis instance ECS yang memenuhi persyaratan spesifikasi vCPU dan memori serta memiliki sumber daya yang cukup. Dalam hal ini, Anda dapat menambahkan anotasi k8s.aliyun.com/eci-instance-family untuk menentukan atau mengecualikan keluarga instance ECS tertentu.

  • Jika Anda menentukan keluarga instance ECS tertentu, sistem hanya akan memilih jenis instance ECS dari keluarga instance ECS yang ditentukan. Jika sumber daya dari keluarga instance ECS yang ditentukan tidak mencukupi, sistem tidak akan membuat pod.

  • Jika Anda mengecualikan keluarga instance ECS tertentu, sistem akan memilih jenis instance dari keluarga instance ECS lainnya yang didukung oleh Elastic Container Instance untuk membuat pod.

Catatan

Anda dapat menggunakan anotasi k8s.aliyun.com/eci-instance-family bersama dengan anotasi k8s.aliyun.com/eci-instance-generation untuk mengimplementasikan kontrol yang lebih rinci pada jenis instance ECS. k8s.aliyun.com/eci-instance-generation menentukan atau mengecualikan generasi tertentu dari keluarga instance ECS.

Tabel berikut menjelaskan keluarga instance ECS yang dapat Anda tentukan atau kecualikan.

Arsitektur

Generasi keluarga instance ECS

Keluarga instance 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, dan hfg6

5

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

4

sn2ne, sn1ne, se1ne, dan se1

Untuk informasi lebih lanjut tentang keluarga instance ECS, lihat topik-topik berikut:

Perhatian

  • Pod dikenai biaya berdasarkan jenis instance ECS aktual yang digunakan, bukan berdasarkan spesifikasi vCPU dan memori yang ditentukan, ketika dibuat berdasarkan keluarga instance ECS yang ditentukan atau dikecualikan.

    Penting

    Setelah pod dibuat, Anda dapat menjalankan perintah kubectl describe pod untuk melihat detail YAML pod. Nilai bidang k8s.aliyun.com/eci-instance-spec menunjukkan jenis instance ECS yang digunakan oleh pod. Pod dikenai biaya berdasarkan jenis instance ECS.

  • Saat Anda menentukan atau mengecualikan keluarga instance ECS tertentu, sistem tidak dapat secara otomatis memilih jenis instance tertentu, termasuk jenis instance dengan akselerasi GPU seperti yang ada dalam keluarga gn6i dan jenis instance dengan disk lokal seperti yang ada dalam keluarga i2g. Jika Anda ingin membuat pod menggunakan jenis instance ECS tertentu, tentukan langsung jenis instancenya. Untuk informasi lebih lanjut, lihat Tentukan Jenis Instance ECS untuk Membuat Pod.

  • Fitur menentukan atau mengecualikan keluarga instance ECS tertentu hanya berlaku jika Anda membuat pod dengan menentukan jumlah vCPU dan ukuran memori. Jika Anda membuat pod dengan menentukan jenis instance ECS, fitur ini tidak berlaku.

  • Saat Anda membuat instance kontainer elastis preemptible, sistem memilih jenis instance ECS yang paling sesuai berdasarkan keluarga instance yang ditentukan atau dikecualikan. Pemilihan ditentukan oleh urutan pengurutan keluarga instance dan harga pasar jenis instance, dengan harga pasar menjadi prioritas utama daripada urutan pengurutan. Jika Anda memiliki persyaratan ketat untuk keluarga instance ECS, kami sarankan Anda mengonfigurasi hanya satu keluarga instance.

Deskripsi konfigurasi

Nilai valid dari anotasi k8s.aliyun.com/eci-instance-family adalah keluarga instance ECS. Perhatikan hal-hal berikut:

  • Anda dapat mengonfigurasi beberapa keluarga instance ECS yang didukung oleh Elastic Container Instance.

    Penting

    Keluarga instance ECS generasi kedelapan hanya mendukung arsitektur Arm. Untuk membuat pod menggunakan keluarga instance ECS generasi kedelapan, Anda harus menentukan bidang nodeSelector untuk menjadwalkan pod ke node virtual berbasis Arm. Anda tidak dapat menggunakan keluarga instance ECS generasi kedelapan bersamaan dengan yang menggunakan arsitektur x86. Anda harus menentukan atau mengecualikan keluarga instance ECS generasi kedelapan secara terpisah. Untuk informasi lebih lanjut, lihat Contoh 5: Tentukan Keluarga Instance ECS Berbasis Arm.

  • Jika Anda menambahkan tanda minus (-) sebelum keluarga instance, keluarga instance tersebut dikecualikan saat Anda membuat pod.

    Sebagai contoh, k8s.aliyun.com/eci-instance-family: "-ecs.c6, -ecs.c5" menentukan bahwa keluarga instance ecs.c6 dan ecs.c5 dikecualikan.

  • Sistem memilih keluarga instance yang ditentukan berdasarkan urutan pengurutan mereka.

    Sebagai contoh, anotasi k8s.aliyun.com/eci-instance-family: "ecs.c6, ecs.c5" menentukan bahwa sistem secara preferensial menggunakan keluarga instance ecs.c6. Jika sumber daya keluarga instance ecs.c6 yang memenuhi persyaratan spesifikasi vCPU dan memori tidak mencukupi, keluarga instance ecs.c5 digunakan. Jika sumber daya keluarga instance ecs.c5 juga tidak mencukupi, tidak ada pod yang dibuat.

Sebelum Anda menggunakan anotasi k8s.aliyun.com/eci-instance-family, Anda harus menentukan spesifikasi vCPU dan memori menggunakan salah satu metode berikut:

  • Konfigurasikan parameter limits atau requests dari kontainer. Kami merekomendasikan Anda mengonfigurasi parameter limits.

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

Contoh 1: Tentukan keluarga instance ECS tertentu

Parameter

Efek

  • Parameter limits dikonfigurasi untuk menentukan sumber daya vCPU dan memori (2 vCPU dan 4 GiB memori).

  • Anotasi k8s.aliyun.com/eci-instance-family: "ecs.c6, ecs.g6" dikonfigurasi. Anotasi menentukan bahwa sistem menggunakan keluarga instance ecs.c6 lalu keluarga instance ecs.g6.

Sistem menggunakan jenis instance ecs.c6.large lalu jenis instance ecs.g6.large.

Catatan

Efek konfigurasi sampel ini setara dengan efek dari 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"    # Menentukan bahwa keluarga instance ecs.c6 dan ecs.g6 digunakan secara berurutan.
    spec:
      containers:
      - name: nginx
        image: registry.cn-shanghai.aliyuncs.com/eci_open/nginx:1.14.2
        ports:
        - containerPort: 80
        resources:
          limits:
            cpu: "2"       # Menentukan jumlah maksimum vCPU.        
            memory: "4Gi"  # Menentukan ukuran maksimum memori.

Contoh 2: Kecualikan keluarga instance 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-family: "-ecs.hfg6,-ecs.hfg5" dikonfigurasi untuk mengecualikan keluarga instance ecs.hfg6 dan ecs.hfg5.

Sistem memilih jenis instance dari keluarga instance ECS (kecuali ecs.hfg6 dan ecs.hfg5) yang didukung oleh Elastic Container Instance dan 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-family: "-ecs.hfg6,-ecs.hfg5"    # Mengecualikan keluarga instance 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 instance ECS dan kecualikan keluarga instance 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 menentukan bahwa sistem menggunakan keluarga instance ECS generasi keenam lalu keluarga instance ECS generasi kelima.

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

  • Sistem secara preferensial memilih jenis instance dari keluarga instance ECS generasi keenam yang memenuhi persyaratan spesifikasi vCPU dan memori.

  • Jika sumber daya keluarga instance ECS generasi keenam tidak mencukupi, sistem memilih jenis instance dari keluarga instance 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 instance ECS generasi keenam dan kelima digunakan secara berurutan.
        k8s.aliyun.com/eci-instance-family: "-ecs.hfg5"           # Mengecualikan keluarga instance 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 instance ECS dan keluarga instance 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 instance ECS generasi kelima dan keempat.

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

Sistem memilih jenis instance dari keluarga instance 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 instance ECS generasi kelima dan keempat.
        k8s.aliyun.com/eci-instance-family: "-ecs.hfg6"            # Mengecualikan keluarga instance 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 instance ECS berbasis Arm

Parameter

Efek

  • Anotasi k8s.aliyun.com/eci-use-specs: "2-4Gi,4-8Gi" ditambahkan untuk menentukan spesifikasi vCPU dan memori (2 vCPU dan 4 GiB memori, dan 4 vCPU dan 8 GiB memori digunakan secara berurutan).

  • Anotasi k8s.aliyun.com/eci-instance-family: "ecs.c8y" ditambahkan untuk menentukan keluarga instance ecs.c8y.

  • Bidang alibabacloud.com/eci: "true" dan kubernetes.io/arch: arm64 ditentukan untuk menjadwalkan pod ke node virtual berbasis Arm.

Jenis instance ecs.c8y.large dan ecs.c8y.xlarge digunakan secara berurutan.

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"              # Menentukan beberapa spesifikasi vCPU dan memori.
        k8s.aliyun.com/eci-instance-family: "ecs.c8y"            # Menentukan keluarga instance 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  # Menjadwalkan pod ke node virtual berbasis Arm.

Contoh 6: Pengaturan tidak valid

Fitur menentukan atau mengecualikan keluarga instance ECS tertentu hanya berlaku saat Anda membuat pod dengan menentukan jumlah vCPU dan ukuran memori. Jika Anda membuat pod dengan menentukan jenis instance ECS, fitur ini tidak berlaku. Jika keluarga instance ECS yang ditentukan tidak berlaku, acara IgnoreInstanceTypeFeatures dihasilkan.

Nama acara

Tipe

Pesan acara

Deskripsi acara

IgnoreInstanceTypeFeatures

Peringatan

[eci.containergroup]Fitur jenis instance akan diabaikan karena spesifikasi yang diberikan, [%s], berkorespondensi secara eksklusif dengan jenis instance ECS.

Anotasi k8s.aliyun.com/eci-use-specs mendefinisikan jenis instance ECS. Dengan cara ini, anotasi lain untuk menentukan keluarga instance ECS diabaikan.

Dalam contoh berikut, anotasi yang menentukan keluarga instance ecs.c6 secara otomatis diabaikan, dan hanya jenis instance ecs.c5.large yang digunakan untuk membuat 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"   # Menentukan jenis instance ECS tertentu.
        k8s.aliyun.com/eci-instance-family: "ecs.c6"   # Menentukan keluarga instance ECS tertentu. Pengaturan ini tidak berlaku.
    spec:
      containers:
      - name: nginx
        image: registry.cn-shanghai.aliyuncs.com/eci_open/nginx:1.14.2
        ports:
        - containerPort: 80

Gambar berikut menunjukkan acara IgnoreInstanceTypeFeatures dalam Pod event.

generation1