Как я могу отразить трафик в двух местах с Istio?

В рамках моего конвейера непрерывного развертывания я развернул канарейку и базовый уровень, сравнил показатели обоих и проанализировал результаты, чтобы решить, следует ли продвигать канарейку в производство. Чтобы улучшить собранные метрики, я хочу использовать Istio для зеркалирования производственного трафика как для канареечного, так и для базового развертывания.

Для этого у меня есть следующее правило виртуальной службы и назначения, которое отражает трафик для моего канареечного развертывания:

apiVersion: networking.istio.io/v1alpha3
kind: VirtualService
metadata:
  name: goldengoose
  namespace: goldengoose
spec:
  hosts:
  - "*"
  gateways:
  - goldengoose
  http:
  - route:
    - destination:
        port:
          number: 80
        host: goldengoose
        subset: prod
    mirror:
      host: goldengoose
      subset: canary
---
apiVersion: networking.istio.io/v1alpha3
kind: DestinationRule
metadata:
  name: goldengoose
  namespace: goldengoose
spec:
  host: goldengoose
  subsets:
  - name: prod
    labels:
      track: prod
  - name: baseline
    labels:
      track: baseline
  - name: canary
    labels:
      track: canary

Как я также могу зеркально отразить трафик до базовой линии, чтобы и базовая линия, и канарейка получали тот же трафик, что и мое производственное развертывание?

0 ответов

Другие вопросы по тегам