Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Prepare releasenotes for Istio 1.25 #16257

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

kfaseela
Copy link
Member

Description

Early draft for 1.25 release notes, so that we can take inputs from WG leads to reword things better.

Reviewers

  • Ambient
  • Docs
  • Installation
  • Networking
  • Performance and Scalability
  • Extensions and Telemetry
  • Security
  • Test and Release
  • User Experience
  • Developer Infrastructure
  • Localization/Translation

Signed-off-by: Faseela K <faseela.k@est.tech>
@kfaseela kfaseela requested review from a team as code owners February 18, 2025 22:17
@istio-testing istio-testing added the size/L Denotes a PR that changes 100-499 lines, ignoring generated files. label Feb 18, 2025
@istio-testing
Copy link
Contributor

@kfaseela: The following test failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name Commit Details Required Rerun command
lint_istio.io 621505d link true /test lint

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository. I understand the commands that are listed here.

Copy link
Contributor

@ilrudie ilrudie left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Didn't exhaustively review, but generally this is looking good

This enables the new iteration of [IP auto-allocation](/docs/ops/configuration/traffic-management/dns-proxy/#address-auto-allocation),
fixing long-standing issues around allocation instability, ambient support, and increased visibility.
`ServiceEntry` objects without `spec.address` set will now see a new field, `status.addresses`, automatically set.
Note these will not be used unless proxies are configured to do DNS proxying, which remains off-by-default.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

"Promoted the cni.ambient.dnsCapture value to default to true" means that for ztunnel dnsCaprure will work out of the box so the "off-by-default" only applies to envoy-based proxies.

**Deprecated** `traffic.sidecar.istio.io/kubevirtInterfaces`, in favor of `istio.io/reroute-virtual-interfaces`
([Issue #49829](https://github.com/istio/istio/issues/49829))

- **Added** support for attaching policy defaults for istio-waypoint by targetting the GatewayClass.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
- **Added** support for attaching policy defaults for istio-waypoint by targetting the GatewayClass.
- **Added** support for attaching policy defaults for istio-waypoint by targeting the GatewayClass.

Seems like this is probably my own typo

@kfaseela
Copy link
Member Author

cc @keithmattix @bleggett @howardjohn @zirain @therealmitchconnors I am trying to add the highlights section. If you want me to pick any specific items from the change notes to be highlighted, please share.

@howardjohn
Copy link
Member

cc @keithmattix @bleggett @howardjohn @zirain @therealmitchconnors I am trying to add the highlights section. If you want me to pick any specific items from the change notes to be highlighted, please share.

I can write up a blurb on "improved locality load balancing" in the next few days

Comment on lines +43 to +44
- **Added** `ambient.reconcileIptablesOnStartup` field in the `istio-cni` chart and the corresponding `AMBIENT_RECONCILE_POD_RULES_ON_STARTUP` flag
to control whether the ambient CNI agent should reconcile the iptables of pods at startup.
Copy link
Contributor

@bleggett bleggett Feb 19, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
- **Added** `ambient.reconcileIptablesOnStartup` field in the `istio-cni` chart and the corresponding `AMBIENT_RECONCILE_POD_RULES_ON_STARTUP` flag
to control whether the ambient CNI agent should reconcile the iptables of pods at startup.

this is redundant with the below entry (the PRs were separate so the release notes entries are also, but for the published doc only need to say it once IMO)


DNS proxying is enabled by default for ambient workloads in this release. Note that only new pods will have DNS enabled, existing pods will not have their DNS traffic captured.
To enable this feature for existing pods, existing pods must either be manually restarted, or alternatively the iptables reconcilation feature can be enabled when upgrading
`istio-cni` via `--set cni.ambient.reconcileIptablesOnStartup=true` which will reconcile existing pods automatically on upgrade.
Copy link
Contributor

@bleggett bleggett Feb 19, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
`istio-cni` via `--set cni.ambient.reconcileIptablesOnStartup=true` which will reconcile existing pods automatically on upgrade.
`istio-cni` via `--set cni.ambient.reconcileIptablesOnStartup=true` which will reconcile existing pods automatically on upgrade. Individual pods may opt-out of global ambient DNS capture by applying the`ambient.istio.io/dns-capture=false` annotation.
Note that setting this to `false` will break some Istio features, such as ServiceEntries and egress waypoints, but may be desirable for workloads that interact poorly with DNS proxies.

makes sense to mention the opt-out mechanism in the same breath as the global flag (which I did not do in the original upgrade note)


## What’s new?

### Ambient mode enhancements
Copy link
Contributor

@bleggett bleggett Feb 19, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
### Ambient mode enhancements
### Ambient mode enhancements
- DNS proxying enabled by default for Ambient pods, allowing ServiceEntries and egress gateway routing to work by default.
- Default-deny policy for waypoints via GatewayClass `targetRef`.
- Ability to enforce L4 policy against the waypoint proxy instance itself.
- Support for per-pod traffic customization around virtual interfaces and DNS capture
- `istio-cni` Daemonset can now be safely upgraded in-place in an active cluster, without requiring a node cordon to prevent pods spawned during the upgrade process from escaping ambient traffic capture.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Maybe mention enhanced policy options for waypoint:

  • default deny policy for waypoint by targetRef=gtwclass
  • assert L4 policy against the workload implementing the waypoint

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yep, I was just suggesting what I knew, I'll add those to this suggestion.

@kfaseela
Copy link
Member Author

cc @whitneygriffith , could you please share some inputs about the http 1.1 header case preservation documentation which you have done? Wanted to add to the release notes

{{< /tip >}}

## What’s new?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Zonal routing enhancements

Whether for reliability, performance, or cost reasons, controlling cross-zone and cross-region traffic is often an important day-2 operation for users.
With Istio 1.25, this just gets even easier!

  • The Kubernetes Traffic disrtibution feature is now fully supported, offering a simplified interface to keep traffic local. The existing Istio locality load balancing remains for more complex use cases.
  • Ztunnel will now report the additional source_zone, source_region, destination_zone, and destination_region labels to all metrics, giving a clear view of cross-zonal traffic.

### Ambient mode enhancements

### DNS auto-allocation improvements

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
DNS proxying is now enabled by default for ambient workloads.
This enhances performance and security, as well as enabling [egress traffic controls](https://ambientmesh.io/docs/traffic/mesh-egress/#egress-gateways).
Along with this change comes a few advanced per-pod customization around traffic captured, including during off DNS capture for specific workloads if necessary; check out the change notes for more information.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
kind/docs size/L Denotes a PR that changes 100-499 lines, ignoring generated files.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants