Penskalaan dan Penskalaan Otomatis Endpoint Model
Kubernetes HPA untuk pod model, penskalaan berbasis lalu lintas, penerapan A/B, rilis canary.
Penskalaan dan Penskalaan Otomatis Endpoint Model adalah pelajaran Learn AI with Python gratis di CoddyKit. Ini adalah pelajaran 4 dari 4. Kamu bisa membaca pelajaran lengkapnya di bawah secara gratis — lalu praktikkan langsung di browser dengan editor kode bawaan dan tutor AI 24/7. Ini adalah bagian dari jalur belajar Learn AI with Python, dan progresmu tersinkronisasi di web dan aplikasi CoddyKit. Kursus Learn AI with Python mencakup 4 pelajaran total.
Mengapa Penskalaan Otomatis
Lalu lintas inferensi jarang datar. Menyediakan kapasitas untuk beban puncak memboroskan biaya pada malam hari; menyediakan kapasitas untuk beban rata-rata menyebabkan kegagalan saat puncak. Penskalaan otomatis menyesuaikan jumlah replika secara otomatis berdasarkan permintaan, sehingga Anda membayar sesuai penggunaan dan layanan tetap responsif.
Pod dan Replika
Di Kubernetes, peladen model berjalan sebagai Deployment yang terdiri dari pod identik (replika). Penskalaan berarti mengubah jumlah replika. Sebuah Service menyeimbangkan beban permintaan di antara replika yang tersedia.
apiVersion: apps/v1
kind: Deployment
metadata:
name: model-server
spec:
replicas: 2
template:
spec:
containers:
- name: server
image: my-model:latestHorizontal Pod Autoscaler
Horizontal Pod Autoscaler (HPA) memantau sebuah metrik serta menambah atau menghapus pod agar nilainya tetap mendekati target. Metrik klasiknya adalah utilisasi CPU.
HPA pada Utilisasi CPU
targetCPUUtilizationPercentage memberi tahu HPA untuk menjaga rata-rata CPU mendekati target. Jika rata-rata CPU pod adalah 80% dan targetnya 50%, HPA akan meningkatkan skala hingga utilisasi turun kembali mendekati 50%.
apiVersion: autoscaling/v1
kind: HorizontalPodAutoscaler
metadata:
name: model-hpa
spec:
scaleTargetRef:
apiVersion: apps/v1
kind: Deployment
name: model-server
minReplicas: 2
maxReplicas: 10
targetCPUUtilizationPercentage: 50Keterbatasan Penskalaan Berbasis CPU
CPU merupakan proksi yang kurang baik untuk beberapa beban kerja. Model GPU mungkin mengalami kemacetan pada GPU sementara CPU tetap rendah, atau pekerja asinkron mungkin memiliki antrean yang terus bertambah sementara CPU menganggur. Untuk kasus ini, lakukan penskalaan berdasarkan sinyal khusus beban kerja.
KEDA untuk Penskalaan Berbasis Peristiwa
KEDA (Penskalaan Otomatis Berbasis Peristiwa Kubernetes) melakukan penskalaan berdasarkan metrik eksternal seperti panjang antrean, keterlambatan Kafka, atau kueri Prometheus. KEDA bahkan dapat menurunkan skala hingga nol saat tidak ada pekerjaan, sesuatu yang tidak dapat dilakukan HPA sendiri.
ScaledObject KEDA Berbasis Antrean
ScaledObject KEDA ini menambahkan pekerja saat antrean pesan bertambah. Setiap unit tumpukan queueLength memicu satu replika tambahan, sehingga konsumen mampu mengimbangi lonjakan.
apiVersion: keda.sh/v1alpha1
kind: ScaledObject
metadata:
name: inference-worker
spec:
scaleTargetRef:
name: inference-worker
minReplicaCount: 0
maxReplicaCount: 20
triggers:
- type: rabbitmq
metadata:
queueName: inference
queueLength: "10"Penyeimbangan Beban dengan Ingress
Lalu lintas eksternal mencapai pod Anda melalui sebuah ingress. Pengendali ingress nginx mengakhiri TLS dan mendistribusikan permintaan ke Service yang mendukung replika Anda, sehingga peningkatan skala segera menyebarkan beban.
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: model-ingress
spec:
ingressClassName: nginx
rules:
- host: api.example.com
http:
paths:
- path: /predict
pathType: Prefix
backend:
service:
name: model-server
port:
number: 8000Peluncuran Aman: Canary
Menerapkan versi model baru ke seluruh lalu lintas sekaligus berisiko. Rilis canary mengirimkan sebagian kecil lalu lintas ke versi baru, memantau metriknya, lalu secara bertahap mengalihkan lebih banyak lalu lintas.
Canary dengan Bobot Lalu Lintas
Anotasi canary ingress nginx merutekan persentase permintaan ke deployment kedua. Mulailah dari 10%, verifikasi tingkat galat dan latensi, lalu naikkan bobotnya hingga 100%.
metadata:
annotations:
nginx.ingress.kubernetes.io/canary: "true"
nginx.ingress.kubernetes.io/canary-weight: "10"Menggabungkan Penskalaan
Pengaturan yang tangguh menggabungkan semuanya:
- HPA atau KEDA menetapkan jumlah replika berdasarkan permintaan
- Ingress menyeimbangkan beban di antara replika
- Bobot canary meluncurkan versi baru dengan aman
Secara keseluruhan, semuanya menghasilkan penyajian model yang elastis, tangguh, dan berisiko rendah.
Pemeriksaan Singkat
Uji pengetahuan Anda tentang penskalaan.
Rangkuman
Anda telah mempelajari cara menskalakan titik akhir model:
- HPA dengan
targetCPUUtilizationPercentagemelakukan penskalaan berdasarkan CPU - KEDA melakukan penskalaan berdasarkan panjang antrean dan mendukung penskalaan hingga nol
- Ingress nginx menyeimbangkan beban di antara replika
- Bobot canary mengalihkan lalu lintas secara bertahap untuk rilis yang aman
Pertanyaan yang Sering Diajukan
Apakah pelajaran “Penskalaan dan Penskalaan Otomatis Endpoint Model” gratis?
Ya — teks lengkap “Penskalaan dan Penskalaan Otomatis Endpoint Model” gratis dibaca di sini di web. Untuk praktiknya secara interaktif (editor kode bawaan dan tutor AI 24/7) dan buka sisa kursus Learn AI with Python, upgrade ke CoddyKit PRO. Kursus Learn AI with Python mencakup 4 pelajaran total.
Apa yang akan aku pelajari di “Penskalaan dan Penskalaan Otomatis Endpoint Model”?
Kubernetes HPA untuk pod model, penskalaan berbasis lalu lintas, penerapan A/B, rilis canary. Kamu berlatih Learn AI with Python dengan kode praktik yang langsung kamu jalankan di browser, dan tutor AI 24/7 menjawab pertanyaanmu saat kamu mengerjakan pelajaran ini.
Apakah aku perlu pengalaman untuk memulai Learn AI with Python?
Tidak diperlukan pengalaman sebelumnya. Learn AI with Python di CoddyKit dirancang untuk pemula hingga pelajar tingkat lanjut, jadi kamu bisa memulai di sini atau dari awal dan belajar sesuai kecepatan kamu sendiri. Ini adalah pelajaran 4 dari 4.
Berapa lama pelajaran “Penskalaan dan Penskalaan Otomatis Endpoint Model” memakan waktu?
Sebagian besar pelajaran CoddyKit memakan waktu sekitar 5–10 menit. Setiap pelajaran ringkas dan interaktif, jadi kamu membuat kemajuan stabil dan melanjutkan dari tempat kamu tinggalkan di web dan aplikasi.
Bisakah aku menulis dan menjalankan kode dalam pelajaran Learn AI with Python ini?
Ya. Setiap pelajaran Learn AI with Python menyertakan editor kode bawaan, jadi kamu menulis dan menjalankan kode nyata langsung di browser dan mendapatkan umpan balik AI instan — tidak diperlukan penyiapan lokal.
Semua pelajaran dalam kursus ini
- Mengemas Model Pembelajaran Mesin dalam Kontainer dengan Docker
- Penerapan Cloud: AWS SageMaker
- Penyajian Berkinerja Tinggi dengan Triton Inference Server
- Penskalaan dan Penskalaan Otomatis Endpoint Model