Skip to content

Commit 35c7682

Browse files
authored
Merge pull request kubernetes#3102 from ravisantoshgudimetla/podosfield-beta
Promote PodOS field to beta
2 parents 7b683df + dfee604 commit 35c7682

File tree

3 files changed

+25
-8
lines changed

3 files changed

+25
-8
lines changed
Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,5 @@
11
kep-number: 2508
22
alpha:
33
approver: "@deads2k"
4+
beta:
5+
approver: "@deads2k"

keps/sig-windows/2802-identify-windows-pods-apiserver-admission/README.md

Lines changed: 19 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -161,8 +161,10 @@ Additionally, there may be some end-user confusion on the functional consequence
161161

162162
- Pod Security Standards will be reviewed and updated to indicate which Pod OSes they apply to
163163
- The restricted Pod Security Standard will be reviewed to see if there are OS-specific requirements that should be added
164-
- The PodSecurity admission implementation will be updated to skip checks which do not apply to the Pod's OS.
165-
- Unit and E2e tests which demostrate the PodSecurity admission plugin is behaving correctly with the new OS field.
164+
- The PodSecurity admission implementation will be updated to skip checks which do not apply to the Pod's OS
165+
- Unit and E2e tests which demostrate the PodSecurity admission plugin is behaving correctly with the new OS field
166+
167+
Pod Security Standards are to be changed in 1.25 timeframe to accommodate the supported kubelet and kube-apiserver skew.
166168

167169

168170
### Changes to Kubelet
@@ -212,7 +214,6 @@ express scheduling constraints. During the alpha, we assume there are no schedul
212214
If the feature gate is enabled there are some kubelet implications as the code to strip security constraints based on OS can be removed and we need to add
213215
admission/denying in the kubelet logic which was mentioned above. Older Kubelets without this change will continue stripping the unnecessary fields in the pod spec which is the current behavior.
214216

215-
216217
## Production Readiness Review Questionnaire
217218

218219

@@ -357,16 +358,28 @@ No
357358

358359

359360
###### How does this feature react if the API server and/or etcd is unavailable?
360-
361+
The API validation would fail if API server and/or etcd is unavailable. The pod object won't be persisted to etcd.
361362

362363
###### What are other known failure modes?
363-
364+
- Windows Pod by passing windows specific validation and linux pods by passing linux specific validation even after `IdentifyPodOS` featuregate is enabled.
365+
- Detection: Looking at `kube_pod_status_phase` metric
366+
- Mitigations: Disable the `IdentifyPodOS` featuregate
367+
- Diagnostics: Increasing the log-level of APIServer
368+
- Testing: Yes, unit tests are already in place
369+
- Both windows and linux pods are getting rejected when `IdentifyPodOS` featuregate is enabled.
370+
- Detection: Looking at `apiserver_request_total` metric
371+
- Mitigations: Disable the `IdentifyPodOS` featuregate
372+
- Diagnostics: Increasing the log-level of APIServer
373+
- Testing: Yes, unit tests are already in place
364374

365375

366376
###### What steps should be taken if SLOs are not being met to determine the problem?
377+
Disabling the `IdentifyPodOS` featuregate will help in determining the problem.
367378

368379
## Implementation History
369-
380+
- 2021-09-08: Initial KEP merged
381+
- 2021-10-29: Initial implementation PR merged
382+
- 2022-01-19: Graduate the feature to Beta proposed
370383

371384

372385
## Drawbacks

keps/sig-windows/2802-identify-windows-pods-apiserver-admission/kep.yaml

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -18,12 +18,12 @@ prr-approvers:
1818
- "@deads2k"
1919
creation-date: 2021-06-28
2020
# The target maturity stage in the current dev cycle for this KEP.
21-
stage: alpha
21+
stage: beta
2222

2323
# The most recent milestone for which work toward delivery of this KEP has been
2424
# done. This can be the current (upcoming) milestone, if it is being actively
2525
# worked on.
26-
latest-milestone: "v1.23"
26+
latest-milestone: "v1.24"
2727

2828
# The milestone at which this feature was, or is targeted to be, at each stage.
2929
milestone:
@@ -42,3 +42,5 @@ disable-supported: true
4242

4343
# The following PRR answers are required at beta release
4444
metrics:
45+
- kube_pod_status_phase
46+
- apiserver_request_total

0 commit comments

Comments
 (0)