Tempah Konsultasi Hantar Tiket

Menguasai Autoscaling Kapasiti Awan dan Operasi Kos: Panduan Praktikal untuk SRE

Panduan mendalam tentang autoscaling kapasiti awan dan pengoptimuman kos, meliputi senario, simptom, diagnosis, perintah, kawalan risiko, rollback, pengesahan, dan bila perlu menghubungi OpsGlobal.

Menguasai Autoscaling Kapasiti Awan dan Operasi Kos: Panduan Praktikal untuk SRE
Cloud Migration 6min 38 paparan 2026-07-21
KubernetesSRE

Senario

Kluster Kubernetes anda sering mengalami kegagalan penjadualan Pod semasa puncak perniagaan, manakala sumber terbiar ketika trafik rendah menyebabkan bil awan yang tinggi. Anda perlukan autoscaling untuk memadankan beban dan mengawal kos.

Simptom

  • Pod terlekat dalam status Pending kerana kekurangan sumber nod
  • Penggunaan nod di bawah 30% selama berjam-jam
  • Bil awan bulanan meningkat >20% tanpa pertumbuhan perniagaan yang sepadan

Diagnosis

  1. Periksa sumber kluster: kubectl top nodes dan kubectl top pods
  2. Lihat peristiwa Pod: kubectl describe pod <nama-pod> untuk Insufficient memory/cpu
  3. Analisis kos: Dalam AWS Cost Explorer, tapis mengikut perkhidmatan (EC2, EKS) dan tag untuk mengenal pasti sumber terbiar
  4. Semak status HPA: kubectl get hpa untuk melihat sasaran berbanding metrik sebenar

Perintah

Konfigurasi HPA (Horizontal Pod Autoscaler)

apiVersion: autoscaling/v2
kind: HorizontalPodAutoscaler
metadata:
  name: my-app-hpa
spec:
  scaleTargetRef:
    apiVersion: apps/v1
    kind: Deployment
    name: my-app
  minReplicas: 2
  maxReplicas: 10
  metrics:
  - type: Resource
    resource:
      name: cpu
      target:
        type: Utilization
        averageUtilization: 70

Guna: kubectl apply -f hpa.yaml

Konfigurasi Cluster Autoscaler (autoscaling nod)

Andaikan Cluster Autoscaler telah dipasang, tetapkan min/maks nod:

apiVersion: v1
kind: ConfigMap
metadata:
  name: cluster-autoscaler-status
  namespace: kube-system
data:
  config: |
    {
      "minNodes": 3,
      "maxNodes": 20
    }

Atau melalui AWS CLI untuk mengemas kini Auto Scaling Group:

aws autoscaling update-auto-scaling-group --auto-scaling-group-name my-asg --min-size 3 --max-size 20

Penandaan kos dan pelaporan

# Label nod untuk penjejakan kos
kubectl label nodes --all cost-center=production
# Guna AWS Cost Explorer untuk kumpulan mengikut tag

Kawalan Risiko

  • Tetapkan masa penyejukan HPA: --horizontal-pod-autoscaler-downscale-stabilization-window=5m
  • Tetapkan kelewatan skala naik Cluster Autoscaler: --scale-down-delay-after-add=10m
  • Guna PodDisruptionBudgets untuk perkhidmatan kritikal
  • Uji dalam persekitaran pementasan sebelum pengeluaran

Rollback

  1. Padam HPA: kubectl delete hpa my-app-hpa
  2. Pulihkan replika Deployment: kubectl scale deployment my-app --replicas=3
  3. Tetapkan semula konfigurasi Cluster Autoscaler: kembalikan saiz min ASG
  4. Untuk lumpuhkan sepenuhnya: kubectl scale deployment cluster-autoscaler --replicas=0 -n kube-system

Pengesahan

  • Semak penjadualan Pod: kubectl get pods -o wide semuanya berjalan
  • Pantau penggunaan sumber: kubectl top nodes menunjukkan penggunaan 40-80%
  • Bandingkan kos: semak bil AWS dua minggu sebelum dan selepas, jangkakan penjimatan sekurang-kurangnya 15%
  • Ujian beban: kubectl run -it --rm load-generator --image=busybox -- /bin/sh -c "while true; do wget -q -O- http://my-app-service; done" dan perhatikan penskalaan

Bila Perlu Menghantar Tiket OpsGlobal

  • Autoscaling tidak mencetus walaupun metrik wujud, log menunjukkan isu pelayan metrik
  • Cluster autoscaler berayun menyebabkan ketidakstabilan
  • Perlu nasihat pengoptimuman kos merentasi pelbagai rantau dan kluster
  • Ralat dasar penskalaan menyebabkan gangguan perkhidmatan

Senario Penggunaan

Sesuai untuk pasukan yang menyelesaikan isu Cloud Migration dan memerlukan aliran kerja yang jelas.

Latar Belakang Masalah

Panduan mendalam tentang autoscaling kapasiti awan dan pengoptimuman kos, meliputi senario, simptom, diagnosis, perintah, kawalan risiko, rollback, pengesahan, dan bila perlu menghubungi OpsGlobal.

Langkah Penyelesaian

Sahkan impak dan perubahan terkini, kumpul log, konfigurasi dan metrik, kemudian baiki mengikut risiko.

Contoh Arahan

Gantikan contoh dengan nama sumber sebenar dan simpan kata laluan, token atau kunci dalam pembolehubah persekitaran.

Risiko

Sebelum operasi produksi, semak sandaran, akses, tetingkap perubahan dan pelan rollback.

Pelan Rollback

Simpan konfigurasi dan versi asal; rollback konfigurasi, imej atau perubahan pangkalan data jika metrik tidak normal.

Senarai Serahan

Rekod punca isu, arahan penting, langkah pembaikan, hasil pengesahan dan cadangan susulan.

!

Perlu bantuan isu teknikal serupa?

Jika pelayan, Kubernetes, Docker, CI/CD, pangkalan data atau pemantauan anda bermasalah, hantar log dan konfigurasi untuk diagnosis jauh.

Tiket Hubungi WhatsApp Konsultasi