全部产品
Search
文档中心

Elastic Container Instance:Gunakan ImageCache untuk mempercepat pembuatan pod

更新时间:Jul 02, 2025

Alibaba Cloud menyediakan fitur ImageCache dari Elastic Container Instance dalam bentuk CustomResourceDefinition (CRD) ImageCache. Dengan fitur ini, Anda dapat memanfaatkan ImageCache dari Elastic Container Instance untuk mempercepat pembuatan pod di Kubernetes. Topik ini menjelaskan cara menggunakan ImageCache untuk mempercepat pembuatan pod.

Deskripsi konfigurasi

ImageCache adalah sumber daya tingkat kluster yang dapat digunakan untuk mempercepat pembuatan pod di berbagai namespace dalam sebuah kluster.

Saat membuat pod dengan menggunakan ImageCache, Anda dapat menambahkan anotasi ke metadata dalam file konfigurasi pod untuk mengaktifkan pencocokan otomatis cache gambar atau menentukan cache gambar yang ingin digunakan. Tabel berikut menjelaskan anotasi tersebut:

Catatan
  • Kami merekomendasikan agar Anda mengaktifkan pencocokan otomatis cache gambar. Jika Anda mempercepat pembuatan pod dengan mengaktifkan pencocokan otomatis cache gambar dan menentukan cache gambar yang ingin digunakan, prioritas akan diberikan pada penentuan cache gambar. Untuk informasi lebih lanjut, lihat Ikhtisar Fitur ImageCache.

  • Anda dapat mengonfigurasi parameter imc-perfect-match atau imc-match-count-request jika ingin menggunakan ImageCache untuk bisnis Anda dengan mengaktifkan pencocokan otomatis cache gambar. Kami merekomendasikan agar Anda mengonfigurasi parameter imc-perfect-match. Jika Anda mengonfigurasi kedua parameter tersebut, prioritas diberikan pada parameter imc-perfect-match.

Cara penggunaan ImageCache

Anotasi

Contoh nilai

Deskripsi

Aktifkan pencocokan otomatis cache gambar

k8s.aliyun.com/eci-auto-imc

"true"

Menentukan apakah akan secara otomatis mencocokkan cache gambar. Nilai defaultnya adalah true, yang menunjukkan bahwa sistem secara otomatis mencocokkan cache gambar yang paling sesuai untuk membuat pod berdasarkan kebijakan pencocokan. Sistem memilih cache gambar berdasarkan urutan berikut: tingkat kesesuaian gambar, ukuran gambar, dan waktu pembuatan gambar.

Jika tidak ada cache gambar yang cocok persis, sistem secara otomatis membuat cache gambar yang sesuai ketika sistem membuat pod.

k8s.aliyun.com/imc-perfect-match

"true"

Menentukan apakah semua gambar kontainer dalam pod harus cocok dengan cache gambar. Nilai default: false.

k8s.aliyun.com/imc-match-count-request

"2"

Menentukan jumlah gambar kontainer dalam pod yang ingin Anda cocokkan persis dengan cache gambar.

Tentukan cache gambar yang ingin Anda gunakan

k8s.aliyun.com/eci-imc-id

imc-2zebxkiifuyzzlhl****

Menentukan cache gambar untuk membuat pod.

Penting
  • Anotasi harus ditambahkan ke metadata dalam file konfigurasi pod. Sebagai contoh, saat membuat Deployment, Anda harus menambahkan anotasi di bagian spec.template.metadata.

  • Untuk menggunakan fitur Elastic Container Instance, Anda hanya dapat menambahkan anotasi saat membuat pod berbasis Elastic Container Instance. Jika Anda menambahkan atau memodifikasi anotasi saat memperbarui pod, anotasi tersebut tidak akan berlaku.

Contoh konfigurasi

Saat membuat pod dengan menggunakan ImageCache, perhatikan hal-hal berikut:

  • Tentukan gambar dalam cache gambar untuk kontainer dalam pod guna meningkatkan tingkat kesesuaian.

  • Atur kebijakan penarikan gambar (ImagePullPolicy) kontainer dalam pod menjadi IfNotPresent untuk mencegah unduhan berulang lapisan gambar.

Contoh 1: Aktifkan pencocokan otomatis cache gambar

apiVersion: apps/v1
kind: Deployment
metadata:
  name: test
  labels:
    app: test
spec:
  replicas: 2
  selector:
    matchLabels:
      app: nginx
  template:
    metadata:
      name: nginx-test
      labels:
        app: nginx
        alibabacloud.com/eci: "true" 
      annotations:
        k8s.aliyun.com/eci-auto-imc: "true"   # Mengaktifkan pencocokan otomatis cache gambar
        k8s.aliyun.com/imc-perfect-match: "true"  # Menentukan bahwa semua gambar kontainer dalam pod harus cocok dengan cache gambar.
    spec:
      containers:
      - name: nginx
        image: registry.cn-shanghai.aliyuncs.com/eci_open/nginx:1.14.2
        ports:
        - containerPort: 80
        imagePullPolicy: IfNotPresent
      - name: busybox
        image: registry.cn-shanghai.aliyuncs.com/eci_open/busybox:1.30
        command: ["sleep"]
        args: ["999999"]
        imagePullPolicy: IfNotPresent

Contoh 2: Tentukan cache gambar untuk membuat pod

Penting

Pastikan bahwa cache gambar yang ditentukan berada dalam status Ready. Jika tidak, pod gagal dibuat.

apiVersion: apps/v1
kind: Deployment
metadata:
  name: test
  labels:
    app: test
spec:
  replicas: 2
  selector:
    matchLabels:
      app: nginx
  template:
    metadata:
      name: nginx-test
      labels:
        app: nginx
        alibabacloud.com/eci: "true" 
      annotations:
        k8s.aliyun.com/eci-imc-id: imc-2ze5tm5gehgtiiga****  # Menentukan cache gambar.
    spec:
      containers:
      - name: nginx
        image: registry.cn-shanghai.aliyuncs.com/eci_open/nginx:1.14.2
        ports:
        - containerPort: 80
        imagePullPolicy: IfNotPresent