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

Use local disk for ConfigMap volume instead of tmpfs #25306

Merged
merged 1 commit into from
May 13, 2016

Conversation

pmorie
Copy link
Member

@pmorie pmorie commented May 7, 2016

So that ConfigMap volumes are counted against pod's storage quota.

@kubernetes/sig-node
cc @derekwaynecarr @vishh

@k8s-github-robot k8s-github-robot added size/XS Denotes a PR that changes 0-9 lines, ignoring generated files. release-note-label-needed labels May 7, 2016
@roberthbailey
Copy link
Contributor

configmaps were GA in 1.2, right? So should this be marked as release-note-action-needed since it's a behavioral change to a GA API?

@thockin
Copy link
Member

thockin commented May 8, 2016

I think it is a release note, but not action required. It will change the behavior but not in any way that most users will really notice.

But @pmorie why? ConfigMap objects are already limited by API object size (1 MB today, unlikely to grow beyond O(tens) of MB). Does that memory cost and disk accounting matter? tmpfs has some really nice properties wrt performance...

@derekwaynecarr
Copy link
Member

The memory consumed is charged to the Kubelet and not the pod cgroup. If
you put a few hundred pods on the node each using multiple config maps, it
can add up. The argument for secrets is stronger than config maps. Not
doing this makes node accounting harder.

On Sunday, May 8, 2016, Kubernetes Bot notifications@github.com wrote:

GCE e2e build/test passed for commit e82195d
e82195d
.


You are receiving this because you were mentioned.
Reply to this email directly or view it on GitHub
#25306 (comment)

@thockin
Copy link
Member

thockin commented May 8, 2016

Ahh, of course. We know how to fix that, but we have to get a patch into
kernel. I forgot that this is a Google-specific behavior :(.

Can we leave a TODO here saying it probably should be tmpfs, but it needs
to be charged to the user container, when that becomes possible.
On May 8, 2016 5:11 AM, "Derek Carr" notifications@github.com wrote:

The memory consumed is charged to the Kubelet and not the pod cgroup. If
you put a few hundred pods on the node each using multiple config maps, it
can add up. The argument for secrets is stronger than config maps. Not
doing this makes node accounting harder.

On Sunday, May 8, 2016, Kubernetes Bot notifications@github.com wrote:

GCE e2e build/test passed for commit e82195d
<
e82195d

.


You are receiving this because you were mentioned.
Reply to this email directly or view it on GitHub
<
#25306 (comment)


You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub
#25306 (comment)

@vishh
Copy link
Contributor

vishh commented May 9, 2016

@thockin Should config maps be stored in tmpfs at all? Why do you think config maps demand high performance storage?

@vishh vishh added the lgtm "Looks good to me", indicates that a PR is ready to be merged. label May 9, 2016
@vishh vishh added this to the v1.3 milestone May 9, 2016
@vishh
Copy link
Contributor

vishh commented May 9, 2016

Thanks for the fix @pmorie !

@thockin
Copy link
Member

thockin commented May 9, 2016

We do work on the behalf of users. Once we get disk io limiting, we will
run into the old priority inversion problem, mitigated largely by
goroutine-per-pod.

But I argue tmpfs not for perf but for deterministic behavior.
On May 9, 2016 11:52 AM, "Vish Kannan" notifications@github.com wrote:

@thockin https://github.com/thockin Should config maps be stored in
tmpfs at all? Why do you think config maps demand high performance storage?


You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub
#25306 (comment)

@k8s-github-robot k8s-github-robot removed the lgtm "Looks good to me", indicates that a PR is ready to be merged. label May 9, 2016
@vishh vishh added lgtm "Looks good to me", indicates that a PR is ready to be merged. release-note Denotes a PR that will be considered when it comes time to generate release notes. and removed release-note-label-needed labels May 9, 2016
So that ConfigMap volumes are counted against pod's storage quota.
@pmorie pmorie force-pushed the configmap-medium branch from e82195d to 3567b1f Compare May 11, 2016 02:27
@k8s-github-robot k8s-github-robot removed the lgtm "Looks good to me", indicates that a PR is ready to be merged. label May 11, 2016
@pmorie pmorie added the lgtm "Looks good to me", indicates that a PR is ready to be merged. label May 11, 2016
@k8s-github-robot
Copy link

@k8s-bot test this [submit-queue is verifying that this PR is safe to merge]

@k8s-bot
Copy link

k8s-bot commented May 13, 2016

GCE e2e build/test passed for commit 3567b1f.

@k8s-github-robot
Copy link

Automatic merge from submit-queue

@k8s-github-robot k8s-github-robot merged commit 4591aa0 into kubernetes:master May 13, 2016
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
lgtm "Looks good to me", indicates that a PR is ready to be merged. release-note Denotes a PR that will be considered when it comes time to generate release notes. size/XS Denotes a PR that changes 0-9 lines, ignoring generated files.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

8 participants