kubernetes/pkg
Kubernetes Submit Queue f9ccee7714 Merge pull request #42435 from dashpole/timestamps_for_fsstats
Automatic merge from submit-queue (batch tested with PRs 42369, 42375, 42397, 42435, 42455)

[Bug Fix]: Avoid evicting more pods than necessary by adding Timestamps for fsstats and ignoring stale stats

Continuation of #33121.  Credit for most of this goes to @sjenning.  I added volume fs timestamps.

**why is this a bug** 
This PR attempts to fix part of https://github.com/kubernetes/kubernetes/issues/31362 which results in multiple pods getting evicted unnecessarily whenever the node runs into resource pressure. This PR reduces the chances of such disruptions by avoiding reacting to old/stale metrics.
Without this PR, kubernetes nodes under resource pressure will cause unnecessary disruptions to user workloads. 
This PR will also help deflake a node e2e test suite.

The eviction manager currently avoids evicting pods if metrics are old.  However, timestamp data is not available for filesystem data, and this causes lots of extra evictions.
See the [inode eviction test flakes](https://k8s-testgrid.appspot.com/google-node#kubelet-flaky-gce-e2e) for examples.
This should probably be treated as a bugfix, as it should help mitigate extra evictions.

cc: @kubernetes/sig-storage-pr-reviews  @kubernetes/sig-node-pr-reviews @vishh @derekwaynecarr @sjenning
2017-03-03 23:21:48 -08:00
..
api Merge pull request #42310 from liggitt/init-container-default 2017-03-03 18:08:45 -08:00
apimachinery/tests API 2017-02-28 23:05:40 -08:00
apis Merge pull request #38924 from vladimirvivien/scaleio-k8s 2017-03-03 18:08:40 -08:00
auth Update authn/authz owners and reviewers 2017-01-27 08:55:44 -05:00
bootstrap/api kubeadm: Implement the kubeadm token command fully and move it out of the experimental subsection 2017-02-27 12:56:03 +02:00
capabilities Fix comment for method SetForTests 2017-02-14 17:16:49 +08:00
client Merge pull request #41984 from enisoc/controller-ref-rc-rs 2017-03-02 10:51:05 -08:00
cloudprovider Merge pull request #41306 from gnufied/implement-interface-bulk-volume-poll 2017-03-03 10:54:38 -08:00
controller Merge pull request #41306 from gnufied/implement-interface-bulk-volume-poll 2017-03-03 10:54:38 -08:00
conversion Revert "Remove conversion package" 2017-01-22 15:41:06 -08:00
credentialprovider Merge pull request #40142 from colemickens/colemickens-acr-login-server 2017-01-25 00:40:02 -08:00
features Map nvidia devices one to one. 2017-02-28 13:42:08 -08:00
fieldpath Merge pull request #34533 from yuexiao-wang/fix-commends 2017-01-30 09:05:22 -08:00
fields move pkg/fields to apimachinery 2017-01-19 09:50:16 -05:00
generated Merge pull request #38924 from vladimirvivien/scaleio-k8s 2017-03-03 18:08:40 -08:00
hyperkube Enable auto-generating sources rules 2017-01-05 14:14:13 -08:00
kubeapiserver tweak defaults for recommended apiserver options 2017-02-27 07:47:19 -05:00
kubectl Merge pull request #42369 from smarterclayton/get_warning 2017-03-03 23:12:38 -08:00
kubelet Merge pull request #42435 from dashpole/timestamps_for_fsstats 2017-03-03 23:21:48 -08:00
kubemark improve gpu integration 2017-02-28 11:27:53 -08:00
labels add back just enough empty packages to allow heapster cycles to succeed 2017-01-17 08:07:30 -05:00
master Regenerate everything 2017-03-02 08:56:26 +01:00
metrics Update to use proxy subresource consistently 2017-02-13 22:05:00 -05:00
printers Merge pull request #38924 from vladimirvivien/scaleio-k8s 2017-03-03 18:08:40 -08:00
probe Add support for attacher/detacher interface in Flex volume 2017-02-24 20:18:06 -05:00
proxy Merge pull request #42165 from wojtek-t/fix_kubeproxy_initial_bug 2017-03-02 03:20:27 -08:00
quota Regenerate everything 2017-03-02 10:23:58 +01:00
registry Regenerate everything 2017-03-02 08:56:26 +01:00
routes Update to use proxy subresource consistently 2017-02-13 22:05:00 -05:00
runtime add back just enough empty packages to allow heapster cycles to succeed 2017-01-17 08:07:30 -05:00
security Addition of ScaleIO Kubernetes Volume Plugin 2017-03-03 15:47:19 -05:00
securitycontext securitycontext: move docker-specific logic into kubelet/dockertools 2017-01-27 12:25:46 -08:00
serviceaccount Move Private Key parsing to k8s.io/client-go/util/cert 2017-02-03 17:41:34 -08:00
ssh use apimachinery packages instead of client-go packages 2017-01-13 14:04:54 -05:00
types add back just enough empty packages to allow heapster cycles to succeed 2017-01-17 08:07:30 -05:00
util Merge pull request #41618 from JiangtianLi/k8swin 2017-03-01 07:48:16 -08:00
version genericapiserver: cut off kube pkg/version dependency 2017-01-17 12:34:05 +01:00
volume Merge pull request #42435 from dashpole/timestamps_for_fsstats 2017-03-03 23:21:48 -08:00
watch add back just enough empty packages to allow heapster cycles to succeed 2017-01-17 08:07:30 -05:00
BUILD Regenerate everything 2017-03-02 08:56:26 +01:00
OWNERS Updated top level owners file to match new format 2017-01-19 11:29:16 -08:00