Commit Graph

38255 Commits

Author SHA1 Message Date
s-ito-ts
e6b9a7a309 Fix golint errors in pkg/controller/garbagecollector 2020-02-20 04:46:02 +00:00
Kubernetes Prow Robot
f116308403
Merge pull request #88331 from skilxn-go/FixSchedulerTestDataRace
fix data races in scheduler unit tests
2020-02-19 16:11:56 -08:00
Kubernetes Prow Robot
224aca4e01
Merge pull request #88251 from kublr/fix/kubelet-systemd-reservation
Partially fix incorrect configuration of kubepods.slice unit by kubelet
2020-02-19 16:11:25 -08:00
Kubernetes Prow Robot
da9f47eadf
Merge pull request #88146 from gnufied/avoid-multiple-pv-delete
Prevent deletion of PVs that are already deleted
2020-02-19 12:40:48 -08:00
Tim Allclair
98ad7416fa Start deprecation process for StreamingProxyRedirects 2020-02-19 10:53:45 -08:00
skilxn-go
74718adf10 fix data races for other usage of Q 2020-02-20 00:50:13 +08:00
Ed Bartosh
882d6e93af Implement tests for multiple sizes huge pages
Co-Authored-By: Odin Ugedal <odin@ugedal.com>
2020-02-19 18:15:40 +02:00
Ed Bartosh
0eb65bd7da Implement support for multiple sizes huge pages
This implementation allows Pod to request multiple hugepage resources
of different size and mount hugepage volumes using storage medium
HugePage-<size>, e.g.

spec:
  containers:
    resources:
      requests:
        hugepages-2Mi: 2Mi
        hugepages-1Gi: 2Gi
    volumeMounts:
      - mountPath: /hugepages-2Mi
        name: hugepage-2mi
      - mountPath: /hugepages-1Gi
        name: hugepage-1gi
    ...
  volumes:
    - name: hugepage-2mi
      emptyDir:
        medium: HugePages-2Mi
    - name: hugepage-1gi
      emptyDir:
        medium: HugePages-1Gi

NOTE: This is an alpha feature.
      Feature gate HugePageStorageMediumSize must be enabled for it to work.
2020-02-19 18:15:40 +02:00
skilxn-go
7e33feec57 fix data races in scheduler unit tests 2020-02-19 22:27:40 +08:00
Kubernetes Prow Robot
da9db64f9c
Merge pull request #87978 from jsafrane/block-csi-test
Add CSI block volume directory cleanup
2020-02-19 00:34:24 -08:00
Kubernetes Prow Robot
64340bd914
Merge pull request #87906 from smarterclayton/evict_limit
kubelet: Record kubelet_evictions when limits are hit
2020-02-18 22:40:25 -08:00
Kubernetes Prow Robot
3d70825195
Merge pull request #87933 from jdef/fix/86367
Fix docker/journald logging conformance
2020-02-18 20:58:25 -08:00
Kubernetes Prow Robot
3a24c32345
Merge pull request #87980 from tnqn/endpointslicetracker
EndpointSliceTracker should track updated resource version
2020-02-18 19:10:25 -08:00
Kubernetes Prow Robot
65879f9495
Merge pull request #86097 from nan-yu/statefulset_fix
Honor the RevisionHistoryLimit in StatefulSetSpec
2020-02-18 17:16:24 -08:00
Ziheng Liu
1208bc34c4 kubemark: move a channel send out of critical section
Signed-off-by: Ziheng Liu <lzhfromustc@gmail.com>
2020-02-18 16:24:20 -05:00
Hemant Kumar
d9f7a1f311 Don't call delete for already deleted volumes 2020-02-18 15:59:47 -05:00
Clayton Coleman
af9e0be163
kubelet: Record kubelet_evictions when limits are hit
The pod, container, and emptyDir volumes can all trigger evictions
when their limits are breached. To ensure that administrators can
alert on these type of evictions, update kubelet_evictions to include
the following signal types:

* ephemeralcontainerfs.limit - container ephemeral storage breaches its limit
* ephemeralpodfs.limit - pod ephemeral storage breaches its limit
* emptydirfs.limit - pod emptyDir storage breaches its limit
2020-02-18 15:08:30 -05:00
Nan Yu
89bb7d8454 Honor the RevisionHistoryLimit in StatefulSetSpec
The StatefulSet controller cleans up ControllerRevisions at the end of
the reconcile loop. If something goes wrong during reconcile, it bails
out without actually performing this step. This commit moves the cleanup
to a deferred function call to guarantee it will be executed.

Fixes issue: https://github.com/kubernetes/kubernetes/issues/85690
2020-02-18 10:42:38 -08:00
Mateusz
d221d82eaf run permit plugins in the scheduling cycle 2020-02-18 10:04:23 -08:00
Aldo Culquicondor
c8377ef7db Add BuildArgs to interpodaffinity plugin
Signed-off-by: Aldo Culquicondor <acondor@google.com>
2020-02-18 09:55:06 -05:00
Oleg Chunikhin
b651178849 fix incorrect configuration of kubepods.slice unit by kubelet (issue #88197) 2020-02-17 13:22:45 -05:00
Kubernetes Prow Robot
ea5cef1c65
Merge pull request #87870 from tedyu/restore-proxier-updater
Use ProxierHealthUpdater directly to avoid panic
2020-02-17 10:13:29 -08:00
Jan Safranek
073d0b2340 Add getPublishDir and getVolumePluginDir
So we don't need to compute these backwards from getPublishPath and
getVolumeDevicePluginDir.
2020-02-17 10:51:39 +01:00
Kubernetes Prow Robot
48def7e7c3
Merge pull request #88105 from Huang-Wei/pts-e2e
Graduate PodTopologySpread to Beta
2020-02-16 18:59:28 -08:00
Kubernetes Prow Robot
8b2f08f39d
Merge pull request #88201 from andyzhangx/update-max-disk-count
fix: update azure disk max count
2020-02-16 01:47:28 -08:00
andyzhangx
6a773fb9c2 fix: update max azure disk max count 2020-02-16 02:46:27 +00:00
Kubernetes Prow Robot
3b22fcc7bd
Merge pull request #88189 from skilxn-go/RemovePreScoreNodeListArguments
[Scheduler Framework]Remove `FilteredNodesStatuses` argument from `PreScore`'s interface
2020-02-15 13:29:28 -08:00
Kubernetes Prow Robot
1c60045db0
Merge pull request #88173 from BenTheElder/gives-a-whole-new-pause
upgrade pause everywhere
2020-02-15 02:11:27 -08:00
Kubernetes Prow Robot
2e0cf7e4b6
Merge pull request #86557 from soltysh/fix_events
If lastTimestamp is not set use firstTimestamp when printing event
2020-02-14 23:09:28 -08:00
Kubernetes Prow Robot
3e3a3599ca
Merge pull request #87711 from alena1108/jan30volume
Ineffassign fixes for pkg/volume
2020-02-14 21:53:28 -08:00
skilxn-go
8fd0d8028f Remove FilteredNodesStatuses argument from PreScore interface 2020-02-15 13:53:04 +08:00
Kubernetes Prow Robot
954d8b13ca
Merge pull request #88171 from MikeSpreitzer/version-field-managers
Version the API Priority and Fairness FieldManager values
2020-02-14 18:57:28 -08:00
Wei Huang
c93dffdfc4
E2E tests for PodTopologySpread 2020-02-14 16:48:35 -08:00
Kubernetes Prow Robot
1a0f923a65
Merge pull request #87712 from alena1108/jan30kubelet
Ineffassign fixes for pkg/controller and kubelet
2020-02-14 14:29:27 -08:00
Kubernetes Prow Robot
bde718d100
Merge pull request #87948 from notpad/feature/pod_backoff
Remove PodBackoffMap
2020-02-14 13:11:28 -08:00
James DeFelice
0e178f9341 rename to sharedLimitWriter 2020-02-14 13:48:41 -06:00
Benjamin Elder
1631825e44 bump pause to 3.2 in kubelet 2020-02-14 11:40:15 -08:00
Mike Spreitzer
b142868eaf Version the API Priority and Fairness FieldManager values 2020-02-14 13:50:11 -05:00
andyzhangx
6068ce96b1 fix: get azure disk lun timeout issue 2020-02-14 12:51:42 +00:00
Kubernetes Prow Robot
7fe64ccb82
Merge pull request #84984 from cofyc/fix84942
apps/StatefulSets: Garbage collector should be able to orphan ControllerRevisions too
2020-02-14 01:06:18 -08:00
Kubernetes Prow Robot
ad68c4a8b5
Merge pull request #87699 from michaelbeaumont/fix_66766
kube-proxy: Only open ipv4 sockets for ipv4 clusters
2020-02-13 23:54:18 -08:00
Kubernetes Prow Robot
48434c3677
Merge pull request #87117 from aojea/proxyv6LB
kube-proxy crash when load balancers use a different IP family
2020-02-13 22:44:17 -08:00
Kubernetes Prow Robot
3273cd99b1
Merge pull request #88138 from thockin/sig-net-driver-approvers
Create an OWNERS alias for net-driver-approvers
2020-02-13 21:10:40 -08:00
Kubernetes Prow Robot
498b58eff1
Merge pull request #86982 from gnufied/add-pvc-mount-failure-events
Add events to PV when mount fails on filesystem mismatch
2020-02-13 21:10:17 -08:00
Julian V. Modesto
932500c015 Remove deprecated rolling-update command 2020-02-13 23:52:53 -05:00
Kubernetes Prow Robot
77e8c75f32
Merge pull request #87754 from MikeSpreitzer/apf-filter5
Add twice refactored filter and config consumer for API Priority and Fairness
2020-02-13 16:54:46 -08:00
notpad
a4e4a99435 Remove PodBackoffMap 2020-02-14 08:31:07 +08:00
Tim Hockin
fc5b08569f Create an OWNERS alias for net-driver-approvers 2020-02-13 14:43:45 -08:00
James DeFelice
a4230055f3 address review feedback 2020-02-13 11:44:11 -06:00
Hemant Kumar
c058073046 Add a event to PV when mount fails because of fs mismatch
Filesystem mismatch is a special event. This could indicate
either user has asked for incorrect filesystem or there is a error
from which mount operation can not recover on retry.

Co-Authored-By: Jordan Liggitt <jordan@liggitt.net>
2020-02-13 12:29:42 -05:00
Aldo Culquicondor
99bda6fac0 Remove HardPodAffinityWeight from v1alpha2
Signed-off-by: Aldo Culquicondor <acondor@google.com>
2020-02-13 11:59:56 -05:00
Aldo Culquicondor
666bc6aeb4 Scheduler: Exclude plugin config for empty policy arguments
Signed-off-by: Aldo Culquicondor <acondor@google.com>
2020-02-13 11:11:47 -05:00
Jan Safranek
0bd2e629c7 Fix unit tests 2020-02-13 12:20:03 +01:00
Jan Safranek
e2d8e575f0 Add CSI block volume directory cleanup
CSI volume plugin creates number of files/directories when processing block
volumes. These files must be cleaned when the plugin is done with the
volume, i.e. at the end on TearDownDevice().
2020-02-13 12:19:31 +01:00
Kubernetes Prow Robot
8ca96f3e07
Merge pull request #80724 from cceckman/provider-info-e2e
Provide OIDC discovery for service account token issuer
2020-02-13 01:38:35 -08:00
Maciej Borsz
c78c0e949d Remove unnecessary calls to GCE API after PD is created. 2020-02-13 09:57:25 +01:00
Kubernetes Prow Robot
177506d87c
Merge pull request #87945 from andyzhangx/azure-writeaccelerator
add azure disk WriteAccelerator support
2020-02-12 21:37:24 -08:00
Kubernetes Prow Robot
f0c14f291f
Merge pull request #87751 from skilxn-go/Rename
[Scheduler Framework] Rename `PostFilter` plugin to `PreScore`
2020-02-12 21:37:12 -08:00
Kubernetes Prow Robot
bd1042080f
Merge pull request #81678 from verb/debug-list
Add ephemeral containers to streamLocation name suggestions
2020-02-12 21:36:35 -08:00
Kubernetes Prow Robot
e92ecdd7ee
Merge pull request #88032 from davidz627/master
Change migrated-to annoation key to follow best practices by removing beta
2020-02-12 17:54:48 -08:00
Kubernetes Prow Robot
b9c57a1aa2
Merge pull request #87353 from aojea/kproxy_dual
kube-proxy: validate dual-stack cidrs
2020-02-12 17:54:35 -08:00
Kubernetes Prow Robot
f7eafa1a83
Merge pull request #86896 from yutedz/copy-into-err
Return the error from copyInto
2020-02-12 13:54:51 -08:00
David Zhu
81668cb887 Change migrated-to annoation key to follow best practices by removing beta and using 'pv' prefix 2020-02-12 10:33:08 -08:00
skilxn-go
f5b7e3cca3 Rename PostFilter plugin to PreScore 2020-02-12 23:25:08 +08:00
Lee Verberne
cc32702e8f Add ephemeral containers to streamLocation name suggestions
This combines container names into a single list because separating them
into a long, variable length string isn't particularly useful in the
context of an streaming error message.
2020-02-12 14:49:42 +01:00
Kubernetes Prow Robot
ed0d6ee3ce
Merge pull request #85617 from andrewsykim/optimize-external-ips
proxier: only get local addresses once per sync loop
2020-02-12 02:22:51 -08:00
Kubernetes Prow Robot
c4df69d241
Merge pull request #88024 from notpad/weight
Add RegisterPluginAsExtensionsWithWeight
2020-02-11 23:16:20 -08:00
Kubernetes Prow Robot
92be16ce82
Merge pull request #88014 from andyzhangx/azure-csi-migration
fix: add azure disk migration support on CSINode
2020-02-11 23:16:09 -08:00
Kubernetes Prow Robot
17a6248f76
Merge pull request #87939 from shaloulcy/pod_storage_indexer
add indexer for pod storage
2020-02-11 23:15:22 -08:00
Kubernetes Prow Robot
fd0b34d69d
Merge pull request #87911 from tedyu/rm-exp-backoff
Remove the exponential backoff in NodeGetInfo
2020-02-11 23:15:10 -08:00
Kubernetes Prow Robot
52fb02fdbe
Merge pull request #87718 from wojtek-t/kubelet_not_watching_immutable_secret_configmaps
WatchBasedManager stops  watching immutable objects
2020-02-11 23:14:33 -08:00
Charles Eckman
5a176ac772 Provide OIDC discovery endpoints
- Add handlers for service account issuer metadata.
- Add option to manually override JWKS URI.
- Add unit and integration tests.
- Add a separate ServiceAccountIssuerDiscovery feature gate.

Additional notes:
- If not explicitly overridden, the JWKS URI will be based on
  the API server's external address and port.

- The metadata server is configured with the validating key set rather
than the signing key set. This allows for key rotation because tokens
can still be validated by the keys exposed in the JWKs URL, even if the
signing key has been rotated (note this may still be a short window if
tokens have short lifetimes).

- The trust model of OIDC discovery requires that the relying party
fetch the issuer metadata via HTTPS; the trust of the issuer metadata
comes from the server presenting a TLS certificate with a trust chain
back to the from the relying party's root(s) of trust. For tests, we use
a local issuer (https://kubernetes.default.svc) for the certificate
so that workloads within the cluster can authenticate it when fetching
OIDC metadata. An API server cannot validly claim https://kubernetes.io,
but within the cluster, it is the authority for kubernetes.default.svc,
according to the in-cluster config.

Co-authored-by: Michael Taufen <mtaufen@google.com>
2020-02-11 16:23:31 -08:00
Andrew Sy Kim
1653476e3f proxier: use IPSet from k8s.io/utils/net to store local addresses
This allows the proxier to cache local addresses instead of fetching all
local addresses every time in IsLocalIP.

Signed-off-by: Andrew Sy Kim <kiman@vmware.com>
2020-02-11 16:44:34 -05:00
Andrew Sy Kim
77feb1126e userspace proxy: get local addresses only once per sync loop
This avoids fetching all local network interfaces everytime we sync an
external IP. For clusters with many external IPs this gets really
expensive. This change caches all local addresses once per sync.

Signed-off-by: Andrew Sy Kim <kiman@vmware.com>
2020-02-11 16:35:49 -05:00
Andrew Sy Kim
126bf5a231 ipvs proxier: use util proxy methods for getting local addresses
Signed-off-by: Andrew Sy Kim <kiman@vmware.com>
2020-02-11 16:35:49 -05:00
Andrew Sy Kim
313c3b81e3 iptables proxier: get local addresses only once per sync loop
This avoids fetching all local network interfaces everytime we sync an
external IP. For clusters with many external IPs this gets really
expensive. This change caches all local addresses once per sync.

Signed-off-by: Andrew Sy Kim <kiman@vmware.com>
2020-02-11 16:35:49 -05:00
notpad
89066cceb9 Add RegisterPluginAsExtensionsWithWeight 2020-02-11 23:11:53 +08:00
Kubernetes Prow Robot
574acbe310
Merge pull request #87847 from notpad/feature/slow_path
Cleanup "slow-path" logic in scheduler Filters
2020-02-11 06:46:04 -08:00
andyzhangx
9cb7f54c0b fix: add azure disk migration support for CSINode 2020-02-11 11:39:55 +00:00
Antonio Ojea
11263bb57f
kube-proxy filter Load Balancer Status ingress
kube-proxy, if is configured with an IP family, filters out the
incorrect IP version of the services.

This commit fix a bug caused by not filtering out the IPs in the
LoadBalancer Status Ingress field.
2020-02-11 10:25:59 +01:00
notpad
fb895056c6 Add test 2020-02-11 16:51:21 +08:00
Mike Spreitzer
73614ddd4e Added API Priority and Fairness filter and config consumer 2020-02-10 22:54:40 -05:00
shaloulcy
fe312ed74a add index for pod cacher
Signed-off-by: shaloulcy <lcy041536@gmail.com>
2020-02-11 09:25:27 +08:00
Ted Yu
7a0690cd59 Use ProxierHealthUpdater directly to avoid panic 2020-02-10 09:41:09 -08:00
Kubernetes Prow Robot
db9123e50e
Merge pull request #87936 from Huang-Wei/waitingPods-glitch
Refine WaitingPod interface for scheduler Permit plugin
2020-02-10 09:23:54 -08:00
notpad
a7057f8df0 Cleanup "slow-path" logic in scheduler Filters 2020-02-10 22:48:49 +08:00
Quan Tian
c2d3e54551 EndpointSliceTracker should track updated resource version
During EndpointSlice reconcilation, EndpointSliceTracker is supposed to
track expected EndpointSlice resource versions so that external changes
to them can be detected. But it actually tracked the stale resource
version and resulted in every Service was handled twice as it always
received an EndpointSlice update with a different resource version but
was actually created/updated by itself during the first processing.
2020-02-10 21:47:07 +08:00
Yecheng Fu
bb2b50f3db Garbage collector should orphan ControllerRevisions too
Signed-off-by: Yecheng Fu <fuyecheng@pingcap.com>
2020-02-10 20:58:28 +08:00
Kubernetes Prow Robot
ac97b2d65e
Merge pull request #83507 from lyft/support-resetting-cpuacct
Prevent returning invalid usageNanoCores value when cpuacct is reset in a live container
2020-02-09 08:45:53 -08:00
Kubernetes Prow Robot
652f52b51c
Merge pull request #85637 from dims/cinder-migration-flag
Flip CSIMigrationOpenStack flag to be beta and off by default
2020-02-08 21:49:52 -08:00
Kubernetes Prow Robot
abe6321296 Merge pull request #87952 from mikedanese/opts
add *Options to Create, Update, and Patch in generated clientsets
2020-02-08 20:43:53 -08:00
Kubernetes Prow Robot
d09f8b9d54
Merge pull request #79409 from takmatsu/add-phase
Modify Kubelet Pod Resources API to get only active pods
2020-02-08 16:09:52 -08:00
Kubernetes Prow Robot
a280a967a5 Merge pull request #87853 from alculquicondor/fix/options_test
Do lenient decoding only for kubescheduler.config.k8s.io/v1alpha1
2020-02-08 14:46:21 -08:00
Kubernetes Prow Robot
0c6470115e
Merge pull request #86578 from tnqn/except-validation
Validate Except of IPBlock for NetworkPolicy spec
2020-02-08 14:45:53 -08:00
Mike Danese
bfc75d9a5c manual fixes 2020-02-08 12:32:33 -05:00
Mike Danese
25651408ae generated: run refactor 2020-02-08 12:30:21 -05:00
Kubernetes Prow Robot
dde6e8e746 Merge pull request #87858 from smarterclayton/different_type
kubelet: Debug pod status output diff is wrong
2020-02-08 06:44:06 -08:00
Kubernetes Prow Robot
334d788f08 Merge pull request #87299 from mikedanese/ctx
context in client-go
2020-02-08 06:43:52 -08:00
andyzhangx
657dedc3be add azure disk WriteAccelerator support 2020-02-08 07:43:21 +00:00
Kubernetes Prow Robot
b3ba969756 Merge pull request #87913 from cheftako/master
Add code to fix kubelet/metrics memory issue.
2020-02-07 21:51:53 -08:00