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

Updated PID pressure node condition. #57136

Merged
merged 1 commit into from Feb 16, 2018

Conversation

@k82cn
Member

k82cn commented Dec 13, 2017

Which issue(s) this PR fixes (optional, in fixes #<issue number>(, fixes #<issue_number>, ...) format, will close the issue(s) when PR gets merged):
part of #54313

Release note:

Updated PID pressure node condition
@BenTheElder

This comment has been minimized.

Member

BenTheElder commented Jan 7, 2018

/retest

@k82cn

This comment has been minimized.

Member

k82cn commented Jan 9, 2018

xref #43783

@k82cn

This comment has been minimized.

Member

k82cn commented Jan 9, 2018

/retest

}
}
if files, err := filepath.Glob("/proc/[0-9]*"); err == nil {

This comment has been minimized.

@dims

dims Jan 9, 2018

Member

looks like syscall.Sysinfo also reports the number of processes. want to use that?

package main

import (
    "fmt"
    "syscall"
)

func main() {
    var info syscall.Sysinfo_t
    syscall.Sysinfo(&info);
    fmt.Println("procs : ", info.Procs)
}

This comment has been minimized.

@k82cn

k82cn Jan 9, 2018

Member

That's better, let me try it :).

This comment has been minimized.

@k82cn

k82cn Jan 9, 2018

Member

it seems there's some gap between two way:

root@ubuntu-xenial:/home/ubuntu# ./main
procs :  140
procs :  120
package main

import (
	"fmt"
	"path/filepath"
	"syscall"
)

func main() {
	var info syscall.Sysinfo_t
	syscall.Sysinfo(&info)
	fmt.Println("procs : ", info.Procs)

	if files, err := filepath.Glob("/proc/[0-9]*"); err == nil {
		fmt.Println("procs : ", len(files))
	}
}

This comment has been minimized.

@k82cn

k82cn Jan 10, 2018

Member

let me ping Go community to confirm :).

Da K. Ma
Updated PID pressure node condition.
Signed-off-by: Da K. Ma <madaxa@cn.ibm.com>
@k82cn

This comment has been minimized.

Member

k82cn commented Jan 14, 2018

/retest

@k82cn k82cn changed the title from WIP: Updated PID pressure node condition. to Updated PID pressure node condition. Jan 14, 2018

@k82cn k82cn removed their assignment Jan 14, 2018

@k82cn

This comment has been minimized.

Member

k82cn commented Jan 14, 2018

After merged, I'll open another PR to taints node with PIDPressure (NoSchedule) by NodeController.

@k82cn

This comment has been minimized.

Member

k82cn commented Jan 14, 2018

@k82cn

This comment has been minimized.

Member

k82cn commented Jan 15, 2018

/retest

@k82cn

This comment has been minimized.

Member

k82cn commented Jan 15, 2018

@k82cn

This comment has been minimized.

Member

k82cn commented Jan 18, 2018

ping for comments :).

@krzyzacy

This comment has been minimized.

Member

krzyzacy commented Jan 18, 2018

/cc @yujuhong

@k8s-ci-robot k8s-ci-robot requested a review from yujuhong Jan 18, 2018

@dims dims referenced this pull request Jan 18, 2018

Merged

Set pids limit at pod level #57973

@@ -40,6 +40,8 @@ const (
SignalAllocatableMemoryAvailable Signal = "allocatableMemory.available"
// SignalAllocatableNodeFsAvailable is amount of local storage available for pod allocation
SignalAllocatableNodeFsAvailable Signal = "allocatableNodeFs.available"
// SignalPIDAvailable is amount of PID available for pod allocation
SignalPIDAvailable Signal = "pid.available"

This comment has been minimized.

@mtaufen

mtaufen Jan 18, 2018

Contributor

Would it make sense to have a node-allocatable amount of PIDs, like we do for other resources?

This comment has been minimized.

@k82cn

k82cn Jan 19, 2018

Member

hm..., used to propose this here, but I agree with @vishh 's feedback to make it PID pressure, that make it easy to use.

@k82cn

This comment has been minimized.

Member

k82cn commented Feb 9, 2018

ping :)

@dixudx

This comment has been minimized.

Member

dixudx commented Feb 12, 2018

/lgtm

@vishh

This comment has been minimized.

Member

vishh commented Feb 16, 2018

/lgtm
/approve

@BenTheElder

This comment has been minimized.

Member

BenTheElder commented Feb 16, 2018

@cjwagner why is pull-kubernetes-e2e-kubeadm-gce-canary even showing up here? I can't see any reason it should have triggered.

all: you can safely ignore this, looking into why it is showing up though...

@k82cn

This comment has been minimized.

Member

k82cn commented Feb 16, 2018

/retest

@liggitt

This comment has been minimized.

Member

liggitt commented Feb 16, 2018

/approve
for API constant under v1/api

@k8s-ci-robot

This comment has been minimized.

Contributor

k8s-ci-robot commented Feb 16, 2018

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: dixudx, k82cn, liggitt, vishh

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

@k8s-merge-robot

This comment has been minimized.

Contributor

k8s-merge-robot commented Feb 16, 2018

/test all [submit-queue is verifying that this PR is safe to merge]

@k8s-ci-robot

This comment has been minimized.

Contributor

k8s-ci-robot commented Feb 16, 2018

@k82cn: The following tests failed, say /retest to rerun them all:

Test name Commit Details Rerun command
pull-kubernetes-e2e-kubeadm-gce-canary 9a78753 link /test pull-kubernetes-e2e-kubeadm-gce-canary
pull-kubernetes-e2e-gce 9a78753 link /test pull-kubernetes-e2e-gce

Full PR test history. Your PR dashboard. Please help us cut down on flakes by linking to an open issue when you hit one in your PR.

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@k8s-merge-robot

This comment has been minimized.

Contributor

k8s-merge-robot commented Feb 16, 2018

Automatic merge from submit-queue (batch tested with PRs 57136, 59920). If you want to cherry-pick this change to another branch, please follow the instructions here.

@k8s-merge-robot k8s-merge-robot merged commit eac5bc0 into kubernetes:master Feb 16, 2018

12 of 15 checks passed

pull-kubernetes-e2e-gce Job failed.
Details
pull-kubernetes-e2e-kubeadm-gce-canary Job failed.
Details
Submit Queue Required Github CI test is not green: pull-kubernetes-e2e-gce
Details
cla/linuxfoundation k82cn authorized
Details
pull-kubernetes-bazel-build Job succeeded.
Details
pull-kubernetes-bazel-test Job succeeded.
Details
pull-kubernetes-cross Job succeeded.
Details
pull-kubernetes-e2e-gce-device-plugin-gpu Job succeeded.
Details
pull-kubernetes-e2e-gke Skipped
pull-kubernetes-e2e-gke-gci Skipped
pull-kubernetes-e2e-kops-aws Job succeeded.
Details
pull-kubernetes-kubemark-e2e-gce Job succeeded.
Details
pull-kubernetes-node-e2e Job succeeded.
Details
pull-kubernetes-unit Job succeeded.
Details
pull-kubernetes-verify Job succeeded.
Details
@cjwagner

This comment has been minimized.

Member

cjwagner commented Feb 16, 2018

@BenTheElder This is WAI as far as I can tell. This PR modifies files that have the suffixes _linux.go and _unsupported.go, both of which trigger the pull-kubernetes-e2e-kubeadm-gce-canary job based on the run_if_changed regexp.

@BenTheElder

This comment has been minimized.

Member

BenTheElder commented Feb 16, 2018

I see. I'm going to delete that job anyhow, thanks!

@k82cn k82cn deleted the k82cn:k8s_54313 branch Feb 17, 2018

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment