全部产品
Search
文档中心

Elastic Container Instance:Konfigurasikan eci-profile untuk secara otomatis menggunakan fitur ImageCache

更新时间:Jul 02, 2025

Untuk mengaktifkan beberapa fitur Elastic Container Instance (ECI), Anda perlu menambahkan anotasi ke pod. File konfigurasi eci-profile dari ECI menyediakan kemampuan ECI Effect untuk menambahkan anotasi secara otomatis ke pod. Topik ini menjelaskan cara mengonfigurasi eci-profile agar dapat menambahkan anotasi secara otomatis ke pod jika Anda ingin menggunakan fitur ImageCache untuk mempercepat pembuatan pod.

Deskripsi

Saat menggunakan kemampuan ECI Effect dari eci-profile, dalam pemilih file konfigurasi eci-profile, Anda harus mendeklarasikan label namespace atau label pod yang akan dicocokkan dalam bentuk array, serta mendeklarasikan anotasi terkait ImageCache yang perlu ditambahkan secara dinamis ke pod. Jika sebuah pod memiliki label yang dideklarasikan, anotasi yang ditentukan akan ditambahkan secara otomatis ke pod tersebut.

Catatan

Untuk informasi lebih lanjut, lihat Konfigurasikan eci-profile.

Tabel berikut menjelaskan anotasi terkait ImageCache yang dapat ditambahkan ke pod:

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 default 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 saat sistem membuat pod.

k8s.aliyun.com/imc-perfect-match

"true"

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

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

"2"

Menentukan jumlah gambar kontainer di 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.

Kode berikut menggambarkan pemilih.

  selectors: |
   [
    {
        "name":"demo",  # Diperlukan. Nama pemilih.
        "namespaceSelector":{  # Opsional. Label namespace dicocokkan.
            "matchLabels":{  # Label yang akan dicocokkan. Jika Anda menentukan beberapa label, hubungan antar label adalah DAN.
                "app":"nginx"
            }
        },
        "objectSelector":{  # Opsional. Label pod dicocokkan.
            "matchLabels":{  # Label yang akan dicocokkan. Jika Anda menentukan beberapa label, hubungan antar label adalah DAN.
                "type":"test"
            }
        },
        "effect":{  # Anotasi yang akan ditambahkan secara dinamis.
            "annotations":{
                "k8s.aliyun.com/eci-auto-imc": "true"
            }
        }
    }
   ]

Setelah mengonfigurasi pemilih, jalankan perintah berikut untuk memeriksa apakah pemilih berlaku. Jika file YAML yang dikembalikan berisi pemilih yang telah dikonfigurasi, pemilih tersebut berlaku. Jika tidak, pastikan format pemilih sudah benar.

kubectl get mutatingwebhookconfigurations -o yaml vk-webhook

Contoh

Edit file konfigurasi eci-profile.

kubectl -n kube-system edit cm eci-profile

Tambahkan contoh konten berikut ke pemilih:

[
  ...
	{
    "name":"image-cache-selector-1",
    "objectSelector":{
      "matchLabels":{
        "image-cache":"true"
      }
    },
    "effect": {
      "annotations": {
        "k8s.aliyun.com/eci-imc-id": "imc-uf6ic***************"
      }
    }
  },
  {
    "name":"image-cache-selector-2",
      "namespaceSelector":{
      "matchLabels":{
        "image-cache":"true"
      }
    },
    "effect": {
      "annotations": {
        "k8s.aliyun.com/eci-auto-imc": "true"
      }
    }
  }
]

Konfigurasi sebelumnya mencakup dua pemilih:

  • image-cache-selector-1: Jika sebuah pod berisi label image-cache: true, anotasi "k8s.aliyun.com/eci-imc-id": "imc-uf6ic***************" akan ditambahkan secara otomatis ke pod dan cache gambar yang ditentukan digunakan untuk mempercepat pembuatan pod.

  • image-cache-selector-2: Jika sebuah namespace berisi label image-cache: true, anotasi "k8s.aliyun.com/eci-auto-imc": "true" akan ditambahkan secara otomatis ke pod di namespace tersebut dan cache gambar mulai dicocokkan secara otomatis.