Sobes.tech
Middle+

Comment configurer un autoscaler horizontal pour les pods sur un serveur physique?

sobes.tech IA

Réponse de l'IA

Pour configurer la mise à l’échelle automatique horizontale (Horizontal Pod Autoscaler, HPA) sur un serveur physique (bare-metal) dans Kubernetes, il faut suivre plusieurs étapes:

  1. S’assurer que le Metrics Server est configuré dans le cluster — il collecte les métriques CPU et mémoire nécessaires pour HPA.

  2. Configurer la surveillance des ressources des pods et des nœuds — sans infrastructure cloud, il faut utiliser des solutions locales, comme Prometheus avec des adaptateurs pour HPA.

  3. Créer un objet HPA, en spécifiant les métriques cibles et le nombre minimal/maximal de réplicas. Par exemple:

apiVersion: autoscaling/v2
kind: HorizontalPodAutoscaler
metadata:
  name: exemple-hpa
spec:
  scaleTargetRef:
    apiVersion: apps/v1
    kind: Deployment
    name: exemple-deployment
  minReplicas: 2
  maxReplicas: 10
  metrics:
  - type: Resource
    resource:
      name: cpu
      target:
        type: Utilization
        averageUtilization: 50
  1. Assurer le bon fonctionnement du contrôleur HPA et des métriques — sur bare-metal, il peut être nécessaire de configurer RBAC et les politiques réseau.

  2. Tester la mise à l’échelle automatique avec la charge et surveiller le comportement.

Important : sur un serveur physique, il n’existe pas d’API cloud pour la mise à l’échelle, donc HPA ne fonctionne qu’au niveau des pods, et la mise à l’échelle des nœuds doit être effectuée manuellement ou avec d’autres outils.