Как я могу динамически запускать капсулы kubernetes при поступлении первого запроса? - PullRequest
0 голосов
/ 21 февраля 2020

Допустим, в моем приложении несколько конечных точек, которые отображаются как разные сервисы Kubernetes через входной контроллер.

apiVersion: extensions/v1beta1
kind: Ingress
metadata:
  name: test
  annotations:
    nginx.ingress.kubernetes.io/rewrite-target: /
spec:
  rules:
  - host: foo.bar.com
    http:
      paths:
      - path: /service1
        backend:
          serviceName: service1
          servicePort: 80
      - path: /service2
        backend:
          serviceName: service2
          servicePort: 80

Допустим, конечная точка service2 не принимает запросы в течение длительного времени, поэтому для нее подходит стратегия без сервера. Могу ли я сконфигурировать входной контроллер Kubernetes для динамического масштабирования развертываний служб, когда запрос поступает после длительного времени на service2, и выключения модулей для service2, если в течение длительного времени не поступает запрос?

Ответы [ 2 ]

1 голос
/ 22 февраля 2020

Nginx вход не может быть использован для без сервера. Вы можете использовать knative для этого варианта использования.

0 голосов
/ 22 февраля 2020

Я не думаю, что входной контроллер может автоматически масштабировать стручки. Посмотрите на kubernetes autoscalar (https://kubernetes.io/docs/tasks/run-application/horizontal-pod-autoscale/), это можно использовать для горизонтального масштабирования модулей вашего развертывания (или других ресурсов, где можно указать реплики).

...