api icon indicating copy to clipboard operation
api copied to clipboard

Add a match scheme to WasmPlugin for passing more specific traffic to Wasm module

Open ingwonsong opened this issue 2 years ago • 5 comments

This PR proposes to add a match scheme "TrafficSelector" to WasmPlugin for passing more specific traffic to Wasm module.

Currently, there is no way to select the traffic by its direction or port. So, all the HTTP traffics at the proxy, which is selected by "WorkloadSelector" and namespace, are passed to Wasm module.

This is a part of efforts for fixing: https://github.com/istio/istio/issues/39345 and https://github.com/istio/istio/issues/36238.

For the details and discussion, please refer to the draft design doc.

ingwonsong avatar Jul 09 '22 00:07 ingwonsong

🤔 🐛 You appear to be fixing a bug in Go code, yet your PR doesn't include updates to any test files. Did you forget to add a test?

Courtesy of your friendly test nag.

istio-policy-bot avatar Jul 09 '22 00:07 istio-policy-bot

/test release-notes_api

ingwonsong avatar Jul 09 '22 00:07 ingwonsong

cc @douglas-reid @kyessenov

howardjohn avatar Jul 11 '22 14:07 howardjohn

cc: @ramaraochavali

ingwonsong avatar Jul 15 '22 21:07 ingwonsong

@douglas-reid

  • Will there be a follow-on to update Telemetry to use the common WorkloadMode type?

Sounds good to me. But, I think it seems to be possible to change it when Telemetry API is promoted to Beta or GA.

  • Will there be a follow-on to move TrafficSelector to be a common type?

Regarding TrafficSelector, IMO, it would be better to keep it in WasmPlugin at this moment, because it is possibly changed later.

ingwonsong avatar Jul 25 '22 14:07 ingwonsong

Please note that https://github.com/istio/istio/pull/40684 is in WIP as a corresponding implementation of this PR.

ingwonsong avatar Aug 26 '22 19:08 ingwonsong