Skip to content

Support Dual Stack in Istio based on optimized design solution #40394

@zhlsunshine

Description

@zhlsunshine

(This is used to request new product features, please visit https://discuss.istio.io for questions on using Istio)
In general, Isito can support dual stack based on this envoy feature and it has been implemented in extra branch experimental-dual-stack of Istio. However, the optimized design solution can help to eliminate a lot of duplicated configuration compare with the experimental one.

Describe the feature request
There are 2 parts for supporting Dual Stack in Istio based on new design solution as following:

  1. Downstream part: Multiple addresses should be held in every listener in downstream
    The issue Support multiple addresses per listener in Envoy includes all related PRs, and the API changes PR for listener is: PR#21391
  2. Upstream part: Smarter way to pick endpoints for clusters in upstream
    The issue api, extend BindConfig to multiple addresses in Envoy includes all related PRs, and the API changes PR for listener is: PR#22639 and PR#22639

Please refer to design doc for more details.

Describe alternatives you've considered
There is an implementation for dual stack support in extra branch experimental-dual-stack of Istio. But it imports duplicated configuration and inflexible.

Affected product area (please put an X in all that apply)

[ ] Docs
[ ] Installation
[ ] Networking
[ ] Performance and Scalability
[ ] Extensions and Telemetry
[ ] Security
[ ] Test and Release
[ ] User Experience
[ ] Developer Infrastructure

Affected features (please put an X in all that apply)

[ ] Multi Cluster
[ ] Virtual Machine
[ ] Multi Control Plane

Additional context

Metadata

Metadata

Assignees

No one assigned

    Labels

    kind/enhancementlifecycle/staleproofIndicates a PR or issue has been deemed to be immune from becoming stale and/or automatically closed

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions