-
Notifications
You must be signed in to change notification settings - Fork 1.3k
Create Configure Knative Networking page #6518
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
base: main
Are you sure you want to change the base?
Conversation
Create file - table test
✅ Deploy Preview for knative ready!Built without sensitive environment variables
To edit notification comments on pull requests, go to your Netlify project configuration. |
Formatting test
More writing
Snippet testing
snippet testing
Snippet name fix
Formatting tests
Formatting fix
Formmating
Typo fix
Formatting
Updates
Snippet formatting
Misc edits
Link issue fix
Minor edit to rebuild
evankanderson
left a comment
There was a problem hiding this 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: | |||
There was a problem hiding this comment.
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.
Link fix
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
|
Moved the page up a level next to the Networking options node. |
evankanderson
left a comment
There was a problem hiding this 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-contourhas settings for visibility, CORS policy, timeouts, and TLS secrets
- Gateway
config-gatewayhas the twoexternal-gatewaysandlocal-gatewayslists
- Istio
config-istiohas similar (but not identical)external-gatewaysandlocal-gatewayslists
- 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 objects"] |
There was a problem hiding this comment.
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)"]
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")
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") }} |
There was a problem hiding this comment.
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. |
There was a problem hiding this comment.
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.
Co-authored-by: Evan Anderson <[email protected]>
Removed code snippets - will only be in yaml installation Nav change Diagram work
Minor edit to rebuild
Test edits to rebuild
Build test
Build issue with adjacent charts?
chart test
Mermaid chart formatting
Chart fix
Chart fix
Chart formatting
Co-authored-by: David Simansky <[email protected]>
chart work
chart work
|
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
indentation test
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