|
2 | 2 |
|
3 | 3 | ## Table of Contents
|
4 | 4 |
|
5 |
| -<!-- TOC --> |
6 |
| - |
| 5 | +<!-- toc --> |
7 | 6 | - [Summary](#summary)
|
8 | 7 | - [Motivation](#motivation)
|
9 |
| - - [Goals](#goals) |
10 |
| - - [Non-Goals](#non-goals) |
11 |
| - - [User Stories](#user-stories) |
| 8 | + - [Goals](#goals) |
| 9 | + - [Non-Goals](#non-goals) |
| 10 | + - [User Stories](#user-stories) |
12 | 11 | - [Proposal](#proposal)
|
13 |
| - - [API](#api) |
14 |
| - - [Examples](#examples) |
15 |
| - - [Runtime Handler](#runtime-handler) |
16 |
| - - [Versioning, Updates, and Rollouts](#versioning-updates-and-rollouts) |
17 |
| - - [Implementation Details](#implementation-details) |
18 |
| - - [Monitoring](#monitoring) |
19 |
| - - [Risks and Mitigations](#risks-and-mitigations) |
| 12 | + - [API](#api) |
| 13 | + - [Examples](#examples) |
| 14 | + - [Runtime Handler](#runtime-handler) |
| 15 | + - [Versioning, Updates, and Rollouts](#versioning-updates-and-rollouts) |
| 16 | + - [Implementation Details](#implementation-details) |
| 17 | + - [Monitoring](#monitoring) |
| 18 | + - [Risks and Mitigations](#risks-and-mitigations) |
20 | 19 | - [RuntimeClass Scheduling](#runtimeclass-scheduling)
|
21 |
| - - [RuntimeClass Scheduling Motivation](#runtimeclass-scheduling-motivation) |
22 |
| - - [RuntimeClass Scheduling Goals](#runtimeclass-scheduling-goals) |
23 |
| - - [RuntimeClass Scheduling Non-Goals](#runtimeclass-scheduling-non-goals) |
24 |
| - - [RuntimeClass Scheduling Proposal](#runtimeclass-scheduling-proposal) |
25 |
| - - [RuntimeClass Scheduling User Stories](#runtimeclass-scheduling-user-stories) |
26 |
| - - [Windows](#windows) |
27 |
| - - [Sandboxed Nodes](#sandboxed-nodes) |
28 |
| - - [Design Details](#design-details) |
29 |
| - - [RuntimeClass Scheduling API](#runtimeclass-scheduling-api) |
30 |
| - - [RuntimeClass Admission Controller](#runtimeclass-admission-controller) |
31 |
| - - [Labeling Nodes](#labeling-nodes) |
32 |
| - - [RuntimeClass Scheduling Graduation Criteria](#runtimeclass-scheduling-graduation-criteria) |
33 |
| - - [RuntimeClass Scheduling Alternatives](#runtimeclass-scheduling-alternatives) |
34 |
| - - [Scheduler](#scheduler) |
35 |
| - - [RuntimeController Mix-in](#runtimecontroller-mix-in) |
36 |
| - - [RuntimeController](#runtimecontroller) |
37 |
| - - [Mix-in](#mix-in) |
38 |
| - - [NodeSelector](#nodeselector) |
39 |
| - - [Native RuntimeClass Reporting](#native-runtimeclass-reporting) |
40 |
| - - [Scheduling Policy](#scheduling-policy) |
| 20 | + - [RuntimeClass Scheduling Motivation](#runtimeclass-scheduling-motivation) |
| 21 | + - [RuntimeClass Scheduling Goals](#runtimeclass-scheduling-goals) |
| 22 | + - [RuntimeClass Scheduling Non-Goals](#runtimeclass-scheduling-non-goals) |
| 23 | + - [RuntimeClass Scheduling Proposal](#runtimeclass-scheduling-proposal) |
| 24 | + - [RuntimeClass Scheduling User Stories](#runtimeclass-scheduling-user-stories) |
| 25 | + - [Windows](#windows) |
| 26 | + - [Sandboxed Nodes](#sandboxed-nodes) |
| 27 | + - [Design Details](#design-details) |
| 28 | + - [RuntimeClass Scheduling API](#runtimeclass-scheduling-api) |
| 29 | + - [RuntimeClass Admission Controller](#runtimeclass-admission-controller) |
| 30 | + - [Labeling Nodes](#labeling-nodes) |
| 31 | + - [RuntimeClass Scheduling Graduation Criteria](#runtimeclass-scheduling-graduation-criteria) |
| 32 | + - [RuntimeClass Scheduling Alternatives](#runtimeclass-scheduling-alternatives) |
| 33 | + - [Scheduler](#scheduler) |
| 34 | + - [RuntimeController Mix-in](#runtimecontroller-mix-in) |
| 35 | + - [RuntimeController](#runtimecontroller) |
| 36 | + - [Mix-in](#mix-in) |
| 37 | + - [NodeSelector](#nodeselector) |
| 38 | + - [Native RuntimeClass Reporting](#native-runtimeclass-reporting) |
| 39 | + - [Scheduling Policy](#scheduling-policy) |
41 | 40 | - [Graduation Criteria](#graduation-criteria)
|
42 | 41 | - [Implementation History](#implementation-history)
|
43 | 42 | - [Appendix](#appendix)
|
44 |
| - - [Proposed Future Enhancements](#proposed-future-enhancements) |
45 |
| - - [Examples of runtime variation](#examples-of-runtime-variation) |
46 |
| - |
47 |
| -<!-- /TOC --> |
| 43 | + - [Proposed Future Enhancements](#proposed-future-enhancements) |
| 44 | + - [Examples of runtime variation](#examples-of-runtime-variation) |
| 45 | +<!-- /toc --> |
48 | 46 |
|
49 | 47 | ## Summary
|
50 | 48 |
|
@@ -343,7 +341,7 @@ or "conformant" RuntimeClasses.
|
343 | 341 | **Non-portability.** We are already in a world of non-portability for many features (see [examples
|
344 | 342 | of runtime variation](#examples-of-runtime-variation). Future improvements to RuntimeClass can help
|
345 | 343 | address this issue by formally declaring supported features, or matching the runtime that supports a
|
346 |
| -given workload |
| 344 | +given workload |
347 | 345 | mitaclly. Another issue is that pods need to refer to a RuntimeClass by name,
|
348 | 346 | which may not be defined in every cluster. This is something that can be addressed through
|
349 | 347 | pre-defined runtime classes (see previous risk), and/or by "fitting" pod requirements to compatible
|
|
0 commit comments