Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: cleanup pod critical pod annotations feature #79554

Conversation

@draveness
Copy link
Member

commented Jun 29, 2019

/kind cleanup
/priority important-soon
/assign @bsalamat
/sig scheduling
/sig node

What this PR does / why we need it:

Critical Pod Annotation is an experimental feature that lets Kubernetes control plane know about a pod being a critical pod by adding a specific annotation to the pod. This was added in 1.5 when K8s didn't have pod priority. Pod priority allows us to mark pods as critical with our first-class API. As a result, this feature was deprecated in 1.13. We can now remove the feature from our code base.

Which issue(s) this PR fixes:

Fixes #79548

Does this PR introduce a user-facing change?:

scheduler.alpha.kubernetes.io/critical-pod annotation is removed. Pod priority (spec.priorityClassName) should be used instead to mark pods as critical. Action required!
@draveness

This comment has been minimized.

Copy link
Member Author

commented Jun 29, 2019

@draveness

This comment has been minimized.

Copy link
Member Author

commented Jun 29, 2019

/retest

@draveness draveness force-pushed the draveness:feature/remove-critical-pod-annotation branch 2 times, most recently from d70b7b9 to 202290d Jun 29, 2019
Copy link
Contributor

left a comment

Two high level questions on the yaml from me - this code touches some parts I'm not super familiar with so going to leave the full review to someone else :)

@draveness

This comment has been minimized.

Copy link
Member Author

commented Jun 29, 2019

/retest

@draveness draveness force-pushed the draveness:feature/remove-critical-pod-annotation branch 2 times, most recently from 14d2e3c to 196f8ab Jun 29, 2019
@draveness draveness force-pushed the draveness:feature/remove-critical-pod-annotation branch from 196f8ab to 8a5b10a Jun 29, 2019
@k8s-ci-robot k8s-ci-robot added the size/XL label Jul 4, 2019
Copy link
Member

left a comment

/lgtm
/approve

Thanks, @draveness!

@@ -1820,7 +1820,6 @@ func TestInsufficientCapacityNodeDaemonLaunchesCriticalPod(t *testing.T) {
ds := newDaemonSet("critical")
ds.Spec.UpdateStrategy = *strategy
ds.Spec.Template.Spec = podSpec
setDaemonSetCritical(ds)

This comment has been minimized.

Copy link
@bsalamat

bsalamat Jul 8, 2019

Member

Yeah, I thought it was not necessary to check that non-critical daemonsets are not scheduled, but let's leave the check in.

@k8s-ci-robot k8s-ci-robot added the lgtm label Jul 8, 2019
@draveness

This comment has been minimized.

Copy link
Member Author

commented Jul 9, 2019

Kindly ping @derekwaynecarr for approval.

@spiffxp

This comment has been minimized.

Copy link
Member

commented Jul 10, 2019

/milestone v1.16

@k8s-ci-robot k8s-ci-robot added this to the v1.16 milestone Jul 10, 2019
@liggitt

This comment has been minimized.

Copy link
Member

commented Jul 10, 2019

/approve

update the release note with the specific annotation that is no longer honored (so people can easily search their manifests) and the specific field (spec.priorityClassName) and priority class they should use instead

@k8s-ci-robot

This comment has been minimized.

Copy link
Contributor

commented Jul 10, 2019

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: bsalamat, draveness, liggitt, spiffxp

The full list of commands accepted by this bot can be found here.

The pull request process is described here

Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@draveness draveness force-pushed the draveness:feature/remove-critical-pod-annotation branch from 1312db8 to b6d41ee Jul 11, 2019
@draveness

This comment has been minimized.

Copy link
Member Author

commented Jul 11, 2019

PR has been rebased, please take another look, @bsalamat @liggitt, thank you!

@bsalamat

This comment has been minimized.

Copy link
Member

commented Jul 12, 2019

/lgtm

@k8s-ci-robot k8s-ci-robot added the lgtm label Jul 12, 2019
@fejta-bot

This comment has been minimized.

Copy link

commented Jul 12, 2019

/retest
This bot automatically retries jobs that failed/flaked on approved PRs (send feedback to fejta).

Review the full test history for this PR.

Silence the bot with an /lgtm cancel or /hold comment for consistent failures.

1 similar comment
@fejta-bot

This comment has been minimized.

Copy link

commented Jul 12, 2019

/retest
This bot automatically retries jobs that failed/flaked on approved PRs (send feedback to fejta).

Review the full test history for this PR.

Silence the bot with an /lgtm cancel or /hold comment for consistent failures.

@k8s-ci-robot k8s-ci-robot merged commit 642a06e into kubernetes:master Jul 12, 2019
19 of 23 checks passed
19 of 23 checks passed
pull-kubernetes-bazel-build Job triggered.
Details
pull-kubernetes-bazel-test Job triggered.
Details
pull-kubernetes-integration Job triggered.
Details
tide Not mergeable. Job pull-kubernetes-bazel-build has not succeeded.
Details
cla/linuxfoundation draveness authorized
Details
pull-kubernetes-conformance-image-test Skipped.
pull-kubernetes-cross Skipped.
pull-kubernetes-dependencies Job succeeded.
Details
pull-kubernetes-e2e-gce Job succeeded.
Details
pull-kubernetes-e2e-gce-100-performance Job succeeded.
Details
pull-kubernetes-e2e-gce-csi-serial Skipped.
pull-kubernetes-e2e-gce-device-plugin-gpu Job succeeded.
Details
pull-kubernetes-e2e-gce-iscsi Skipped.
pull-kubernetes-e2e-gce-iscsi-serial Skipped.
pull-kubernetes-e2e-gce-storage-slow Skipped.
pull-kubernetes-godeps Skipped.
pull-kubernetes-kubemark-e2e-gce-big Job succeeded.
Details
pull-kubernetes-local-e2e Skipped.
pull-kubernetes-node-e2e Job succeeded.
Details
pull-kubernetes-node-e2e-containerd Job succeeded.
Details
pull-kubernetes-typecheck Job succeeded.
Details
pull-kubernetes-verify Job succeeded.
Details
pull-publishing-bot-validate Skipped.
adelina-t added a commit to adelina-t/aks-engine that referenced this pull request Jul 15, 2019
Commit kubernetes/kubernetes#79554 in
kubernetes/kubernetes removed the ExperimentalCriticalPodAnnotation feature
in kubernetes 1.16.

This PR aligns aks-engine with those changes, removing the feature-gate from
kube-proxy daemonset and the pod-critical annotations from any manifest that
uses it.

Fixes: Azure#1617
@bsalamat

This comment has been minimized.

Copy link
Member

commented Jul 18, 2019

We have to revert this PR, as it caused a regression for static pods: #80203. After the static pod issue is addressed, we can resubmit this PR.

@draveness

This comment has been minimized.

Copy link
Member Author

commented Jul 18, 2019

We have to revert this PR, as it caused a regression for static pods: #80203. After the static pod issue is addressed, we can resubmit this PR.

I created #80277 to revert this PR and reopened the issue #79548

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.