Merge pull request #43593 from shaneutt/shaneutt/gateway-api-ga-blog-post
Add Gateway API GA blog postpull/43763/head
commit
58552983ff
Binary file not shown.
After Width: | Height: | Size: 29 KiB |
|
@ -0,0 +1,153 @@
|
|||
---
|
||||
layout: blog
|
||||
title: "Gateway API v1.0: GA Release"
|
||||
date: 2023-10-31T10:00:00-08:00
|
||||
slug: gateway-api-ga
|
||||
---
|
||||
|
||||
**Authors:** Shane Utt (Kong), Nick Young (Isovalent), Rob Scott (Google)
|
||||
|
||||
On behalf of Kubernetes SIG Network, we are pleased to announce the v1.0 release of [Gateway
|
||||
API](https://gateway-api.sigs.k8s.io/)! This release marks a huge milestone for
|
||||
this project. Several key APIs are graduating to GA (generally available), while
|
||||
other significant features have been added to the Experimental channel.
|
||||
|
||||
## What's new
|
||||
|
||||
### Graduation to v1
|
||||
This release includes the graduation of
|
||||
[Gateway](https://gateway-api.sigs.k8s.io/api-types/gateway/),
|
||||
[GatewayClass](https://gateway-api.sigs.k8s.io/api-types/gatewayclass/), and
|
||||
[HTTPRoute](https://gateway-api.sigs.k8s.io/api-types/httproute/) to v1, which
|
||||
means they are now generally available (GA). This API version denotes a high
|
||||
level of confidence in the API surface and provides guarantees of backwards
|
||||
compatibility. Note that although, the version of these APIs included in the
|
||||
Standard channel are now considered stable, that does not mean that they are
|
||||
complete. These APIs will continue to receive new features via the Experimental
|
||||
channel as they meet graduation criteria. For more information on how all of
|
||||
this works, refer to the [Gateway API Versioning
|
||||
Policy](https://gateway-api.sigs.k8s.io/concepts/versioning/).
|
||||
|
||||
### Logo
|
||||
Gateway API now has a logo! This logo was designed through a collaborative
|
||||
process, and is intended to represent the idea that this is a set of Kubernetes
|
||||
APIs for routing traffic both north-south and east-west:
|
||||
|
||||
![Gateway API Logo](gateway-api-logo.png "Gateway API Logo")
|
||||
|
||||
### CEL Validation
|
||||
Historically, Gateway API has bundled a validating webhook as part of installing
|
||||
the API. Starting in v1.0, webhook installation is optional and only recommended
|
||||
for Kubernetes 1.24. Gateway API now includes
|
||||
[CEL](/docs/reference/using-api/cel/) validation rules as
|
||||
part of the
|
||||
[CRDs](/docs/concepts/extend-kubernetes/api-extension/custom-resources/).
|
||||
This new form of validation is supported in Kubernetes 1.25+, and thus the
|
||||
validating webhook is no longer required in most installations.
|
||||
|
||||
### Standard channel
|
||||
This release was primarily focused on ensuring that the existing beta APIs were
|
||||
well defined and sufficiently stable to graduate to GA. That led to a variety of
|
||||
spec clarifications, as well as some improvements to status to improve the
|
||||
overall UX when interacting with Gateway API.
|
||||
|
||||
### Experimental channel
|
||||
Most of the changes included in this release were limited to the experimental
|
||||
channel. These include HTTPRoute timeouts, TLS config from Gateways to backends,
|
||||
WebSocket support, Gateway infrastructure labels, and more. Stay tuned for a
|
||||
follow up blog post that will cover each of these new features in detail.
|
||||
|
||||
### Everything else
|
||||
For a full list of the changes included in this release, please refer to the
|
||||
[v1.0.0 release
|
||||
notes](https://github.com/kubernetes-sigs/gateway-api/releases/tag/v0.1.0).
|
||||
|
||||
## How we got here
|
||||
|
||||
The idea of Gateway API was initially [proposed](https://youtu.be/Ne9UJL6irXY?si=wgtC9w8PMB5ZHil2)
|
||||
4 years ago at KubeCon San Diego as the next generation
|
||||
of Ingress API. Since then, an incredible community has formed to develop what
|
||||
has likely become the most collaborative API in Kubernetes history. Over 170
|
||||
people have contributed to this API so far, and that number continues to grow.
|
||||
|
||||
A special thank you to the 20+ [community members who agreed to take on an
|
||||
official role in the
|
||||
project](https://github.com/kubernetes-sigs/gateway-api/blob/main/OWNERS_ALIASES),
|
||||
providing some time for reviews and sharing the load of maintaining the project!
|
||||
|
||||
We especially want to highlight the emeritus maintainers that played a pivotal
|
||||
role in the early development of this project:
|
||||
|
||||
* [Bowei Du](https://github.com/bowei)
|
||||
* [Daneyon Hansen](https://github.com/danehans)
|
||||
* [Harry Bagdi](https://github.com/hbagdi)
|
||||
|
||||
## Try it out
|
||||
|
||||
Unlike other Kubernetes APIs, you don't need to upgrade to the latest version of
|
||||
Kubernetes to get the latest version of Gateway API. As long as you're running
|
||||
one of the 5 most recent minor versions of Kubernetes (1.24+), you'll be able to
|
||||
get up and running with the latest version of Gateway API.
|
||||
|
||||
To try out the API, follow our [Getting Started
|
||||
guide](https://gateway-api.sigs.k8s.io/guides/).
|
||||
|
||||
## What's next
|
||||
|
||||
This release is just the beginning of a much larger journey for Gateway API, and
|
||||
there are still plenty of new features and new ideas in flight for future
|
||||
releases of the API.
|
||||
|
||||
One of our key goals going forward is to work to stabilize and graduate other
|
||||
experimental features of the API. These include [support for service
|
||||
mesh](https://gateway-api.sigs.k8s.io/concepts/gamma/), additional route types
|
||||
([GRPCRoute](https://gateway-api.sigs.k8s.io/references/spec/#gateway.networking.k8s.io/v1alpha2.GRPCRoute),
|
||||
[TCPRoute](https://gateway-api.sigs.k8s.io/references/spec/#gateway.networking.k8s.io/v1alpha2.TCPRoute),
|
||||
[TLSRoute](https://gateway-api.sigs.k8s.io/references/spec/#gateway.networking.k8s.io/v1alpha2.TLSRoute),
|
||||
[UDPRoute](https://gateway-api.sigs.k8s.io/references/spec/#gateway.networking.k8s.io/v1alpha2.UDPRoute)),
|
||||
and a variety of experimental features.
|
||||
|
||||
We've also been working towards moving
|
||||
[ReferenceGrant](https://gateway-api.sigs.k8s.io/api-types/referencegrant/) into
|
||||
a built-in Kubernetes API that can be used for more than just Gateway API.
|
||||
Within Gateway API, we've used this resource to safely enable cross-namespace
|
||||
references, and that concept is now being adopted by other SIGs. The new version
|
||||
of this API will be owned by SIG Auth and will likely include at least some
|
||||
modifications as it migrates to a built-in Kubernetes API.
|
||||
|
||||
### Gateway API at KubeCon + CloudNativeCon
|
||||
|
||||
At [KubeCon North America
|
||||
(Chicago)](https://events.linuxfoundation.org/kubecon-cloudnativecon-north-america/)
|
||||
and the adjacent [Contributor
|
||||
Summit](https://www.kubernetes.dev/events/2023/kcsna/) there are several talks
|
||||
related to Gateway API that will go into more detail on these topics. If you're
|
||||
attending either of these events this year, considering adding these to your
|
||||
schedule.
|
||||
|
||||
**Contributor Summit:**
|
||||
|
||||
- [Lessons Learned Building a GA API with CRDs](https://sched.co/1Sp9u)
|
||||
- [Conformance Profiles: Building a generic conformance test reporting framework](https://sched.co/1Sp9l)
|
||||
- [Gateway API: Beyond GA](https://sched.co/1SpA9)
|
||||
|
||||
**KubeCon Main Event:**
|
||||
|
||||
- [Gateway API: The Most Collaborative API in Kubernetes History Is GA](https://sched.co/1R2qM)
|
||||
|
||||
**KubeCon Office Hours:**
|
||||
|
||||
Gateway API maintainers will be holding office hours sessions at KubeCon if
|
||||
you'd like to discuss or brainstorm any related topics. To get the latest
|
||||
updates on these sessions, join the `#sig-network-gateway-api` channel on
|
||||
[Kubernetes Slack](https://slack.kubernetes.io/).
|
||||
|
||||
## Get involved
|
||||
|
||||
We've only barely scratched the surface of what's in flight with Gateway API.
|
||||
There are lots of opportunities to get involved and help define the future of
|
||||
Kubernetes routing APIs for both Ingress and Mesh.
|
||||
|
||||
If this is interesting to you, please [join us in the
|
||||
community](https://gateway-api.sigs.k8s.io/contributing/) and help us build the
|
||||
future of Gateway API together!
|
Loading…
Reference in New Issue