Jaka jest różnica między replikami a HPA?

Do próbki, poniżej wdrożenia jest skonfigurowany z 3 replikami

apiVersion: apps/v1
kind: Deployment
metadata:
  name: hello
spec:
  **replicas: 3**

I poniżej HPA z 2-20 replikami

apiVersion: autoscaling/v2beta1
kind: HorizontalPodAutoscaler
metadata:
  name: hello
spec:
  scaleTargetRef:
    apiVersion: apps/v1
    kind: Deployment
    name: hello
  **minReplicas: 2
  maxReplicas: 20
metrics:
  - type: Resource
    resource:
      name: cpu
      targetAverageUtilization: 80**

Czy to znaczy, że powyższy HPA kontroluje ogólną liczbę replik niezależnie od tego, co jest zdefiniowane w "wdrażaniu.yaml"? Kiedy skala HPA, dodać jeszcze jedną kolejną replikę "Deployment" lub trzy kolejne repliki "wdrażania"?

0
Karthikeyan Vijayakumar 5 październik 2020, 09:38

1 odpowiedź

Najlepsza odpowiedź

Tak, odpowiedź polega na oparciu o obserwacje, które miałem z Aks.

Wdrażanie

Pożądany stan lub repliki w obiekcie wdrażania (gdy robisz Kubectl Get), daje obecne repliki, a także pożądane repliki zawsze i można zobaczyć zmienność z obciążeniem.

Więc zacznie się od 3 instancji, a następnie spróbuje utrzymywać MIN Repliki zawsze dostępny (stąd Min-Replikas w HPA i repliki w pliku wdrażania są przechowywane same), a następnie oparte na obciążeniach w stosunku do dostarczonych metryk, to skaluje w górę lub w dół do min lub maksymalnych poziomów.

2
Tushar Mahajan 5 październik 2020, 07:25