Commit Graph

40526 Commits

Author SHA1 Message Date
Antonio Ojea
b276b4775f Deflake TestServiceRegistryUpdateDryRun test
The test suite was using a /24 cluster network for the allocator.
The ip allocator, if no ip is specified when creating the cluster,
picks one randomly, that means that we had 1/256 chances of
collision.

The TestServiceRegistryUpdateDryRun was creating a service without
a ClusterIP, the ip allocator assigned one random, and it was
never deleting it. The same test was checking later if one
specific IP was not allocated, not taking into consideration
that the same ip may have allocated to the first Service.

To avoid any randomness, we create the first Service with a specific
IP address.
2020-08-18 22:02:55 +02:00
Rob Scott
9180cf2346 Updating EndpointSlice controller to wait for all caches to be synced
Previously the EndpointSlice controller was not waiting for
EndpointSlices or Nodes to be synced.
2020-08-18 12:11:44 -07:00
He Jie Xu
dc52b69ddc Only lock statuses map when status isn't successful
Determine the status successful or not first, that will reduce the chance
of lock contention.
2020-08-18 22:40:15 +08:00
maelk
fc5edb8c12 Change nodeInfolist building logic in scheduler
This commit transforms the next() function of the scheduler node
tree into a listNodes() function that directly returns a list of
nodes, going through the zones in a round-robin fashion. This
removes the flawed logic of the next() function.
2020-08-18 11:35:14 +03:00
Kubernetes Prow Robot
fd74333a97 Merge pull request #93622 from knight42/test/plugin-register-timeout
Fix race condition in pluginWatcher
2020-08-17 19:03:32 -07:00
ymmt
17af029bc5 do not create StatefulSet pods when PVC is being deleted
Pod with PVC will not be scheduled if the PVC is being deleted.
This can happen when the PVC has finalizers of storage plugins.

Such a pod becomes pending.  Unfortunately, after the finalizer
finishes and PVC is deleted, the pod remains pending forever.
The StatefulSet controller does nothing for this pending pod.

This commit prevents the StatefulSet controller from creating
such pods when PVC is to be deleted.
2020-08-17 22:50:42 +00:00
Kubernetes Prow Robot
ebbbc57540 Merge pull request #93707 from jingxu97/Aug/subpath
Fix issue in evaluating symlink path for subpath
2020-08-16 08:38:17 -07:00
Jing Xu
5aa817ab43 Fix issue in evaluating symlink path for subpath
This PR tries to fix issue https://github.com/kubernetes/kubernetes/issues/93759
2020-08-14 19:39:55 -07:00
Kubernetes Prow Robot
fa1a3e0f74 Merge pull request #93665 from dims/emeritus-bgrant0607
Move bgrant0607 to emeritus status.
2020-08-14 00:48:22 -07:00
Kubernetes Prow Robot
770a59afc4 Merge pull request #93821 from dims/sign-up-dims-for-additional-review-roles
Sign up dims for additional review roles
2020-08-13 21:48:21 -07:00
knight42
de46e81e74 fix(pluginwatcher): watch socket dir before traversing it
Signed-off-by: knight42 <anonymousknight96@gmail.com>
2020-08-14 12:07:04 +08:00
Kubernetes Prow Robot
5bbc8e10f3 Merge pull request #93954 from Miciah/fix-validation-of-ingress-rules-with-wildcard-host
Fix validation of ingress rules with wildcard host
2020-08-13 15:40:21 -07:00
Kubernetes Prow Robot
3647766cbc Merge pull request #93938 from alculquicondor/revert-node-delete
Keep track of remaining pods when a node is deleted
2020-08-13 13:25:41 -07:00
Miciah Masters
e648deca3b Fix validation of ingress rules with wildcard host
Fix ingress validation so that it validates the rules of an ingress that
specifies a wildcard host.  Commit 60f4fbf4f2
added an inopportune continue statement that caused this validation to be
skipped.  For backwards compatibility, this change restores validation for
v1 of the api but still skips it on v1beta1.

* pkg/apis/networking/validation/validation.go (IngressValidationOptions):
Add AllowInvalidWildcardHostRule field to indicate that validation of rules
should be skipped for ingresses that specify wildcard hosts.
(ValidateIngressCreate): Set AllowInvalidWildcardHostRule to true if the
request is using the v1beta1 API version.
(ValidateIngressUpdate): Set AllowInvalidWildcardHostRule to true if the
request or old ingress is using the v1beta1 API version.
(validateIngressRules): Don't skip validation of the ingress rules unless
the ingress has a wildcard host and AllowInvalidWildcardHostRule is true.
(allowInvalidWildcardHostRule): New helper for ValidateIngressCreate and
ValidateIngressUpdate.
* pkg/apis/networking/validation/validation_test.go
(TestValidateIngressCreate, TestValidateIngressUpdate): Add test cases to
ensure that validation is performed on v1 objects and skipped on v1beta
objects for backwards compatibility.
(TestValidateIngressTLS): Specify PathType so that the test passes.

Co-authored-by: jordan@liggitt.net
2020-08-13 15:53:17 -04:00
Aldo Culquicondor
dfe9e413d9 Keep track of remaining pods when a node is deleted.
The apiserver is expected to send pod deletion events that might arrive at a different time. However, sometimes a node could be recreated without its pods being deleted.

Partial revert of https://github.com/kubernetes/kubernetes/pull/86964

Signed-off-by: Aldo Culquicondor <acondor@google.com>
Change-Id: I51f683e5f05689b711c81ebff34e7118b5337571
2020-08-13 14:24:01 -04:00
Aldo Culquicondor
16d7ecfa45 Remove direct accesses to cache's node map
Signed-off-by: Aldo Culquicondor <acondor@google.com>
Change-Id: Iebb22fc816926aaa1ddd1e4b2e52f335a275ffaa
Signed-off-by: Aldo Culquicondor <acondor@google.com>
2020-08-13 14:22:06 -04:00
Miciah Masters
7ef8fa7207 Verify that an ingress with empty TLS is valid
Add a test that verifies that an ingress with an empty TLS value or with a
TLS value that specifies an empty list of hosts passes validation.

* pkg/apis/networking/validation/validation_test.go
(TestValidateEmptyIngressTLS): New test.
2020-08-13 11:55:18 -04:00
Kubernetes Prow Robot
b1b93e3013 Merge pull request #93908 from robscott/endpointslice-err-return
Updating EndpointSlice controllers to return if error encountered
2020-08-12 21:26:14 -07:00
lixiaobing1
7920de5b57 remove some notes about scheduler/algorithm 2020-08-13 10:01:54 +08:00
ESWZY
9ce4dfe6d2 Add test for pkg/kubelet/util/util_windows_test.go#GetAddressAndDialer 2020-08-13 01:17:00 +08:00
Rob Scott
4cfe4403b4 Updating EndpointSlice controllers to return if error encountered
Previously the controllers would proceed with additional creates,
updates, or deletes if 1 failed. That could potentially result in
scenarios where an EndpointSlice create or update failing while a delete
worked. This updates the logic so that removals will not happen if
additions fail.
2020-08-12 09:58:03 -07:00
SataQiu
ad1739f8bc kubelet: assume that swap is disabled when /proc/swaps does not exist 2020-08-12 22:43:58 +08:00
Jordan Liggitt
f87a846e65 Validate ingress TLS secretName in v1 2020-08-12 10:13:08 -04:00
zhouya0
a1c3ebdffc Seperate registry and feature gates 2020-08-12 09:06:21 +08:00
Kubernetes Prow Robot
4750523bac Merge pull request #93893 from alculquicondor/fix-scheduler-test
Sync cache before starting scheduler test
2020-08-11 15:31:46 -07:00
Aldo Culquicondor
1978866474 Improve running time of TestSchedulerWithVolumeBinding
Only wait for finished binding or error, but not both

Signed-off-by: Aldo Culquicondor <acondor@google.com>
Change-Id: I13d16e6c7c45c6527591aa05cc79fc5e96d47a68
2020-08-11 17:31:29 -04:00
Kubernetes Prow Robot
343817ef93 Merge pull request #93831 from cofyc/fix93830
scheduler: forget the pod when the reserve plugins fail
2020-08-11 12:36:17 -07:00
Aldo Culquicondor
24f817a487 Sync cache before starting scheduler test
Signed-off-by: Aldo Culquicondor <acondor@google.com>
Change-Id: I9629e1d6d510607b505b0302e23d67e0ae4a662e
2020-08-11 13:36:54 -04:00
Yecheng Fu
1176ef9c7d forget the pod when the reserve plugins fail
and move the metrics function calls before all other functions
2020-08-11 21:28:33 +08:00
yodarshafrir1
24010022ef Number of failed jobs should exceed the backoff limit and not big equal.
Remove patch in e2e test of backoff limit due to usage of NumRequeues
2020-08-11 11:06:09 +03:00
Kubernetes Prow Robot
15a3d46db1 Merge pull request #93030 from swetharepakula/endpoint-tracker
Requeue Service after Endpoint Deletion
2020-08-10 18:28:16 -07:00
Bilal Amarni
81867fd1d9 Enable completion for kubectl config delete-context
This enables shell completion for `delete-context`, which will suggest
context names, similarly to the `use-context` and `rename-context`
subcommands.
2020-08-10 16:24:36 +02:00
Nikhita Raghunath
53e87ddd15 vsphere: remove inactive members from OWNERS
As a part of cleaning up inactive members (who haven't been active since
beginning of 2019) from OWNERS files, this commit moves abrarshivani to
emeritus_approvers section.
2020-08-10 15:23:25 +05:30
He Jie Xu
75ccb90407 Fast return when no any matched anti-affinity terms
When check the incoming pod's anti-affinity rules, there is change to
return early when there is no any matched anti-affinity terms in the
whole cluster.
2020-08-10 14:53:10 +08:00
Kubernetes Prow Robot
37cda82c35 Merge pull request #93722 from liggitt/taint-evict
Do not evict pods which tolerate all NoExecute taints
2020-08-09 20:42:19 -07:00
houmin
868dd41a96 Fix an error in NodeUnschedulable plugin comment 2020-08-10 11:20:23 +08:00
Davanum Srinivas
3421199494 Sign up dims for additional review roles
Signed-off-by: Davanum Srinivas <davanum@gmail.com>
2020-08-08 19:08:38 -04:00
Kubernetes Prow Robot
ec2651cc44 Merge pull request #93790 from liggitt/ns-cleanup-op-cache
Fix namespace controller cleanup orphaning
2020-08-08 07:26:19 -07:00
Kubernetes Prow Robot
377287ad37 Merge pull request #93660 from damemi/1.19-affinity-validation
Add LabelSelector validation in Pod Affinity/AntiAffinity Filter and Score plugins
2020-08-08 03:40:19 -07:00
Jordan Liggitt
648c591fff Fix namespace controller cleanup orphaning 2020-08-07 13:26:28 -04:00
Mike Dame
012245c5b9 Add LabelSelector validation in Pod Affinity/AntiAffinity Filter and Score plugins
The lack of this validation on incoming pods causes unpredictable cluster outcomes
when later calculating affinity results against existing pods (see #92714). This fix
quickly addresses the main source where these problems should be caught.

It is unfortunately difficult to add this validation directly to the API server due
to the fact that it may break migrations with existing pods that fail this check. This
is a compromise to address the current issue.
2020-08-07 12:17:40 -04:00
yodarshafrir1
ca420ddada Fix job's backoff limit for restart policy Never, rely on number of failures instead of number of NumRequeues 2020-08-07 14:22:40 +03:00
knight42
ebf60155bf test(kubelet): add a regression test to verify kubelet would not panic 2020-08-07 17:50:22 +08:00
knight42
a471843246 fix(kubelet): protect containerCleanupInfos from concurrent map writes
Signed-off-by: knight42 <anonymousknight96@gmail.com>
2020-08-07 16:55:56 +08:00
lsytj0413
16c13017a2 refactor(*): update pvc quota name typo in comment 2020-08-07 10:36:10 +08:00
Kubernetes Prow Robot
92e51c1901 Merge pull request #93717 from liggitt/deflake-nodestatus
Deflake TestUpdateNodeStatusWithLease - guard cached machineInfo
2020-08-06 16:16:19 -07:00
Kubernetes Prow Robot
f5334fad48 Merge pull request #93617 from liggitt/deflake-ds-test
Deflake TestExpectationsOnRecreate
2020-08-06 09:35:43 -07:00
ynqa
4357551ae3 add testcases for kubelet getters 2020-08-07 00:03:42 +09:00
Gireesh Punathil
fdbfbaac33 fix a typo in the comment 2020-08-06 07:57:12 +05:30
Shintaro Murakami
b7792711f5 Use v1helper.GetPersistentVolumeClass for compatibility 2020-08-06 09:26:21 +09:00