Skip to content

Commit 25edce5

Browse files
authored
Merge pull request #1263 from robscott/v0.5.0-blog
Adding v0.5.0 blog post
2 parents 482d988 + 1b357a0 commit 25edce5

File tree

3 files changed

+203
-0
lines changed

3 files changed

+203
-0
lines changed

mkdocs.yml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -69,5 +69,7 @@ nav:
6969
- GAMMA: contributing/gamma.md
7070
- Blog:
7171
- Index: blog/index.md
72+
- 2022:
73+
- blog/2022/graduating-to-beta.md
7274
- 2021:
7375
- blog/2021/introducing-v1alpha2.md
Lines changed: 184 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,184 @@
1+
---
2+
description: >
3+
We are excited to announce the v0.5.0 release of Gateway API. For the first
4+
time, several of our most important Gateway API resources are graduating to
5+
beta. Additional, we are starting a new initiative to explore how Gateway API
6+
can be used for mesh and introducing new experimental concepts such as URL
7+
rewrites.
8+
---
9+
10+
# Gateway API Graduates to Beta
11+
12+
<small style="position:relative; top:-30px;">
13+
:octicons-calendar-24: July 13, 2022 ·
14+
:octicons-clock-24: 5 min read
15+
</small>
16+
17+
We are excited to announce the v0.5.0 release of Gateway API. For the first
18+
time, several of our most important Gateway API resources are graduating to
19+
beta. Additional, we are starting a new initiative to explore how Gateway API
20+
can be used for mesh and introducing new experimental concepts such as URL
21+
rewrites. We'll cover all of this and more below.
22+
23+
## What is Gateway API?
24+
25+
Gateway API is a collection of resources centered around [Gateway][gw] resources
26+
(which represent the underlying network gateways / proxy servers) to enable
27+
robust Kubernetes service networking through expressive, extensible and
28+
role-oriented interfaces that are implemented by many vendors and have broad
29+
industry support.
30+
31+
Originally conceived as a successor to the well known [Ingress][ing] API, the
32+
benefits of Gateway API include (but are not limited to) explicit support for
33+
many commonly used networking protocols (e.g. `HTTP`, `TLS`, `TCP`, `UDP`) as
34+
well as tightly integrated support for Transport Layer Security (TLS). The
35+
`Gateway` resource in particular enables implementations to manage the lifecycle
36+
of network gateways as a Kubernetes API.
37+
38+
If you're an end-user interested in some of the benefits of Gateway API we
39+
invite you to jump in and find an implementation that suits you. At the time of
40+
this release there are over a dozen [implementations][impl] for popular API
41+
gateways and service meshes and guides are available to start exploring quickly.
42+
43+
[gw]:https://gateway-api.sigs.k8s.io/api-types/gateway/
44+
[ing]:https://kubernetes.io/docs/reference/kubernetes-api/service-resources/ingress-v1/
45+
[impl]:https://gateway-api.sigs.k8s.io/implementations/
46+
47+
### Getting started
48+
49+
Gateway API is an official Kubernetes API like
50+
[Ingress](https://kubernetes.io/docs/concepts/services-networking/ingress/).
51+
Gateway API represents a superset of Ingress functionality, enabling more
52+
advanced concepts. Similar to Ingress, there is no default implementation of
53+
Gateway API built into Kubernetes. Instead, there are many different
54+
[implementations][impl] available, providing significant choice in terms of underlying
55+
technologies while providing a consistent and portable experience.
56+
57+
Take a look at the [API concepts documentation][concepts] and check out some of
58+
the [Guides][guides] to start familiarizing yourself with the APIs and how they
59+
work. When you're ready for a practical application open the [implementations
60+
page][impl] and select an implementation that belongs to an existing technology
61+
you may already be familiar with or the one your cluster provider uses as a
62+
default (if applicable). Gateway API is a [Custom Resource Definition
63+
(CRD)][crd] based API so you'll need to [install the CRDs][install-crds] onto a
64+
cluster to use the API.
65+
66+
If you're specifically interested in helping to contribute to Gateway API, we
67+
would love to have you! Please feel free to [open a new issue][issue] on the
68+
repository, or join in the [discussions][disc]. Also check out the [community
69+
page][community] which includes links to the Slack channel and community meetings.
70+
71+
[crd]:https://kubernetes.io/docs/tasks/extend-kubernetes/custom-resources/custom-resource-definitions/
72+
[concepts]:https://gateway-api.sigs.k8s.io/concepts/api-overview/
73+
[guides]:https://gateway-api.sigs.k8s.io/guides/getting-started/
74+
[impl]:https://gateway-api.sigs.k8s.io/implementations/
75+
[install-crds]:https://gateway-api.sigs.k8s.io/guides/getting-started/#install-the-crds
76+
[issue]:https://github.com/kubernetes-sigs/gateway-api/issues/new/choose
77+
[disc]:https://github.com/kubernetes-sigs/gateway-api/discussions
78+
[community]:https://gateway-api.sigs.k8s.io/contributing/community/
79+
80+
## Release highlights
81+
82+
### Graduation to beta
83+
84+
The `v0.5.0` release is particularly historic because it marks the growth in
85+
maturity to a beta API version (`v1beta1`) release for some of the key APIs:
86+
87+
- [GatewayClass](https://gateway-api.sigs.k8s.io/api-types/gatewayclass/)
88+
- [Gateway](https://gateway-api.sigs.k8s.io/api-types/gateway/)
89+
- [HTTPRoute](https://gateway-api.sigs.k8s.io/api-types/httproute/)
90+
91+
This achievement was marked by the completion of several graduation criteria:
92+
93+
- API has been [widely implemented][impl].
94+
- Conformance tests provide basic coverage for all resources and have multiple implementations passing tests.
95+
- Most of the API surface is actively being used.
96+
- Kubernetes SIG Network API reviewers have approved graduation to beta.
97+
98+
For more information on Gateway API versioning, refer to the [official
99+
documentation](https://gateway-api.sigs.k8s.io/concepts/versioning/). To see
100+
what's in store for future releases check out the [next steps](#next-steps)
101+
section.
102+
103+
[impl]:https://gateway-api.sigs.k8s.io/implementations/
104+
105+
### Release channels
106+
107+
This release introduces the `experimental` and `standard` [release channels][ch]
108+
which enable a better balance of maintaining stability while still enabling
109+
experimentation and iterative development.
110+
111+
The `standard` release channel includes:
112+
113+
- resources that have graduated to beta
114+
- fields that have graduated to standard (no longer considered experimental)
115+
116+
The `experimental` release channel includes everything in the `standard` release
117+
channel, plus:
118+
119+
- `alpha` API resources
120+
- fields that are considered experimental and have not graduated to `standard` channel
121+
122+
Release channels are used internally to enable iterative development with
123+
quick turnaround, and externally to indicate feature stability to implementors
124+
and end-users.
125+
126+
For this release we've added the following experimental features:
127+
128+
- [Routes can attach to Gateways by specifying port numbers](https://gateway-api.sigs.k8s.io/geps/gep-957/)
129+
- [URL rewrites and path redirects](https://gateway-api.sigs.k8s.io/geps/gep-726/)
130+
131+
[ch]:https://gateway-api.sigs.k8s.io/concepts/versioning/#release-channels-eg-experimental-standard
132+
133+
### Other improvements
134+
135+
For an exhaustive list of changes included in the `v0.5.0` release, please see
136+
the [v0.5.0 release notes](https://github.com/kubernetes-sigs/gateway-api/releases/tag/v0.5.0).
137+
138+
## Gateway API for service mesh: the GAMMA Initiative
139+
Some service mesh projects have [already implemented support for the Gateway
140+
API](https://gateway-api.sigs.k8s.io/implementations/). Significant overlap
141+
between the Service Mesh Interface (SMI) APIs and the Gateway API has [inspired
142+
discussion in the SMI
143+
community](https://github.com/servicemeshinterface/smi-spec/issues/249) about
144+
possible integration.
145+
146+
We are pleased to announce that the service mesh community, including
147+
representatives from Cilium Service Mesh, Consul, Istio, Kuma, Linkerd, NGINX
148+
Service Mesh and Open Service Mesh, is coming together to form the [GAMMA
149+
Initiative](https://gateway-api.sigs.k8s.io/contributing/gamma/), a dedicated
150+
workstream within the Gateway API subproject focused on Gateway API for Mesh
151+
Management and Administration.
152+
153+
This group will deliver [enhancement
154+
proposals](https://gateway-api.sigs.k8s.io/v1beta1/contributing/gep/) consisting
155+
of resources, additions, and modifications to the Gateway API specification for
156+
mesh and mesh-adjacent use-cases.
157+
158+
This work has begun with [an exploration of using Gateway API for
159+
service-to-service
160+
traffic](https://docs.google.com/document/d/1T_DtMQoq2tccLAtJTpo3c0ohjm25vRS35MsestSL9QU/edit#heading=h.jt37re3yi6k5)
161+
and will continue with enhancement in areas such as authentication and
162+
authorization policy.
163+
164+
## Next steps
165+
166+
As we continue to mature the API for production use cases, here are some of the highlights of what we'll be working on for the next Gateway API releases:
167+
168+
- [GRPCRoute][gep1016] for [gRPC][grpc] traffic routing
169+
- [Route delegation][pr1085]
170+
- Layer 4 API maturity: Graduating [TCPRoute][tcpr], [UDPRoute][udpr] and
171+
[TLSRoute][tlsr] to beta
172+
- [GAMMA Initiative](https://gateway-api.sigs.k8s.io/contributing/gamma/) - Gateway API for Service Mesh
173+
174+
If there's something on this list you want to get involved in, or there's
175+
something not on this list that you want to advocate for to get on the roadmap
176+
please join us in the #sig-network-gateway-api channel on Kubernetes Slack or our weekly [community calls](https://gateway-api.sigs.k8s.io/contributing/community/#meetings).
177+
178+
[gep1016]:https://github.com/kubernetes-sigs/gateway-api/blob/master/site-src/geps/gep-1016.md
179+
[grpc]:https://grpc.io/
180+
[pr1085]:https://github.com/kubernetes-sigs/gateway-api/pull/1085
181+
[tcpr]:https://github.com/kubernetes-sigs/gateway-api/blob/main/apis/v1alpha2/tcproute_types.go
182+
[udpr]:https://github.com/kubernetes-sigs/gateway-api/blob/main/apis/v1alpha2/udproute_types.go
183+
[tlsr]:https://github.com/kubernetes-sigs/gateway-api/blob/main/apis/v1alpha2/tlsroute_types.go
184+
[community]:https://gateway-api.sigs.k8s.io/contributing/community/

site-src/blog/index.md

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,22 @@
11
# Blog
22

3+
## [Gateway API Graduates to Beta]
4+
5+
<small style="position:relative; top:-10px;">
6+
:octicons-calendar-24: July 13, 2022 ·
7+
:octicons-clock-24: 5 min read
8+
</small>
9+
10+
We are excited to announce the v0.5.0 release of Gateway API. For the first
11+
time, several of our most important Gateway API resources are graduating to
12+
beta. Additional, we are starting a new initiative to explore how Gateway API
13+
can be used for mesh and introducing new experimental concepts such as URL
14+
rewrites.
15+
16+
[:octicons-arrow-right-24: Continue reading][Gateway API Graduates to Beta]
17+
18+
[Gateway API Graduates to Beta]:/blog/2022/graduating-to-beta
19+
320
## [Introducing Gateway API v1alpha2]
421

522
<small style="position:relative; top:-10px;">

0 commit comments

Comments
 (0)