У меня точно такая же проблема.Я хотел бы применить EnvoyFilter с GATEWAY listenerType.
Моя проблема заключается в том, что этот фильтр применяется ко всем шлюзам istio, развернутым в моем кластере, и это не то, что я хочу.
Например, у меня есть 2 шлюза: один для образца bookinfo
и другой для MyOwnService
.
Теперь, если я разверну EnvoyFilter
с GATEWAY listenerType, он будет выполнен на шлюзе bookinfo И шлюзе MyOwnService.
Итак, я намеревалсяиспользуйте свойство spec.workloadLabels
моего EnvoyFilter, чтобы применить его только к шлюзу MyOwnService, но я не знаю, какие метки я должен назначить здесь.Поскольку я нахожусь на уровне GATEWAY, если я укажу метку моего конечного развертывания, фильтр никогда не будет применен.
Если я изменю значение listenerType на SIDECAR_INBOUND
, он будет работать, как и ожидалось, потому что на уровне коляски, посланникпрокси-сервер «знает» метки своего собственного модуля и может применять (или нет) фильтр в соответствии с рабочими метками.
Но на уровне GATEWAY, как я могу сказать, что фильтр должен применяться или нет?Действительно ли spec.workloadLabels
совместим с GATEWAY listenerType?