Commit Graph

84387 Commits

Author SHA1 Message Date
ZP-AlwaysWin
f812530e42 Remove unnecessary judgment 2019-11-12 09:31:42 +08:00
Kubernetes Prow Robot
f9acca889c
Merge pull request #84043 from wojtek-t/tweak_serialize_object_once
Don't use CachingObject if the number of watchers is small
2019-10-17 19:51:22 -07:00
Kubernetes Prow Robot
89efc6cf1b
Merge pull request #84019 from flands/82954
Update release notes for 1.14.8 to reflect AWS bugfix
2019-10-17 19:51:07 -07:00
Kubernetes Prow Robot
9bf2ba7369
Merge pull request #84015 from ahg-g/ahg-filters
cleanup unnecessary func parameters in genericScheduler methods
2019-10-17 19:50:56 -07:00
Kubernetes Prow Robot
91050062f9
Merge pull request #83894 from notpad/feature/migration_nodevolumelimit
[migration phase 1] CSIMaxVolumeLimitChecker as filter plugin
2019-10-17 19:50:41 -07:00
Kubernetes Prow Robot
149f9f5dec
Merge pull request #83853 from mrbobbytables/update-cmd-kcm-owners
Prune inactive owners from cmd/kube-controller-manager/OWNERS.
2019-10-17 19:50:26 -07:00
Kubernetes Prow Robot
9430bebe47
Merge pull request #83833 from tanjunchen/refactor-test-integration-master
Refactor test/integration/master/ with metric
2019-10-17 19:50:11 -07:00
Kubernetes Prow Robot
ae474606f1
Merge pull request #83831 from yuxiaobo96/k8s-check2
Remove direct references to prometheus from transformation_testcase.go
2019-10-17 19:49:58 -07:00
Kubernetes Prow Robot
1f8b3bfd98
Merge pull request #83811 from immutableT/single-kms-mock
Use single kms-plugin mock in unit and integration tests.
2019-10-17 18:17:57 -07:00
Kubernetes Prow Robot
7ed388caa6
Merge pull request #83744 from neolit123/1.17-move-test-owners-sig-cl-gcp
test/e2e: move some tests from cluster-lifecycle to cloud-provider-gcp
2019-10-17 16:33:58 -07:00
Kubernetes Prow Robot
e129a6bc3f
Merge pull request #80004 from Miciah/prefer-to-delete-doubled-up-pods-of-a-replicaset
Prefer to delete doubled-up pods of a ReplicaSet
2019-10-17 15:09:58 -07:00
immutablet
4d24b41410 Use single kms-plugin mock in unit and integration tests. 2019-10-17 13:46:03 -07:00
Kubernetes Prow Robot
a78a403f63
Merge pull request #83580 from jackkleeman/apiserver-cert-file-reload5
Plumbing for dynamic apiserver serving certificates
2019-10-17 13:37:59 -07:00
Kubernetes Prow Robot
006378fcc1 Merge pull request #83195 from wojtek-t/watch_bookmarks_ga
Promote WatchBookmarks feature to GA
2019-10-17 11:30:38 -07:00
Sean Sullivan
37fca51d74 Relocate tableprinter tests (#84027)
* Moves TestPrintUnstructuredObject to tableprinter_test.go

* Move TestUnknownTypePrinting to correct location of tableprinter_test.go

* Removes NewTablePrinter from TestCustomTypePrinting
2019-10-17 09:52:53 -07:00
Kubernetes Prow Robot
397f8b4248
Merge pull request #84020 from BenTheElder/bentheelder-checks-types
add myself to typecheck / go-srcimporter owners, move rmmh to emeritus
2019-10-17 09:52:38 -07:00
Miciah Masters
980b6406b2 Prefer to delete doubled-up pods of a ReplicaSet
When scaling down a ReplicaSet, delete doubled up replicas first, where a
"doubled up replica" is defined as one that is on the same node as an
active replica belonging to a related ReplicaSet.  ReplicaSets are
considered "related" if they have a common controller (typically a
Deployment).

The intention of this change is to make a rolling update of a Deployment
scale down the old ReplicaSet as it scales up the new ReplicaSet by
deleting pods from the old ReplicaSet that are colocated with ready pods of
the new ReplicaSet.  This change in the behavior of rolling updates can be
combined with pod affinity rules to preserve the locality of a Deployment's
pods over rollout.

A specific scenario that benefits from this change is when a Deployment's
pods are exposed by a Service that has type "LoadBalancer" and external
traffic policy "Local".  In this scenario, the load balancer uses health
checks to determine whether it should forward traffic for the Service to a
particular node.  If the node has no local endpoints for the Service, the
health check will fail for that node.  Eventually, the load balancer will
stop forwarding traffic to that node.  In the meantime, the service proxy
drops traffic for that Service.  Thus, in order to reduce risk of dropping
traffic during a rolling update, it is desirable preserve node locality of
endpoints.

* pkg/controller/controller_utils.go (ActivePodsWithRanks): New type to
sort pods using a given ranking.
* pkg/controller/controller_utils_test.go (TestSortingActivePodsWithRanks):
New test for ActivePodsWithRanks.
* pkg/controller/replicaset/replica_set.go
(getReplicaSetsWithSameController): New method.  Given a ReplicaSet, return
all ReplicaSets that have the same owner.
(manageReplicas): Call getIndirectlyRelatedPods, and pass its result to
getPodsToDelete.
(getIndirectlyRelatedPods): New method.  Given a ReplicaSet, return all
pods that are owned by any ReplicaSet with the same owner.
(getPodsToDelete): Add an argument for related pods.  Use related pods and
the new getPodsRankedByRelatedPodsOnSameNode function to take into account
whether a pod is doubled up when sorting pods for deletion.
(getPodsRankedByRelatedPodsOnSameNode): New function.  Return an
ActivePodsWithRanks value that wraps the given slice of pods and computes
ranks where each pod's rank is equal to the number of active related pods
that are colocated on the same node.
* pkg/controller/replicaset/replica_set_test.go (newReplicaSet): Set
OwnerReferences on the ReplicaSet.
(newPod): Set a unique UID on the pod.
(byName): New type to sort pods by name.
(TestGetReplicaSetsWithSameController): New test for
getReplicaSetsWithSameController.
(TestRelatedPodsLookup): New test for getIndirectlyRelatedPods.
(TestGetPodsToDelete): Augment the "various pod phases and conditions, diff
= len(pods)" test case to ensure that scale-down still selects doubled-up
pods if there are not enough other pods to scale down.  Add a "various pod
phases and conditions, diff = len(pods), relatedPods empty" test case to
verify that getPodsToDelete works even if related pods could not be
determined.  Add a "ready and colocated with another ready pod vs not
colocated, diff < len(pods)" test case to verify that a doubled-up pod gets
preferred for deletion.  Augment the "various pod phases and conditions,
diff < len(pods)" test case to ensure that not-ready pods are preferred
over ready but doubled-up pods.
* pkg/controller/replicaset/BUILD: Regenerate.
* test/e2e/apps/deployment.go
(testRollingUpdateDeploymentWithLocalTrafficLoadBalancer): New end-to-end
test.  Create a deployment with a rolling update strategy and affinity
rules and a load balancer with "Local" external traffic policy, and verify
that set of nodes with local endponts for the service remains unchanged
during rollouts.
(setAffinity): New helper, used by
testRollingUpdateDeploymentWithLocalTrafficLoadBalancer.
* test/e2e/framework/service/jig.go (GetEndpointNodes): Factor building the
set of node names out...
(GetEndpointNodeNames): ...into this new method.
2019-10-17 11:52:32 -04:00
Miciah Masters
865c3c5670 TestGetPodsToDelete: Use field names in test cases
* pkg/controller/replicaset/replica_set_test.go (TestGetPodsToDelete): Use
explicit field names in declarations of test cases.
2019-10-17 11:50:09 -04:00
Kubernetes Prow Robot
fef819254a
Merge pull request #83998 from draveness/feature/node-affinity-score-plugin
feat(scheduler): implement node affinity as score plugin
2019-10-17 08:24:38 -07:00
Abdullah Gharaibeh
1293facf7b cleanup unnecessary func parameters in genericScheduler methods 2019-10-17 10:31:14 -04:00
notpad
f06925b0ee [migration phase 1] CSIMaxVolumeLimitChecker as filter plugin 2019-10-17 22:04:02 +08:00
Jack Kleeman
6f89f10274 Plumb dynamic serving certificates
We create and use a dynamic certificate provider for the main apiserver
serving certificates: SNI will be handled separately later. Currently we
only use static serving certificate providers, so the files are not
reloaded, but we should be able to move to a provider that is able to
reload later on.
2019-10-17 14:37:16 +01:00
wojtekt
c5170dfb66 Tweak use of caching objects 2019-10-17 15:18:24 +02:00
Kubernetes Prow Robot
534051acec
Merge pull request #84036 from Huang-Wei/tbe-int-test-issue
Ensure TaintBasedEviction int test not rely on TaintNodeByConditions
2019-10-17 05:12:50 -07:00
Kubernetes Prow Robot
4887b0cac2
Merge pull request #84008 from notpad/fix_83985
Change node name to env value of HOSTNAME_OVERRIDE
2019-10-17 05:12:37 -07:00
Bob Killen
d314695b31
Prune inactive owners from cmd/kube-controller-manager/OWNERS. 2019-10-17 06:29:26 -04:00
Kubernetes Prow Robot
4b58ef0e14
Merge pull request #83950 from yastij/update-reset-cni
stop removing cni directories as they aren't installed by kubeadm
2019-10-17 03:19:02 -07:00
Kubernetes Prow Robot
fa99d4068b
Merge pull request #83466 from wongma7/block-reconstruct
Fix AWS block volume reconstruction to be like file
2019-10-17 03:18:51 -07:00
Kubernetes Prow Robot
2eef011c38
Merge pull request #81345 from k-toyoda-pi/fix_shellcheck_validate-cluster
Fix shellcheck failures in cluster/validate-cluster.sh
2019-10-17 03:18:38 -07:00
draveness
3d74da4d53 feat(scheduler): implement node affinity as score plugin 2019-10-17 17:02:10 +08:00
Kubernetes Prow Robot
cedacc9cae
Merge pull request #84025 from oomichi/move-CreateNginxPod
Move CreateNginxPod() to specific e2e
2019-10-17 01:47:48 -07:00
Kubernetes Prow Robot
1dc5235d0a
Merge pull request #84012 from neolit123/revert-83339-1.17-master-cert-rotation
Revert "kubeadm: enable kubelet certificate rotation on primary CP nodes"
2019-10-17 01:47:39 -07:00
Kubernetes Prow Robot
bdc3f96838
Merge pull request #83989 from wojtek-t/remove_coordination_v1beta1
Swtich nodelifecyclecontroller to coordination/v1
2019-10-17 01:47:29 -07:00
Kubernetes Prow Robot
59235ee723
Merge pull request #83976 from caseydavenport/update-calico-v3.8.3
Update Calico to v3.8.3
2019-10-17 01:47:18 -07:00
Kubernetes Prow Robot
7d243bc2a6
Merge pull request #83555 from deads2k/dynamic-cert-kube-apiserver-wiring
Dynamic cert kube apiserver wiring
2019-10-17 01:47:07 -07:00
Kubernetes Prow Robot
93586808aa
Merge pull request #83238 from shturec/fixauditretry
Sending non-blocking audit events to a webhook is retried on any error
2019-10-17 01:46:52 -07:00
Kubernetes Prow Robot
3719fcdffa
Merge pull request #82072 from draveness/feature/use-context-instead-of-channel
feat(scheduler): use context in scheduler package
2019-10-17 01:46:39 -07:00
Wei Huang
fbcc3c183a
Ensure TaintBasedEviction int test not rely on TaintNodeByConditions 2019-10-17 01:25:12 -07:00
Kubernetes Prow Robot
6a5f0e6eda
Merge pull request #81348 from yastij/code-org-service-controller
move service helpers to k8s.io/cloud-provider
2019-10-17 00:20:38 -07:00
Kubernetes Prow Robot
bc25814fb9
Merge pull request #84028 from ahg-g/ahg-hasfilter
make sure filters are executed when no predicates configured
2019-10-16 22:25:52 -07:00
Kubernetes Prow Robot
c3d8ad06a5
Merge pull request #84002 from cofyc/fix74552-cleanup
e2e: remove duplicated test specs
2019-10-16 22:25:41 -07:00
Hongwei Yu
7574f95f7d optimize comments on exported constants (#83875)
* optimize comments on exported constants

* remove package in hack/.golint_failures are passing golint
2019-10-16 22:25:30 -07:00
Kubernetes Prow Robot
9aed79b585
Merge pull request #83812 from oomichi/move-Initialized
Move Initialized() to e2e framework util
2019-10-16 22:25:21 -07:00
Kubernetes Prow Robot
ad0274fb6e
Merge pull request #82455 from AdheipSingh/patch-1
Update comment for syncHandler
2019-10-16 22:25:06 -07:00
Kubernetes Prow Robot
cae9bbd059
Merge pull request #81358 from bclau/tests/replace-redis-image
tests: Replaces Redis image with Agnhost
2019-10-16 22:24:51 -07:00
Kubernetes Prow Robot
c63ec82490
Merge pull request #75190 from deads2k/kubelet-timeout
set backup value to ensure connections against kubelets eventually close
2019-10-16 22:24:38 -07:00
Kubernetes Prow Robot
b4d3dc3718
Merge pull request #83932 from SataQiu/report-ca-expiration
kubeadm: enhance certs check-expiration to show the expiration info of related CAs
2019-10-16 20:54:51 -07:00
Kubernetes Prow Robot
eb2deb66e5
Merge pull request #78541 from deads2k/timeout
choose a more unique request timeout default
2019-10-16 20:54:38 -07:00
Abdullah Gharaibeh
17a6a7914c make sure filters are executed when no predicates configured 2019-10-16 21:27:57 -04:00
draveness
47a6c5b693 feat(scheduler): use context in the scheduler package
+ Use context instead of stopCh
+ Add context to the scheduling framework interface
2019-10-17 09:03:55 +08:00