Skip to content

Commit 31b12d8

Browse files
committed
more clarifications
1 parent c99f104 commit 31b12d8

File tree

1 file changed

+13
-2
lines changed
  • keps/sig-architecture/3136-beta-apis-off-by-default

1 file changed

+13
-2
lines changed

keps/sig-architecture/3136-beta-apis-off-by-default/README.md

Lines changed: 13 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -156,7 +156,7 @@ guaranteed migration pain for users when the APIs move to stable, and the risk t
156156
grow around unfinished APIs.
157157
Enabling beta APIs by default, exacerbates these problems by making them on in nearly every cluster.
158158
We observed these problems as we removed long-standing beta APIs and the PRR survey tells us that over
159-
90% of production clusters leave these APIs enabled.
159+
90% of cluster-admins leave production clusters with these APIs enabled.
160160
Unsuitability for production use is documented at https://kubernetes.io/docs/reference/using-api/#api-versioning
161161
("The software is not recommended for production uses"), but defaulting on means they are present in nearly every
162162
production cluster.
@@ -198,20 +198,31 @@ This already exists and will continue to function.
198198

199199
### Notes/Constraints/Caveats (Optional)
200200

201+
Installers, utilities, controllers, etc that need to know if a certain beta API is present can continue to use the
202+
existing discovery mechanisms (example: kubectl's api-resources sub command or the `/api/apps/v1` REST API).
203+
201204
### Risks and Mitigations
202205

203206
Adoption of beta features will slow.
204207
Given how kubernetes is now treated, this is a good thing, not a bad thing.
205208
Those users that want to move quickly and get new features can do so by enabling all beta feature
206209
or just enabling those that are important for their workload.
207210
The [PRR survey](https://datastudio.google.com/reporting/2e9c7439-202b-48a9-8c57-4459e0d69c8d/page/Cv5HB) shows that
208-
over 30% of production clusters have alpha features enabled, so cluster-admins are willing and able to enable features
211+
over 30% of cluster-admins have enabled alpha features on at least some production clusters, so cluster-admins are willing and able to enable features
209212
that are not on by default when they are desired.
210213

211214
If two or more APIs are tightly coupled together, it will now be possible to enable them independently.
212215
This can lead to unanticipated failure modes, but should only impact beta APIs with beta dependencies.
213216
While this is a risk, it is not very common and components should fail safe as a general principle.
214217

218+
If beta APIs are off by default, it's possible that fewer clients will use them and provide feedback.
219+
This is a risk, but early adopters are able to enable these features and have a history of enabling alpha features.
220+
When moving from beta to GA, it will be important for sigs to explicitly seek feedback.
221+
222+
If beta APIs are off by default, it is possible that sigs don't treat taking an API as an indication of a "mostly-baked" API.
223+
If this happens, then more transformation may be required.
224+
Keeping our beta API rules consistent and continuing to enforce easy to use APIs seems to be the best option.
225+
215226
## Design Details
216227

217228
<!--

0 commit comments

Comments
 (0)