Instans kontainer elastis mulai dalam hitungan detik dan melakukan penskalaan sesuai kebutuhan. Untuk Pekerjaan berdurasi pendek, penggunaan instans kontainer elastis mencegah pemborosan sumber daya, mengurangi biaya sekaligus memenuhi kebutuhan bisnis, serta meningkatkan elastisitas kluster dan pemanfaatan sumber daya.
Skenario
Pod tidak dapat berjalan secara normal ketika node kluster kekurangan sumber daya komputasi. Namun, menyediakan banyak node dapat menyebabkan pemborosan sumber daya. Jika beban kerja Anda memiliki jam-jam puncak dan jam-jam sepi yang jelas, kami merekomendasikan penggunaan instans kontainer elastis sebagai kolam sumber daya elastis. Instans ini mulai dalam hitungan detik dan melakukan penskalaan sesuai kebutuhan, sehingga secara signifikan meningkatkan elastisitas kluster. Saat menggunakan instans kontainer elastis untuk menangani lonjakan lalu lintas dan menjalankan Pekerjaan, Anda tidak perlu memperkirakan lalu lintas layanan atau menyediakan sumber daya menganggur terlebih dahulu. Hal ini membantu Anda memenuhi kebutuhan bisnis sekaligus secara efektif mengurangi biaya penggunaan dan pemeliharaan.

Prasyarat
Komponen ack-virtual-node telah diinstal di kluster. Untuk informasi selengkapnya, lihat Men-deploy komponen ack-virtual-node.
Contoh
Buat namespace untuk pengujian dan tambahkan label
alibabacloud.com/eci=trueke namespace tersebut.CatatanSetelah Anda menambahkan label ini ke namespace, semua Pod di namespace tersebut akan dijadwalkan ke node virtual dan dijalankan sebagai instans kontainer elastis. Contoh ini menggunakan metode ini. Untuk informasi selengkapnya tentang cara menjadwalkan Pod ke instans kontainer elastis, lihat Jadwalkan Pod ke node virtual.
kubectl create ns vk kubectl label namespace vk alibabacloud.com/eci=trueBuat Pekerjaan di namespace pengujian.
Modifikasi File YAML berikut dan simpan sebagai job.yaml.
apiVersion: batch/v1 kind: Job metadata: name: pi namespace: vk # Tentukan namespace dengan label tertentu untuk menjadwalkan pod ke instans kontainer elastis spec: template: spec: containers: - name: pi image: registry.cn-shanghai.aliyuncs.com/eci_open/perl:5.32 command: ["perl", "-Mbignum=bpi", "-wle", "print bpi(2000)"] resources: requests: cpu: 16 memory: 32Gi restartPolicy: Never backoffLimit: 4Buat Pekerjaan.
kubectl -n vk apply -f job.yaml
Periksa status berjalan Pod yang sesuai dengan Pekerjaan tersebut.
kubectl -n vk get pod -o wideKeluaran yang diharapkan: Pekerjaan telah selesai (status Completed) dan berjalan pada node virtual (nama node memiliki awalan
virtual-kubelet).NAME READY STATUS RESTARTS AGE IP NODE NOMINATED NODE READINESS GATES pi-zw2lc 0/1 Completed 0 15m 192.168.XX.XX virtual-kubelet-cn-shanghai-b <none> <none>Lihat detail Pod yang sesuai dengan Pekerjaan tersebut.
kubectl -n vk describe pod <pod-name>Dalam Events yang dikembalikan, event StopCharge menunjukkan bahwa Pod instans kontainer elastis telah selesai berjalan dan penagihan telah dihentikan.
CatatanPod instans kontainer elastis ditagih berdasarkan jumlah sumber daya yang digunakan. Sistem menghentikan penagihan saat Pod selesai. Untuk informasi selengkapnya, lihat Penagihan instans kontainer elastis dan Siklus hidup Pod instans kontainer elastis.
Events: Type Reason Age From Message ---- ------ ---- ---- ------- Warning ImageCacheMissed 16m EciService [eci.imagecache]Cache gambar tidak ditemukan. Normal Pulling 16m kubelet Menarik citra "registry.cn--shanghai.aliyuncs.com/eci_open/perl:5.32" Normal Pulled 15m kubelet Berhasil menarik citra "registry.cn-shanghai.aliyuncs.com/eci_open/perl:5.32" dalam 12,951 detik (12,951 detik termasuk waktu tunggu). Ukuran citra: 336066994 byte. Normal Created 15m kubelet Membuat kontainer: pi Normal Started 15m kubelet Memulai kontainer pi Normal StopCharge 15m EciService [eci.containergroup]Penagihan instans ECI saat ini telah dihentikan, tetapi sumber daya terkait masih dalam proses pembersihan.Oleh karena itu, menjalankan Pekerjaan pada instans kontainer elastis dapat mengurangi biaya komputasi dan beban operasional. Anda tidak perlu khawatir apakah kluster memiliki sumber daya komputasi yang cukup atau apakah perlu menyesuaikan jumlah node.
Referensi
Anda juga dapat menggunakan instans kontainer elastis preemptible untuk mengurangi biaya instans. Untuk informasi selengkapnya, lihat Gunakan instans kontainer elastis preemptible untuk menjalankan Pekerjaan.