|
| 1 | +--- |
| 2 | +layout: blog |
| 3 | +title: "Gateway API v1.0: GA Release" |
| 4 | +date: 2023-10-31T10:00:00-08:00 |
| 5 | +slug: gateway-api-ga |
| 6 | +--- |
| 7 | + |
| 8 | +**Authors:** Shane Utt (Kong), Nick Young (Isovalent), Rob Scott (Google) |
| 9 | + |
| 10 | +On behalf of Kubernetes SIG Network, we are pleased to announce the v1.0 release of [Gateway |
| 11 | +API](https://gateway-api.sigs.k8s.io/)! This release marks a huge milestone for |
| 12 | +this project. Several key APIs are graduating to GA (generally available), while |
| 13 | +other significant features have been added to the Experimental channel. |
| 14 | + |
| 15 | +## What's new |
| 16 | + |
| 17 | +### Graduation to v1 |
| 18 | +This release includes the graduation of |
| 19 | +[Gateway](https://gateway-api.sigs.k8s.io/api-types/gateway/), |
| 20 | +[GatewayClass](https://gateway-api.sigs.k8s.io/api-types/gatewayclass/), and |
| 21 | +[HTTPRoute](https://gateway-api.sigs.k8s.io/api-types/httproute/) to v1, which |
| 22 | +means they are now generally available (GA). This API version denotes a high |
| 23 | +level of confidence in the API surface and provides guarantees of backwards |
| 24 | +compatibility. Note that although, the version of these APIs included in the |
| 25 | +Standard channel are now considered stable, that does not mean that they are |
| 26 | +complete. These APIs will continue to receive new features via the Experimental |
| 27 | +channel as they meet graduation criteria. For more information on how all of |
| 28 | +this works, refer to the [Gateway API Versioning |
| 29 | +Policy](https://gateway-api.sigs.k8s.io/concepts/versioning/). |
| 30 | + |
| 31 | +### Logo |
| 32 | +Gateway API now has a logo! This logo was designed through a collaborative |
| 33 | +process, and is intended to represent the idea that this is a set of Kubernetes |
| 34 | +APIs for routing traffic both north-south and east-west: |
| 35 | + |
| 36 | + |
| 37 | + |
| 38 | +### CEL Validation |
| 39 | +Historically, Gateway API has bundled a validating webhook as part of installing |
| 40 | +the API. Starting in v1.0, webhook installation is optional and only recommended |
| 41 | +for Kubernetes 1.24. Gateway API now includes |
| 42 | +[CEL](/docs/reference/using-api/cel/) validation rules as |
| 43 | +part of the |
| 44 | +[CRDs](/docs/concepts/extend-kubernetes/api-extension/custom-resources/). |
| 45 | +This new form of validation is supported in Kubernetes 1.25+, and thus the |
| 46 | +validating webhook is no longer required in most installations. |
| 47 | + |
| 48 | +### Standard channel |
| 49 | +This release was primarily focused on ensuring that the existing beta APIs were |
| 50 | +well defined and sufficiently stable to graduate to GA. That led to a variety of |
| 51 | +spec clarifications, as well as some improvements to status to improve the |
| 52 | +overall UX when interacting with Gateway API. |
| 53 | + |
| 54 | +### Experimental channel |
| 55 | +Most of the changes included in this release were limited to the experimental |
| 56 | +channel. These include HTTPRoute timeouts, TLS config from Gateways to backends, |
| 57 | +WebSocket support, Gateway infrastructure labels, and more. Stay tuned for a |
| 58 | +follow up blog post that will cover each of these new features in detail. |
| 59 | + |
| 60 | +### Everything else |
| 61 | +For a full list of the changes included in this release, please refer to the |
| 62 | +[v1.0.0 release |
| 63 | +notes](https://github.com/kubernetes-sigs/gateway-api/releases/tag/v0.1.0). |
| 64 | + |
| 65 | +## How we got here |
| 66 | + |
| 67 | +The idea of Gateway API was initially [proposed](https://youtu.be/Ne9UJL6irXY?si=wgtC9w8PMB5ZHil2) |
| 68 | +4 years ago at KubeCon San Diego as the next generation |
| 69 | +of Ingress API. Since then, an incredible community has formed to develop what |
| 70 | +has likely become the most collaborative API in Kubernetes history. Over 170 |
| 71 | +people have contributed to this API so far, and that number continues to grow. |
| 72 | + |
| 73 | +A special thank you to the 20+ [community members who agreed to take on an |
| 74 | +official role in the |
| 75 | +project](https://github.com/kubernetes-sigs/gateway-api/blob/main/OWNERS_ALIASES), |
| 76 | +providing some time for reviews and sharing the load of maintaining the project! |
| 77 | + |
| 78 | +We especially want to highlight the emeritus maintainers that played a pivotal |
| 79 | +role in the early development of this project: |
| 80 | + |
| 81 | +* [Bowei Du](https://github.com/bowei) |
| 82 | +* [Daneyon Hansen](https://github.com/danehans) |
| 83 | +* [Harry Bagdi](https://github.com/hbagdi) |
| 84 | + |
| 85 | +## Try it out |
| 86 | + |
| 87 | +Unlike other Kubernetes APIs, you don't need to upgrade to the latest version of |
| 88 | +Kubernetes to get the latest version of Gateway API. As long as you're running |
| 89 | +one of the 5 most recent minor versions of Kubernetes (1.24+), you'll be able to |
| 90 | +get up and running with the latest version of Gateway API. |
| 91 | + |
| 92 | +To try out the API, follow our [Getting Started |
| 93 | +guide](https://gateway-api.sigs.k8s.io/guides/). |
| 94 | + |
| 95 | +## What's next |
| 96 | + |
| 97 | +This release is just the beginning of a much larger journey for Gateway API, and |
| 98 | +there are still plenty of new features and new ideas in flight for future |
| 99 | +releases of the API. |
| 100 | + |
| 101 | +One of our key goals going forward is to work to stabilize and graduate other |
| 102 | +experimental features of the API. These include [support for service |
| 103 | +mesh](https://gateway-api.sigs.k8s.io/concepts/gamma/), additional route types |
| 104 | +([GRPCRoute](https://gateway-api.sigs.k8s.io/references/spec/#gateway.networking.k8s.io/v1alpha2.GRPCRoute), |
| 105 | +[TCPRoute](https://gateway-api.sigs.k8s.io/references/spec/#gateway.networking.k8s.io/v1alpha2.TCPRoute), |
| 106 | +[TLSRoute](https://gateway-api.sigs.k8s.io/references/spec/#gateway.networking.k8s.io/v1alpha2.TLSRoute), |
| 107 | +[UDPRoute](https://gateway-api.sigs.k8s.io/references/spec/#gateway.networking.k8s.io/v1alpha2.UDPRoute)), |
| 108 | +and a variety of experimental features. |
| 109 | + |
| 110 | +We've also been working towards moving |
| 111 | +[ReferenceGrant](https://gateway-api.sigs.k8s.io/api-types/referencegrant/) into |
| 112 | +a built-in Kubernetes API that can be used for more than just Gateway API. |
| 113 | +Within Gateway API, we've used this resource to safely enable cross-namespace |
| 114 | +references, and that concept is now being adopted by other SIGs. The new version |
| 115 | +of this API will be owned by SIG Auth and will likely include at least some |
| 116 | +modifications as it migrates to a built-in Kubernetes API. |
| 117 | + |
| 118 | +### Gateway API at KubeCon + CloudNativeCon |
| 119 | + |
| 120 | +At [KubeCon North America |
| 121 | +(Chicago)](https://events.linuxfoundation.org/kubecon-cloudnativecon-north-america/) |
| 122 | +and the adjacent [Contributor |
| 123 | +Summit](https://www.kubernetes.dev/events/2023/kcsna/) there are several talks |
| 124 | +related to Gateway API that will go into more detail on these topics. If you're |
| 125 | +attending either of these events this year, considering adding these to your |
| 126 | +schedule. |
| 127 | + |
| 128 | +**Contributor Summit:** |
| 129 | + |
| 130 | +- [Lessons Learned Building a GA API with CRDs](https://sched.co/1Sp9u) |
| 131 | +- [Conformance Profiles: Building a generic conformance test reporting framework](https://sched.co/1Sp9l) |
| 132 | +- [Gateway API: Beyond GA](https://sched.co/1SpA9) |
| 133 | + |
| 134 | +**KubeCon Main Event:** |
| 135 | + |
| 136 | +- [Gateway API: The Most Collaborative API in Kubernetes History Is GA](https://sched.co/1R2qM) |
| 137 | + |
| 138 | +**KubeCon Office Hours:** |
| 139 | + |
| 140 | +Gateway API maintainers will be holding office hours sessions at KubeCon if |
| 141 | +you'd like to discuss or brainstorm any related topics. To get the latest |
| 142 | +updates on these sessions, join the `#sig-network-gateway-api` channel on |
| 143 | +[Kubernetes Slack](https://slack.kubernetes.io/). |
| 144 | + |
| 145 | +## Get involved |
| 146 | + |
| 147 | +We've only barely scratched the surface of what's in flight with Gateway API. |
| 148 | +There are lots of opportunities to get involved and help define the future of |
| 149 | +Kubernetes routing APIs for both Ingress and Mesh. |
| 150 | + |
| 151 | +If this is interesting to you, please [join us in the |
| 152 | +community](https://gateway-api.sigs.k8s.io/contributing/) and help us build the |
| 153 | +future of Gateway API together! |
0 commit comments