Skip to content

Conversation

@iRaindrop
Copy link
Contributor

The content for the Kourier, Contour, Gateway API, and Istio is could be helpful consolidated as opposed to separate install and config topics.

Proposed Changes

  • Create "Configure network adapters" under "Administration->Configuring Knative->Networking options

Create file - table test
@netlify
Copy link

netlify bot commented Nov 19, 2025

Deploy Preview for knative ready!

Built without sensitive environment variables

Name Link
🔨 Latest commit 47883ad
🔍 Latest deploy log https://app.netlify.com/projects/knative/deploys/694633d7f0295b0008251769
😎 Deploy Preview https://deploy-preview-6518--knative.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

To edit notification comments on pull requests, go to your Netlify project configuration.

@knative-prow knative-prow bot requested review from mmejia02 and nainaz November 19, 2025 05:58
@knative-prow knative-prow bot added the size/S Denotes a PR that changes 10-29 lines, ignoring generated files. label Nov 19, 2025
@iRaindrop iRaindrop marked this pull request as draft November 19, 2025 05:59
@knative-prow knative-prow bot added the do-not-merge/work-in-progress Indicates that a PR should not merge because it is a work in progress. label Nov 19, 2025
@knative-prow knative-prow bot added size/M Denotes a PR that changes 30-99 lines, ignoring generated files. and removed size/S Denotes a PR that changes 10-29 lines, ignoring generated files. labels Nov 19, 2025
@knative-prow knative-prow bot added size/L Denotes a PR that changes 100-499 lines, ignoring generated files. and removed size/M Denotes a PR that changes 30-99 lines, ignoring generated files. labels Nov 22, 2025
Snippet formatting
Misc edits
Added tabs for Network layer setup
Minor edit to rebuild
Copy link
Member

@evankanderson evankanderson left a comment

Choose a reason for hiding this comment

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

I got to this much later than I intended to (and I need to update the charts). A few corrections to the first half, and I may need to actually get out a cluster and cycle through the gateways for the details on each one.

@@ -0,0 +1,35 @@
Use the following steps to install Istio and set it as the ingress conroller.

1. Install a properly configured Istio:
Copy link
Member

Choose a reason for hiding this comment

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

You may need a space between ) }} for the macro to work. I can take a look this weekend.

@iRaindrop iRaindrop changed the title Create Configure Network Adapters page Create Configure Knative Networking page Dec 6, 2025
iRaindrop and others added 4 commits December 6, 2025 15:45
Co-authored-by: Evan Anderson <[email protected]>
Moved page up in Nav, moved 'Detect current state' section down. Also format edits.
H3 to H2 - Determine current state
@iRaindrop
Copy link
Contributor Author

iRaindrop commented Dec 8, 2025

Moved the page up a level next to the Networking options node.
Update: Moved the page back.

Copy link
Member

@evankanderson evankanderson left a comment

Choose a reason for hiding this comment

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

Sorry for the bit of a left-turn on this review. I'd been reviewing this in isolation, but then I realized that some of the content looked familiar from the YAML install documentation, and I'd really prefer not to duplicate those docs.

This current document seems to partially duplicate the "installing with YAML" document, but adds some additional context. The DNS bit seems unnecessary, as it's simply the same as the existing "installing with YAML" content, so I'd avoid duplicating that.

I think the diagrams and what the different installations are good explanation content, but I'd be concerned about mixing the how-to and explanation into the same document. Maybe rather than including the "Install and configure" sections (which mostly cover install without configure), we could add details on the configuration options for each ingress option. Off the top of my head:

  • Contour
    • config-contour has settings for visibility, CORS policy, timeouts, and TLS secrets
  • Gateway
    • config-gateway has the two external-gateways and local-gateways lists
  • Istio
    • config-istio has similar (but not identical) external-gateways and local-gateways lists
  • Kourier
    • Doesn't really have any settings, because it's lightweight and Knative-only

look: neo
---
flowchart LR
K1["Knative<br>net-kourier"] -- creates --> K2["KIngress&nbsp;objects"]
Copy link
Member

Choose a reason for hiding this comment

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

net-kourier doesn't create KIngress objects; it reads objects created by serving. I think a more accurate diagram would have two parts. One is common for all network layers:

flowchart LR

route["Route object"] -- "read by" --> serving-core("Serving<br>controller") -- creates --> KIngress["Ingress object<br>networking.internal.knative.dev<br>(KIngress)"]
Loading

And then for Kourier, the chart would look like

flowchart LR

KIngress["KIngress<br>Class:kourier.ingress.networking.knative.dev"] -- "read by" --> controller("net-kourier<br>controller") -- programs --> envoy("Envoy deployment<br>kourier-system namespace")
Loading

I'll update the other diagrams with just the second-part diagrams.

1. Install a properly configured Istio:

```bash
kubectl apply -l knative.dev/crd-install=true -f {{ artifact(repo="net-istio",org="knative-extensions",file="istio.yaml") }}
Copy link
Member

Choose a reason for hiding this comment

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

@dprotaso -- do we still need our own istio.yaml?


The Kubernetes Gateway API requires a controller or service mesh. Istio and Contour implementations are tested though other Gateway API implementations should work. Currently, there is no native Gateway API support for Kourier. For more information see [Tested Gateway API version and Ingress](https://github.com/knative-extensions/net-gateway-api/blob/main/docs/test-version.md).

The controller that Knative uses is determined by which Gateway API-compatible controller you install and configure in your cluster.
Copy link
Member

Choose a reason for hiding this comment

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

In particular, it's determined by the configuration in config-gateway, that I described in an earlier comment.

@dprotaso
Copy link
Member

FYI - I just merged #6540 and didn't realize this was still outstanding.

Unsure if this changes anything in this PR

@iRaindrop
Copy link
Contributor Author

FYI - I just merged #6540 and didn't realize this was still outstanding.

Unsure if this changes anything in this PR

It doesn't. No worries, as I can just incorporate it into the content.

I do suggest that that note, because it's large and at the bottom of the list, be changed to the following to avoid confusion with the other bullets in the list:

"Third party integrations are not managed by the Knative community."

Formatting and installation snippets
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

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.

5 participants