Skip to content

Ambient branch merge#4058

Merged
istio-testing merged 132 commits intoistio:masterfrom
kyessenov:ambient_merge
Sep 14, 2022
Merged

Ambient branch merge#4058
istio-testing merged 132 commits intoistio:masterfrom
kyessenov:ambient_merge

Conversation

@kyessenov
Copy link
Copy Markdown
Contributor

Adds extensions from the ambient branch. They don't matter on the data plane unless used by the control plane.

istio-testing and others added 30 commits April 22, 2022 13:51
switched envoy commit to fork with L7 PEP changes

testing

wrong SHA

added internal listener and transport_socket
Change-Id: I80a834b7b995973ead80f3f1e1e8e795ca95c4a5
* telemetry: add workload_metadata filter

This PR is intended to establish a basic framework for a Listener filter
that will be used to lookup client/server metadata for workload
instances. If metadata can be found (based on IP addresses), the
metadata will be written into FilterState, where it can be exploited by
subsequent filters (for reporting, protocol encoding, etc.).

It is expected that this filter will need to undergo significant
modification as we flesh out the implementation (and relationship to
other filters in the chain). For instance, ECDS support will need to be
added.

* update to match control plane PR

* add support for baggage generation

* fix errors from clang-format

* address code review comments

* clean up consts, etc.
Change-Id: I2cc0960342f2e7e0d48b69f4bdf85db78cbcdbaf
Signed-off-by: Yuchen Dai <lambdai@google.com>
Change-Id: I84d69936b4bdaf10a0e325e2d64d1a074be6fd1d
Change-Id: I36d6ff42d9d8c397e015b4d8647b277662b5c6cb
sha
Change-Id: I234c56c8889a0921df65ca03b64e9598a4e2721d
Change-Id: Ib528be1d24609422afc5d66ca2d66b38eaabff8c
Change-Id: Ia08f1498d10ccba0677409a1a2c55367eb3f912d
Change-Id: Id954d72f04c2823ea1dac235485e604e9cdfab50
Change-Id: Ibceaa1a916cd4236021643088c6f5feb2f468f8a
Change-Id: If4cc136a1839f044b5cc709d3db645d50e207858
rebase ambient changes on envoy main
This PR creates a new HTTP filter that is intended to live in the
inbound_CONNECT_terminate chain. It will take the received baggage
header and build a WorkloadMetadataObject filter state object to match.
This filter state object can then be passed to the internal listener
chain for processing by a subsequent filter that can (a) set the SSL
connection info appropriately and (b) create a PeerInfo CEL filter state
object for use in the stats filter.

It is modeled after the header_to_metadata filter. If/once this is
working, it can be likewise expanded to be a more general purpose (if
warranted).
switched envoy commit to fork with L7 PEP changes

testing

wrong SHA

added internal listener and transport_socket
Change-Id: I80a834b7b995973ead80f3f1e1e8e795ca95c4a5
* telemetry: add workload_metadata filter

This PR is intended to establish a basic framework for a Listener filter
that will be used to lookup client/server metadata for workload
instances. If metadata can be found (based on IP addresses), the
metadata will be written into FilterState, where it can be exploited by
subsequent filters (for reporting, protocol encoding, etc.).

It is expected that this filter will need to undergo significant
modification as we flesh out the implementation (and relationship to
other filters in the chain). For instance, ECDS support will need to be
added.

* update to match control plane PR

* add support for baggage generation

* fix errors from clang-format

* address code review comments

* clean up consts, etc.
Change-Id: I2cc0960342f2e7e0d48b69f4bdf85db78cbcdbaf
Signed-off-by: Yuchen Dai <lambdai@google.com>
Change-Id: I84d69936b4bdaf10a0e325e2d64d1a074be6fd1d
Change-Id: I36d6ff42d9d8c397e015b4d8647b277662b5c6cb
sha
Change-Id: I234c56c8889a0921df65ca03b64e9598a4e2721d
Change-Id: Ib528be1d24609422afc5d66ca2d66b38eaabff8c
Change-Id: Ia08f1498d10ccba0677409a1a2c55367eb3f912d
kyessenov and others added 14 commits August 15, 2022 17:31
Signed-off-by: Kuat Yessenov <kuat@google.com>
Signed-off-by: Kuat Yessenov <kuat@google.com>
TLS passthrough, add h2 and TLS to CONNECT test
Signed-off-by: Kuat Yessenov <kuat@google.com>
@kyessenov kyessenov requested a review from a team September 13, 2022 19:52
@istio-testing istio-testing added the size/XXL Denotes a PR that changes 1000+ lines, ignoring generated files. label Sep 13, 2022
Signed-off-by: Kuat Yessenov <kuat@google.com>
@douglas-reid
Copy link
Copy Markdown
Contributor

Should we add a new file somewhere with a TODO list of things that need to be addressed for ambient extensions (and filter state objects)? I feel like we would ultimately want some coherent scheme for namespacing, etc., as part of this, but I'm not sure that list of things lives anywhere outside our heads.

Signed-off-by: Kuat Yessenov <kuat@google.com>
@kyessenov
Copy link
Copy Markdown
Contributor Author

@douglas-reid we should have a follow up that puts them into proper hierarchy source/extensions/.... Otherwise, this is just plain merge as-is.

@douglas-reid
Copy link
Copy Markdown
Contributor

As long as that work is being tracked somewhere, I'm fine with it. There are changes in this PR to the extensions used in Istio Classic ™️. They seem harmless, but I just want to note there is the potential for some impact.

@kyessenov
Copy link
Copy Markdown
Contributor Author

Yeah, I checked stats and common changes, and they look harmless. Would be great if someone else takes a look.

Signed-off-by: Kuat Yessenov <kuat@google.com>
@kyessenov
Copy link
Copy Markdown
Contributor Author

/retest

2 similar comments
@kyessenov
Copy link
Copy Markdown
Contributor Author

/retest

@kyessenov
Copy link
Copy Markdown
Contributor Author

/retest

@istio-testing istio-testing merged commit 5928a51 into istio:master Sep 14, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

size/XXL Denotes a PR that changes 1000+ lines, ignoring generated files.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

7 participants