全部产品
Search
文档中心

Elastic Container Instance:Anotasi cache gambar

更新时间:Jul 02, 2025

Untuk mempercepat pembuatan pod dalam klaster Kubernetes, Anda dapat menggunakan fitur ImageCache dari Elastic Container Instance melalui Custom Resource Definition (CRD) ImageCache. Saat membuat cache gambar, Anda dapat menambahkan anotasi sesuai kebutuhan bisnis. Artikel ini menjelaskan anotasi yang dapat ditambahkan dan memberikan contoh konfigurasinya.

Anotasi yang dapat ditambahkan saat Anda membuat cache gambar

Tabel berikut menjelaskan anotasi yang dapat ditambahkan saat membuat cache gambar.

Anotasi

Contoh

Deskripsi

Referensi

k8s.aliyun.com/vswitch-ids

"vsw-bp1dktddjsg5nktv****,vsw-bp1xpiowfm5vo8o3c****"

Menentukan ID vSwitches. Anda dapat menentukan beberapa vSwitches untuk beberapa zona. Jika Anda tidak menentukan parameter ini, ID vSwitch yang dikonfigurasikan di eci-profile digunakan.

Buat cache gambar menggunakan fitur multi-zona

k8s.aliyun.com/imc-cpu-arch

"arm64"

Menentukan arsitektur CPU. Nilai yang valid:

  • amd64 (default)

  • arm64

    Penting

    Saat Anda menentukan anotasi ini, pastikan bahwa node virtual dengan arsitektur Arm ada di dalam klaster. Untuk informasi lebih lanjut, lihat Jadwalkan pod ke node virtual berbasis Arm.

Tentukan arsitektur CPU.

k8s.aliyun.com/imc-os-type

"windows"

Menentukan sistem operasi. Nilai yang valid:

Tentukan sistem operasi.

k8s.aliyun.com/security-group-id

"sg-bp1dktddjsg5nktv****"

Menentukan ID grup keamanan. Jika Anda meninggalkan anotasi ini kosong, ID grup keamanan yang dikonfigurasikan di eci-profile digunakan.

Konfigurasikan grup keamanan dan grup sumber daya

k8s.aliyun.com/resource-group-id

"rg-aek2z3elfs4****"

Menentukan ID grup sumber daya. Jika Anda meninggalkan anotasi ini kosong, ID grup sumber daya yang dikonfigurasikan di eci-profile digunakan.

k8s.aliyun.com/acr-instance-ids

"cri-j36zhodptmyq****"

Menentukan ID instance Enterprise Edition Alibaba Cloud Container Registry. Instance ini digunakan untuk menarik gambar tanpa perlu menggunakan kata sandi.

Anda dapat menentukan instance Container Registry Enterprise Edition yang berada di wilayah berbeda dari wilayah pod. Untuk melakukannya, Anda harus menambahkan awalan ID wilayah instance Container Registry Enterprise Edition ke ID instance Container Registry Enterprise Edition. Contoh: "cn-beijng:cri-j36zhodptmyq****".

Tarik gambar dari instance Container Registry tanpa menggunakan secrets

k8s.aliyun.com/acr-service-arns

acs:ram::1609982529******:role/role-assume

Menentukan Nama Sumber Daya Alibaba Cloud (ARN) dari Peran RAM dalam akun Alibaba Cloud tempat sumber daya Elastic Container Instance berada.

Anotasi ini diperlukan saat Anda menggunakan Peran RAM untuk membuat sumber daya.

k8s.aliyun.com/acr-user-arns

acs:ram::1298452580******:role/role-acr

Menentukan ARN dari Peran RAM dalam akun Alibaba Cloud tempat instance Container Registry berada.

Anotasi ini diperlukan saat Anda menarik gambar dari instance Container Registry yang dimiliki oleh akun Alibaba Cloud berbeda dari akun Alibaba Cloud sumber daya Elastic Container Instance.

k8s.aliyun.com/plain-http-registry

"harbor***.pre.com,192.168.XX.XX:5000,reg***.test.com:80"

Menentukan alamat repositori gambar yang dikelola sendiri.

Saat Anda membuat instance kontainer elastis menggunakan gambar dalam repositori gambar yang dikelola sendiri yang menggunakan protokol HTTP, Anda harus menambahkan anotasi ini. Dengan cara ini, Elastic Container Instance menggunakan protokol HTTP untuk menarik gambar. Ini mencegah kegagalan menarik gambar karena perbedaan protokol.

Tarik gambar dari repositori gambar yang dikelola sendiri

k8s.aliyun.com/insecure-registry

"harbor***.pre.com,192.168.XX.XX:5000,reg***.test.com:80"

Menentukan alamat repositori gambar yang dikelola sendiri.

Saat Anda membuat instance kontainer elastis menggunakan gambar dalam repositori gambar yang dikelola sendiri yang menggunakan sertifikat tanda tangan sendiri, Anda harus menambahkan anotasi ini untuk melewati otentikasi sertifikat. Ini mencegah kegagalan menarik gambar karena kegagalan otentikasi sertifikat.

k8s.aliyun.com/imc-enable-reuse

"true"

Menentukan apakah akan mengaktifkan penggunaan kembali lapisan cache gambar. Jika Anda mengaktifkan fitur ini dan cache gambar yang ingin Anda buat berisi lapisan yang sama dengan cache gambar yang ada, sistem menggunakan kembali lapisan gambar dari cache gambar yang ada untuk membuat cache gambar baru. Ini mempercepat pembuatan cache gambar.

Aktifkan penggunaan kembali lapisan cache gambar

k8s.aliyun.com/imc-enable-flash

"true"

Menentukan apakah akan mengaktifkan fitur cache gambar instan. Jika Anda mengaktifkan fitur ini, sistem membuat snapshot lokal sementara. Ini mengurangi waktu yang diperlukan untuk membuat cache gambar.

Aktifkan fitur cache gambar instan

k8s.aliyun.com/imc-retention-days

"7"

Menentukan periode retensi cache gambar. Unit: hari. Cache gambar yang kedaluwarsa dihapus secara otomatis. Anotasi ini dikosongkan secara default, yang menunjukkan bahwa cache gambar tidak pernah kedaluwarsa.

Konfigurasikan ukuran dan periode retensi cache gambar

k8s.aliyun.com/imc-size

"25"

Menentukan ukuran cache gambar. Unit: GiB. Nilai default: 20. Nilai valid: 20 hingga 32768.

k8s.aliyun.com/eip-instance-id

"eip-bp1q5n8cq4p7f6dzu****"

Menentukan ID alamat IP elastis (EIP) yang terkait dengan pod. Jika tidak ada gateway NAT yang dikonfigurasikan, Anda dapat mengaitkan EIP yang ada dengan pod untuk menarik gambar melalui Internet.

Konfigurasikan EIP untuk menarik gambar melalui Internet

k8s.aliyun.com/auto-create-eip

"true"

Menentukan apakah akan secara otomatis membuat EIP dan mengaitkan EIP dengan instance kontainer elastis. Jika tidak ada gateway NAT yang dikonfigurasikan, Anda dapat mengatur anotasi ini menjadi true. Ini memungkinkan sistem untuk membuat EIP dan mengaitkan EIP dengan pod untuk menarik gambar melalui Internet.

k8s.aliyun.com/eip-bandwidth

"5"

Menentukan batas bandwidth untuk EIP saat sistem membuat EIP. Unit: Mbit/s.

k8s.aliyun.com/eip-internet-charge-type

PayByBandwidth

Menentukan metode penagihan untuk penggunaan jaringan EIP saat sistem membuat EIP. Nilai yang valid:

  • PayByBandwidth: bayar berdasarkan bandwidth

  • PayByTraffic: bayar berdasarkan trafik

k8s.aliyun.com/eip-isp

BGP

Menentukan jenis jalur EIP saat sistem membuat EIP. Anotasi ini hanya berlaku untuk EIP bayar sesuai pemakaian. Nilai yang valid:

  • BGP (default): Jalur BGP (Multi-ISP)

  • BGP_PRO: Jalur BGP (Multi-ISP) Pro

k8s.aliyun.com/eip-common-bandwidth-package-id

"cbwp-2zeukbj916scmj51m****"

Menentukan ID paket bandwidth EIP.

Buat cache gambar menggunakan fitur multi-zona

Saat membuat cache gambar, sistem akan membuat instance kontainer elastis sementara. Untuk memastikan pembuatan cache berhasil, Anda dapat menentukan beberapa vSwitch yang berada di zona berbeda.

Catatan

Secara default, vSwitch dari klaster Kubernetes atau VNode digunakan. Jika klaster atau VNode dikonfigurasikan dengan beberapa zona, Anda mungkin tidak perlu menentukan vSwitch tambahan.

apiVersion: eci.alibabacloud.com/v1
kind: ImageCache
metadata:
  name: imagecache-sample
  annotations:
    k8s.aliyun.com/vswitch-ids: "vsw-bp1dktddjsg5nktv****,vsw-bp1xpiowfm5vo8o3c****"  # Menentukan beberapa vSwitch.
spec:
  images:
  - centos:latest
  - busybox:latest
  imageCacheSize:
   25
  retentionDays:
   7

Tentukan arsitektur CPU

Saat menarik gambar dengan arsitektur Arm untuk membuat cache gambar, Anda harus menentukan arsitektur CPU.

Penting

Pastikan bahwa node virtual dengan arsitektur Arm tersedia di klaster. Untuk informasi lebih lanjut, lihat Jadwalkan pod ke node virtual berbasis Arm.

apiVersion: eci.alibabacloud.com/v1
kind: ImageCache
metadata:
  name: imagecache-sample
  annotations:
    k8s.aliyun.com/imc-cpu-arch: "arm64" # Menentukan arsitektur CPU sebagai Arm.
spec:
  images:
  -arm64v8/centos:7.9.2009 # Menentukan gambar kontainer yang menggunakan arsitektur Arm.
  imageCacheSize:
   25
  retentionDays:
   7

Tentukan sistem operasi

Saat menarik gambar Windows untuk membuat cache gambar, Anda harus menentukan sistem operasi.

Penting

Pastikan bahwa node virtual Windows tersedia di klaster. Untuk informasi lebih lanjut, lihat (Dalam pratinjau undangan) Jadwalkan pod untuk berjalan pada node virtual Windows.

apiVersion: eci.alibabacloud.com/v1
kind: ImageCache
metadata:
  name: imagecache-sample
  annotations:
    k8s.aliyun.com/imc-os-type: "windows" # Menentukan sistem operasi sebagai Windows.
spec:
  images:
  -mcr.microsoft.com/windows/nanoserver:ltsc2022 # Menentukan gambar kontainer yang berisi sistem operasi.
  imageCacheSize:
   25
  retentionDays:
   7

Konfigurasikan grup keamanan dan grup sumber daya

Secara default, grup keamanan dan grup sumber daya yang dikonfigurasikan di eci-profile digunakan saat membuat cache gambar. Anda dapat mengonfigurasinya sesuai kebutuhan bisnis.

apiVersion: eci.alibabacloud.com/v1
kind: ImageCache
metadata:
  name: imagecache-sample
  annotations:
    k8s.aliyun.com/security-group-id: "sg-bp1dktddjsg5nktv****" # Menentukan grup keamanan.
    k8s.aliyun.com/resource-group-id: "rg-aek2z3elfs4****"      # Menentukan grup sumber daya.
spec:
  images:
  - centos:latest
  - busybox:latest
  imageCacheSize:
   25
  retentionDays:
   7

Tarik gambar dari instance Container Registry tanpa menggunakan secrets

Tabel berikut menjelaskan skenario di mana Anda dapat menarik gambar dari instance Container Registry tanpa menggunakan Secrets.

Sumber daya yang akan dibuat seperti instance kontainer elastis dan instance Container Registry berada dalam akun yang sama

Edition instance Container Registry

Penarikan gambar tanpa secret

Ya

  • Edition Pribadi

  • Edition Perusahaan (tarik gambar melalui nama domain default instance Edition Perusahaan)

Secara default, penarikan gambar tanpa secret diaktifkan. Anda dapat mengonfigurasi Peran RAM untuk membatasi ruang lingkup instance Container Registry yang mendukung penarikan gambar tanpa secret.

Ya

Edition Perusahaan (gunakan nama domain kustom)

Penarikan gambar tanpa secret tidak dapat diaktifkan secara default. Anda harus menentukan instance Container Registry yang mendukung penarikan gambar tanpa secret.

Tidak

  • Edition Pribadi

  • Edition Perusahaan

Penarikan gambar tanpa secret tidak dapat diaktifkan secara default. Anda harus mengonfigurasi Peran RAM untuk menerapkan penarikan gambar tanpa secret.

Untuk informasi lebih lanjut, lihat Tarik gambar dari instance Container Registry tanpa menggunakan Secret.

Gunakan repositori gambar yang dikelola sendiri

Jika repositori gambar yang dikelola sendiri menggunakan protokol HTTP atau sertifikat tanda tangan sendiri, Anda harus mengonfigurasi anotasi untuk mencegah kegagalan penarikan gambar.

  • Repositori gambar yang dikelola sendiri menggunakan protokol HTTP.

    Secara default, instance kontainer elastis menarik gambar melalui protokol HTTPS. Saat membuat cache gambar, Anda harus menambahkan anotasi k8s.aliyun.com/plain-http-registry agar instance kontainer elastis dapat berinteraksi dengan repositori gambar melalui protokol HTTP.

    apiVersion: eci.alibabacloud.com/v1
    kind: ImageCache
    metadata:
      name: imagecache-sample
      annotations:
        k8s.aliyun.com/plain-http-registry: "192.168.XX.XX:5000"  # Menentukan alamat repositori gambar yang dikelola sendiri, yang digunakan untuk menarik gambar melalui protokol HTTP.
    spec:
      images:
      - 192.168.XX.XX:5000/test/nginx:latest
      imagePullSecrets:
      - default:secret1
      - default:secret2
      - kube-system:secret3
      imageCacheSize:
       25
      retentionDays:
       7
  • Repositori gambar yang dikelola sendiri menggunakan sertifikat tanda tangan sendiri.

    Jika repositori gambar menggunakan sertifikat yang diterbitkan sendiri, otentikasi sertifikat gagal saat sistem mencoba menarik gambar. Anda harus menambahkan anotasi k8s.aliyun.com/insecure-registry untuk melewati otentikasi sertifikat.

    apiVersion: eci.alibabacloud.com/v1
    kind: ImageCache
    metadata:
      name: imagecache-sample
      annotations:
        k8s.aliyun.com/insecure-registry: "harbor***.pre.com"  # Menentukan alamat repositori gambar yang dikelola sendiri. Sistem melewati otentikasi sertifikat saat sistem mencoba menarik gambar dari repositori gambar untuk membuat pod.
    spec:
      images:
      - harbor***.pre.com/test/nginx:latest
      imagePullSecrets:
      - default:secret1
      - default:secret2
      - kube-system:secret3
      imageCacheSize:
       25
      retentionDays:
       7
Catatan

  • Untuk menarik gambar dari beberapa repositori gambar yang berbeda, Anda dapat menentukan alamat repositori yang dipisahkan dengan koma (,). Contoh: harbor***.pre.com,192.168.XX.XX.

  • Jika alamat repositori gambar mengandung nomor port, Anda harus menentukan alamat dan nomor portnya. Sebagai contoh, jika alamat repositori gambar adalah 192.168.XX.XX:5000/nginx:latest, atur anotasinya menjadi 192.168.XX.XX:5000.

Aktifkan penggunaan kembali lapisan cache gambar

Waktu yang diperlukan untuk membuat cache gambar bergantung pada faktor seperti ukuran gambar dan kondisi jaringan. Anda dapat mengaktifkan fitur penggunaan kembali lapisan cache gambar untuk mengurangi waktu pembuatan.

Setelah mengaktifkan fitur ini, sistem akan memeriksa cache gambar yang ada. Jika cache tersebut berisi lapisan gambar yang ingin digunakan, sistem akan menggunakan kembali lapisan tersebut untuk mempercepat pembuatan cache gambar.

apiVersion: eci.alibabacloud.com/v1
kind: ImageCache
metadata:
  name: imagecache-sample
  annotations:
    k8s.aliyun.com/imc-enable-reuse: "true"   # Mengaktifkan penggunaan kembali lapisan cache gambar.
spec:
  images:
  - centos:latest
  - busybox:latest
  imageCacheSize:
   25
  retentionDays:
   7

Aktifkan fitur cache gambar instan

Waktu yang diperlukan untuk membuat cache gambar bergantung pada faktor seperti ukuran gambar dan kondisi jaringan. Anda dapat mengaktifkan fitur cache gambar instan untuk mengurangi waktu pembuatan.

Setelah mengaktifkan fitur ini, sistem membuat snapshot lokal sementara untuk disk instance kontainer elastis selama pembuatan cache gambar. Setelah snapshot lokal dibuat, cache gambar siap digunakan.

Catatan

Setelah snapshot lokal dibuat, sistem mulai membuat snapshot standar. Selama pembuatan snapshot standar, Anda dapat menggunakan cache gambar yang sesuai dengan snapshot lokal untuk membuat instance kontainer elastis. Setelah snapshot standar selesai, sistem menghapus snapshot lokal. Kemudian, Anda dapat menggunakan cache gambar yang sesuai dengan snapshot standar untuk membuat instance kontainer elastis.

apiVersion: eci.alibabacloud.com/v1
kind: ImageCache
metadata:
  name: imagecache-sample
  annotations:
    k8s.aliyun.com/imc-enable-flash: "true"   # Mengaktifkan fitur cache gambar instan.
spec:
  images:
  - centos:latest
  - busybox:latest
  imageCacheSize:
   25
  retentionDays:
   7

Konfigurasikan ukuran dan periode retensi cache gambar

Secara default, cache gambar yang dibuat secara manual berukuran 20 GiB dan disimpan secara permanen setelah dibuat. Jika ingin menentukan ukuran dan periode retensi cache gambar, Anda dapat menentukan parameter imageCacheSize dan retentionDays di bagian spec atau menambahkan anotasi.

apiVersion: eci.alibabacloud.com/v1
kind: ImageCache
metadata:
  name: imagecache-sample
  annotations:
    k8s.aliyun.com/imc-retention-days: "7"   # Menentukan periode retensi cache gambar.
    k8s.aliyun.com/imc-size: "25"            # Menentukan ukuran cache gambar.
spec:
  images:
  - centos:latest
  - busybox:latest

Konfigurasikan EIP untuk menarik gambar melalui Internet

Elastic IP Address (EIP) adalah alamat IP publik yang dapat dibeli dan digunakan sebagai sumber daya independen. Saat EIP dikaitkan dengan sumber daya cloud, sumber daya tersebut dapat terhubung ke Internet. Untuk informasi lebih lanjut, lihat Apa itu Elastic IP Address?

Saat membuat cache gambar, pastikan Anda terhubung ke Internet sebelum menarik gambar melalui Internet. Anda dapat terhubung ke Internet dengan mengonfigurasi gateway NAT atau mengonfigurasi EIP. Jika virtual private cloud (VPC) Anda tidak terkait dengan gateway NAT, Anda dapat mengonfigurasi EIP untuk menarik gambar melalui Internet. Anda dapat menggunakan salah satu metode berikut untuk mengonfigurasi EIP.

Catatan

Selama pembuatan cache gambar, sistem membuat instance kontainer elastis sementara dan mengaitkan EIP dengan instance tersebut. Jika Anda menggunakan EIP yang ada, EIP tetap ada setelah cache gambar dibuat. Jika sistem membuat EIP dan mengaitkannya dengan instance kontainer elastis sementara, EIP dan instance tersebut akan dilepaskan setelah cache gambar dibuat.

  • Mengaitkan EIP yang ada dengan instance kontainer elastis sementara

    apiVersion: eci.alibabacloud.com/v1
    kind: ImageCache
    metadata:
      name: imagecache-sample
      annotations:
        k8s.aliyun.com/eip-instance-id: "eip-bp1q5n8cq4p7f6dzu****"   # Mengaitkan EIP yang ada dengan instance kontainer elastis sementara.
    spec:
      images:
      - centos:latest
      - busybox:latest
      imageCacheSize:
       25
      retentionDays:
       7
  • Membuat EIP secara otomatis dan mengaitkannya dengan instance kontainer elastis sementara

    apiVersion: eci.alibabacloud.com/v1
    kind: ImageCache
    metadata:
      name: imagecache-sample
      annotations:
        k8s.aliyun.com/auto-create-eip: "true"                                       # Membuat EIP secara otomatis dan mengaitkannya dengan instance kontainer elastis sementara.
        k8s.aliyun.com/eip-bandwidth: "10"                                           # Menentukan batas bandwidth EIP. Unit: Mbit/s.
        k8s.aliyun.com/eip-internet-charge-type: PayByBandwidth                      # Menentukan metode penagihan EIP.
        k8s.aliyun.com/eip-common-bandwidth-package-id: "cbwp-2zeukbj916scmj51m****" # Menentukan ID paket bandwidth EIP.
    spec:
      images:
      - centos:latest
      - busybox:latest
      imageCacheSize:
       25
      retentionDays:
       7