Белые IP-адреса для сетевого трафика через шлюзы Istio - PullRequest
0 голосов
/ 20 апреля 2019

Я попытался занести в белый список IP-адрес (а) во входящем трафике моего кластера kubernetes, используя этот пример:

Хотя это работает, как и ожидалось, хотел пойти дальше и попробовать, могу ли я использоватьistio шлюзы или виртуальная служба при настройке правила Istio вместо Loadbalancer (ingressgateway).

apiVersion: config.istio.io/v1alpha2
kind: rule
metadata:
  name: checkip
  namespace: my-namespace
spec:
  match: source.labels["app"] == "my-app"
  actions:
  - handler: whitelistip.listchecker
    instances:
    - sourceip.listentry
---

Где my-app имеет kind: Gateway с определенным хостом и портом и помечено app=my-app.

Я использую версию istio 1.1.1 Также в моем кластере есть вся система istio, работающая с колясками посланника практически на всех служебных модулях.

1 Ответ

0 голосов
/ 30 мая 2019

Вы путаете одно, что в вышеприведенном правиле match: source.labels["app"] == "my-app" относится не к ярлыку какого-либо ресурса, а к ярлыку модуля.

Из Документация OutputTemplate :

sourceLabels |Относится к исходным меткам модуля.Привязки атрибутов могут ссылаться на это поле, используя $ out.sourcelabels

. Проверить это можно, посмотрев ресурсы с меткой app = istio-ingressgateway через:

kubectl get pods,svc -n istio-system -l "app=istio-ingressgateway" --show-labels

. Вы можетепроверьте этот блог из istio о модели адаптера микшера, чтобы понять полную модель микшера, ее обработчики, экземпляры и правила.

Надеюсь, это поможет!

...