k3s/pkg/kubelet
k8s-merge-robot 75b49f591a Merge pull request #23948 from derekwaynecarr/memory_available
Automatic merge from submit-queue

Add memory available to summary stats provider

To support out of resource killing when low on memory, we want to let operators specify eviction thresholds based on available memory instead of memory usage for ease of use when working with heterogeneous nodes.  

So for example, a valid eviction threshold would be the following: 
* If node.memory.available < 200Mi for 30s, then evict pod(s)

For the node, `memory.availableBytes` is always known since the `memory.limit_in_bytes` is always known for root cgroup.  For individual containers in pods, we only populate the `availableBytes` if the container was launched with a memory limit specified.  When no memory limit is specified, the cgroupfs sets a value of 1 << 63 in the `memory.limit_in_bytes` so we look for a similar max value to handle unbounded limits, and ignore setting `memory.availableBytes`.

FYI @vishh @timstclair - as discussed on Slack.

/cc @kubernetes/sig-node @kubernetes/rh-cluster-infra
2016-04-17 06:32:36 -07:00
..
api/v1alpha1/stats Merge pull request #23948 from derekwaynecarr/memory_available 2016-04-17 06:32:36 -07:00
cadvisor Update cadvisor linux module to work with the cadvisor v0.22.2 2016-03-15 16:02:05 -07:00
client Move restclient to its own package 2016-02-29 12:05:13 -08:00
cm Fixing several (but not all) go vet errors. Most are around string formatting, or unreachable code. 2016-03-22 17:26:50 -07:00
config kubelet: send all recevied pods in one update 2016-03-17 14:24:35 -07:00
container rkt: Fix hostnetwork. 2016-04-14 18:44:09 -07:00
custommetrics
dockertools Merge pull request #24384 from Random-Liu/disable-version-cache 2016-04-17 04:48:07 -07:00
envvars
leaky
lifecycle rkt: Add pre-stop lifecycle hooks for rkt. 2016-04-12 13:10:51 -07:00
metrics
network Merge pull request #23940 from freehan/netinterface 2016-04-17 01:12:51 -07:00
pleg Fixing several (but not all) go vet errors. Most are around string formatting, or unreachable code. 2016-03-22 17:26:50 -07:00
pod Move test-only files to test-only packages 2016-03-01 09:11:32 -08:00
prober Fixing all the "composite literal uses unkeyed fields" Vet errors. 2016-03-25 15:25:09 -07:00
qos
rkt Merge pull request #24301 from yifan-gu/host_net 2016-04-15 13:59:27 -07:00
server Merge pull request #23948 from derekwaynecarr/memory_available 2016-04-17 06:32:36 -07:00
status Fixing all the "composite literal uses unkeyed fields" Vet errors. 2016-03-25 15:25:09 -07:00
types Make kubelet use an arch-specific pause image depending on GOARCH 2016-03-25 23:45:59 +02:00
util Refactor version cache into kubelet util 2016-04-13 00:42:22 -04:00
OWNERS Move blunderbuss assignees into tree 2016-03-02 20:46:32 -05:00
container_bridge.go Improve go report card by fixing typos in comments 2016-03-04 18:30:59 -08:00
disk_manager.go
disk_manager_test.go Move test-only files to test-only packages 2016-03-01 09:11:32 -08:00
doc.go
flannel_helper.go
image_manager.go
image_manager_test.go Fixing all the "composite literal uses unkeyed fields" Vet errors. 2016-03-25 15:25:09 -07:00
kubelet.go Merge pull request #24302 from therc/patch-1 2016-04-16 00:00:29 -07:00
kubelet_test.go Add unit test for generateAPIPodStatus 2016-04-12 16:37:26 -07:00
networks.go
oom_watcher.go
oom_watcher_test.go Move test-only files to test-only packages 2016-03-01 09:11:32 -08:00
pod_workers.go
pod_workers_test.go Move test-only files to test-only packages 2016-03-01 09:11:32 -08:00
reason_cache.go
reason_cache_test.go
root_context_linux.go
root_context_unsupported.go
runonce.go
runonce_test.go move predicates into library (address #12744) 2016-04-11 00:57:03 +08:00
runtime.go Add Status in runtime interface and use it for runtime health check. 2016-03-04 21:26:41 -08:00
util.go
volume_manager.go
volumes.go Merge pull request #23122 from screeley44/volmount_errors 2016-04-13 14:20:51 -07:00