-
Notifications
You must be signed in to change notification settings - Fork 3
Add ingress-nginx migration docs #1035
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
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
docs/manuals/spaces/howtos/self-hosted/ingress-nginx-migration.md
Outdated
Show resolved
Hide resolved
|
FYI we wrote up a project around how to handle this in Spaces - https://linear.app/upbound/project/migrate-away-from-ingress-nginx-in-spaces-4f46a7c99c3f/overview I'd like us to understand our options a bit more, specifically around what we are suggesting for the Gateway API implementation i.e. envoy gateway. |
docs/manuals/spaces/howtos/self-hosted/ingress-nginx-migration.md
Outdated
Show resolved
Hide resolved
Signed-off-by: rae sharp <[email protected]>
docs/manuals/spaces/howtos/self-hosted/ingress-nginx-migration.md
Outdated
Show resolved
Hide resolved
docs/manuals/spaces/howtos/self-hosted/ingress-nginx-migration.md
Outdated
Show resolved
Hide resolved
docs/manuals/spaces/howtos/self-hosted/ingress-nginx-migration.md
Outdated
Show resolved
Hide resolved
cbuto
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.
thanks @tr0njavolta, left some comments 👍
| ```bash | ||
| kubectl apply -f - --server-side <<EOF | ||
| apiVersion: gateway.networking.k8s.io/v1 | ||
| kind: GatewayClass |
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.
the GatewayClass would remain consistent between cloud providers, but the underlying EnvoyProxy config resource would change accordingly
| The following example uses Envoy Gateway: | ||
|
|
||
| ```bash | ||
| export ENVOY_GATEWAY_VERSION=v1.2.4 |
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.
might be worth not defining an explicit version here, so we don't have to update it later on?
|
|
||
| **Create GatewayClass resource** | ||
|
|
||
| Create a `GatewayClass` resource appropriate for your cloud provider. |
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.
Similar to an above comment, the GatewayClass would remain consistent between clouds but the underlying EnvoyProxy config would differ.
we could show different configs per cloud, then just always have the same GatewayClass applied
| </CodeBlock> | ||
|
|
||
| :::note | ||
| During installation or upgrade, you can use the Spaces Helm chart to create the |
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 think we should point users towards using the helm values first, so they aren't manually creating these resources and later find these are included in the helm chart.
After creating the GatewayClass and EnvoyProxy config, they can do a helm upgrade with the values referenced in the section below
ingress:
provision: false
gatewayAPI:
host: proxy.example.com # Must match your current ingress.host
gateway:
provision: true
name: spaces
className: spaces # Must match your GatewayClass name
spacesRouterRoute:
provision: true
# Labels for NetworkPolicy - must match your gateway controller's pods
podLabels:
app.kubernetes.io/name: envoy
app.kubernetes.io/component: proxy
app.kubernetes.io/managed-by: envoy-gateway
namespaceLabels:
kubernetes.io/metadata.name: envoy-gateway-system
| </CodeBlock> | ||
|
|
||
| ### Install ingress-nginx | ||
| ### Install Envoy Gateway |
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.
starting in Spaces 1.16, we'll want to update this to default to load balancer service.
then we could optionally point users to docs/manuals/spaces/howtos/self-hosted/ingress.md if they need Gateway or Ingress.
|
|
||
| ## Gateway API | ||
|
|
||
| Spaces supports the [Gateway API][gateway-api-docs]. Use this option if your |
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.
should we have details around how to use Gateway API here?
similar to what we have in the installation docs 🤔
50008e7 to
dc137fa
Compare
Description
Updates docs for ingress-nginx to Envoy for Spaces. https://docs.google.com/document/d/1ZfE7kZTAmKKjHkt6dFNRzki9S6wRnpHbzXa86LVcDw0/edit?tab=t.0#heading=h.valiw6ek06tp
Type of change
Checklist
make lintlocally (or will fix Vale suggestions in review)Additional notes