Commit Graph

5367 Commits

Author SHA1 Message Date
Kubernetes Prow Robot
9d8a87b5c7
Merge pull request #93442 from robscott/endpointslicemirroring-labels
Updating EndpointSliceMirroring controller to copy labels from Endpoints
2020-08-04 01:14:19 -07:00
Rob Scott
52894d7bfb
Updating EndpointSliceMirroring controller to copy labels from Endpoints
The KEP specifies that the controller will "mirror all labels from the
Endpoints resource and all endpoints and ports from the corresponding subset".
I'd missed that in my initial implementation, this should fix that.
2020-08-03 14:12:30 -07:00
Jordan Liggitt
c4c946d35d Deflake TestControllerSync 2020-08-03 11:56:14 -04:00
Jordan Liggitt
8e6a8669c0 Deflake TestExpectationsOnRecreate 2020-07-31 18:12:01 -04:00
Jordan Liggitt
1420b377e4 Add providerless tags 2020-07-30 13:48:40 -04:00
Kubernetes Prow Robot
72a62bcade
Merge pull request #92948 from cheftako/owners
Adding cheftako to pkg/controller/OWNERS
2020-07-30 05:56:30 -07:00
knight42
a3b772b442
test: deflake TestRecycleSlices test
Signed-off-by: knight42 <anonymousknight96@gmail.com>
2020-07-27 21:41:02 +08:00
Rob Scott
98b63ad3a6
Fixing memory leak in EndpointSliceMirroring EndpointSlice tracker
This mirrors an earlier fix to the EndpointSlice controller. I'll make a
follow up PR to move this component to a shared package, but that seems
beyond the scope of a bug fix PR.
2020-07-24 17:21:36 -07:00
Nikhita Raghunath
c00dae0607 Revert "Merge pull request #93156 from logicalhan/triage-api-machinery"
This reverts commit 32438cf269, reversing
changes made to bb6a6aa391.
2020-07-24 13:01:02 +05:30
Kubernetes Prow Robot
32438cf269
Merge pull request #93156 from logicalhan/triage-api-machinery
automatically assign triage labels to api-machinery tagged PRs
2020-07-21 19:52:34 -07:00
Kubernetes Prow Robot
5a529aa3a0
Merge pull request #91399 from danwinship/endpoint-ipfamily
multiple IPv6/dual-stack endpoint fixes
2020-07-20 13:31:14 -07:00
Kubernetes Prow Robot
05f6812c2d
Merge pull request #90822 from deads2k/csr-separate-signer-flags-02
allow setting different certificates for kube-controller-managed CSR signers
2020-07-18 03:10:50 -07:00
Dan Winship
e46572ef4b Improve EndpointController's handling of headless services under dual-stack
EndpointController was accidentally requiring all headless services to
be IPv4-only in clusters with IPv6DualStack enabled.

This still leaves "legacy" (ie, IPFamily-less) headless services as
always IPv4-only because the controller doesn't currently have easy
access to the information that would allow it to fix that.
(EndpointSliceController had the same problem already, and still
does.) This can be fixed, if needed, by manually setting IPFamily,
and the proposed API for 1.20 will handle this situation better.
2020-07-17 15:26:21 -04:00
Dan Winship
9023d19c57 Improve EndpointController dual-stack testing
Rewrite some of the test helpers to better support single-stack IPv4
vs single-stack IPv6 vs dual-stack IPv4 primary vs dual-stack IPv6
primary, and update TestPodToEndpointAddressForService to test some
more cases.
2020-07-17 15:26:21 -04:00
Dan Winship
9fb6e2ef55 Fix Endpoint/EndpointSlice pod change detection
The endpoint controllers responded to Pod changes by trying to figure
out if the generated endpoint resource would change, rather than just
checking if the Pod had changed, but since the set of Pod fields that
need to be checked depend on the Service and Node as well, the code
ended up only checking for a subset of the changes it should have.

In particular, EndpointSliceController ended up only looking at IPv4
Pod IPs when processing Pod update events, so when a Pod went from
having no IP to having only an IPv6 IP, EndpointSliceController would
think it hadn't changed.
2020-07-17 15:22:59 -04:00
Han Kang
9129dbc98b automatically assign triage labels to api-machinery tagged PRs
Change-Id: Ifcc8a85d190d6370423af27f6e6c4c90b8472981
2020-07-16 13:13:59 -07:00
Hemant Kumar
2ccd645d71 Remove resize map code
This code is not used anywhere
2020-07-13 08:24:10 -04:00
Kubernetes Prow Robot
67ec4b3cd7
Merge pull request #92838 from tnqn/endpointslicetrack-leak
Fix memory leak in endpointSliceTracker
2020-07-11 20:56:13 -07:00
Zhou Peng
80519cee5b [pkg/controller/certificates]: remove staled func comments
This was introduced by commit: f04ce3cfba
Since this func is simple and clear enough, just not comment it anymore.

Signed-off-by: Zhou Peng <p@ctriple.cn>
2020-07-11 17:08:28 +08:00
Kubernetes Prow Robot
0cb7e320a5
Merge pull request #92784 from pohly/generic-ephemeral-inline-volumes
generic ephemeral inline volumes
2020-07-10 15:41:46 -07:00
Kubernetes Prow Robot
4efed03276
Merge pull request #91637 from robscott/endpointslice-mirroring
Adding new EndpointSlice Mirroring Controller
2020-07-10 10:19:48 -07:00
wfender
22dafd9406 Adding cheftako to pkg/controller/OWNERS 2020-07-09 16:10:59 -07:00
Patrick Ohly
ff3e5e06a7 GenericEphemeralVolume: initial implementation
The implementation consists of
- identifying all places where VolumeSource.PersistentVolumeClaim has
  a special meaning and then ensuring that the same code path is taken
  for an ephemeral volume, with the ownership check
- adding a controller that produces the PVCs for each embedded
  VolumeSource.EphemeralVolume
- relaxing the PVC protection controller such that it removes
  the finalizer already before the pod is deleted (only
  if the GenericEphemeralVolume feature is enabled): this is
  needed to break a cycle where foreground deletion of the pod
  blocks on removing the PVC, which waits for deletion of the pod

The controller was derived from the endpointslices controller.
2020-07-09 23:29:24 +02:00
David Eads
1233a6f63e generated 2020-07-09 08:14:55 -04:00
David Eads
e88fecf26b allow setting different certificates for kube-controller-managed CSR signers 2020-07-09 08:14:55 -04:00
Kubernetes Prow Robot
55d77ade67
Merge pull request #92489 from alculquicondor/sig-storage-ownership
Add SIG storage owner aliases
2020-07-09 00:05:20 -07:00
Kubernetes Prow Robot
94a08e159a
Merge pull request #92387 from pohly/csi-storage-capacity
CSI storage capacity check
2020-07-09 00:04:59 -07:00
Kubernetes Prow Robot
c2e6e147be
Merge pull request #92160 from YuikoTakada/add_deprecated_description_scheduling_duration_seconds
Add Deprecated description to metrics scheduling_duration_seconds
2020-07-09 00:04:48 -07:00
Quan Tian
087682584d Fix memory leak in endpointSliceTracker
endpointSliceTracker creates a set of resource versions for each
service, the resource versions in the set could be deleted when
endpointslices are deleted, but the set and its key in the map is never
deleted, leading to memory leak.

This patch deletes the set if the service is deleted, and stops
initializing an empty set when "read-only" methods "Has" and "Stale" are
called.
2020-07-08 00:15:30 +08:00
Aldo Culquicondor
27ec356d76 Add SIG storage owner aliases
And give ownership to pkg/scheduler/framework/plugins/volumebinding

Signed-off-by: Aldo Culquicondor <acondor@google.com>
Change-Id: I4bd89b1745a2be0e458601056ab905bdd6692195
2020-07-07 10:26:16 -04:00
wangkai1994
b3b95f5ab5 add defer 2020-07-07 10:20:19 +08:00
Rob Scott
fa59370e93
Adding new logging, event, and metric to better capture when mirroring addresses is skipped 2020-07-06 12:43:35 -07:00
Rob Scott
e701cb0205
Enabling the EndpointSliceMirroring controller, adding related config 2020-07-06 12:43:34 -07:00
Rob Scott
8691466059
Adding EndpointSliceMirroring controller
This will mirror custom Endpoints to EndpointSlices to ensure that
applications will not need to maintain both separately.
2020-07-06 12:43:33 -07:00
Patrick Ohly
0efbbe8555 CSIStorageCapacity: check for sufficient storage in volume binder
This uses the information provided by a CSI driver deployment for
checking whether a node has access to enough storage to create the
currently unbound volumes, if the CSI driver opts into that checking
with CSIDriver.Spec.VolumeCapacity != false.

This resolves a TODO from commit 95b530366a.
2020-07-06 19:20:10 +02:00
yuanhuaiwang
8e1e1e9be2
Remove resync period for disruption controller
What type of PR is this?
/kind cleanup

What this PR does / why we need it:
The disruption controller is resyncing all ssets every 30 seconds, this is not necessary, and make the depth of disruption workqueue longer and can cause delays processing actual updates when large amounts of disruptions exist.

Special notes for your reviewer:

Does this PR introduce a user-facing change?
Disruption controllers no longer force a resync every 30 seconds when nothing has changed.
2020-07-06 20:31:28 +08:00
andyxning
2e22ef50ea code clean for podgc 2020-07-04 23:01:16 +08:00
Kubernetes Prow Robot
393f9e94e4
Merge pull request #92417 from wawa0210/ipam-staticcheck
Ipam staticcheck
2020-07-04 00:30:48 -07:00
Kubernetes Prow Robot
7f78c330c0
Merge pull request #92421 from wawa0210/deployment-staticcheck
fix pkg/controller/deployment staticcheck
2020-07-02 06:41:29 -07:00
Kubernetes Prow Robot
e37c04bd7c
Merge pull request #92684 from cofyc/volume-scheduling-cleanup
cleanup in volume scheduling
2020-07-02 04:17:38 -07:00
wawa0210
444cdc2944
fix pkg/controller/nodeipam staticcheck 2020-07-02 18:32:13 +08:00
Kubernetes Prow Robot
406671910a
Merge pull request #92415 from wawa0210/statefulset-staticcheck
fix pkg/controller/statefulset staticcheck
2020-07-01 23:12:58 -07:00
Yuiko Mori
97bca0ec59 Add Deprecated description to metrics scheduling_duration_seconds 2020-07-02 00:14:49 +00:00
Kubernetes Prow Robot
07586f67d9
Merge pull request #91311 from robscott/endpointslice-garbage-collection
Fixing race condition with EndpointSlice controller garbage collection
2020-07-01 16:22:00 -07:00
Rob Scott
3f593710a7
Ensuring EndpointSlice controller does not create EndpointSlices for Services that are being deleted.
This should ensure that the controller does not conflict with garbage collection.
2020-07-01 12:45:49 -07:00
Yecheng Fu
2cdc63aeaa cleanup in volume scheduling pkg
- remove duplicated function claimToClaimKey
- cache Lister
- don't add indexer for PVCAssumeCache
2020-07-01 15:01:10 +08:00
Kubernetes Prow Robot
180af4240c
Merge pull request #90288 from aojea/cidrsets
Add metrics to the cidr_sets used by the nodeipam range allocator
2020-06-30 19:24:06 -07:00
wawa0210
d360be0f7c
fix pkg/controller/statefulset staticcheck 2020-06-26 00:00:41 +08:00
Yecheng Fu
22d874993c build files 2020-06-23 22:18:33 +08:00
Yecheng Fu
4627b419b4 tests only 2020-06-23 22:18:33 +08:00
Yecheng Fu
ee4d7410be Share pod volume binding cache via framework.CycleState 2020-06-23 22:18:33 +08:00
wawa0210
7d8aae51df
fix pkg/controller/deployment staticcheck 2020-06-23 19:32:20 +08:00
Kubernetes Prow Robot
00d6255f44
Merge pull request #91712 from KobayashiD27/structured-logging-in-event
Migrate log to klog.InfoS for staging/src/k8s.io/client-go
2020-06-22 23:53:40 -07:00
Kobayashi Daisuke
4ecbec75a6 Run update-bazel.sh 2020-06-22 10:49:15 +09:00
fatkun
eb9bca5f06 Fixed a bug that mistake use newObj as oldObj in endpoint slice update 2020-06-21 16:43:12 +08:00
Ali Farah
cac933934b Delete unused interface 2020-06-20 20:12:46 +10:00
Kubernetes Prow Robot
9c3f648300
Merge pull request #91705 from mrkm4ntr/revert-assumed-in-unreserve
Revert assumed PVs and PVCs in unreserve extension point
2020-06-19 21:50:54 -07:00
Kubernetes Prow Robot
be31023a95
Merge pull request #87155 from kolorful/patch-3
Fix a comment in job_controller
2020-06-19 08:51:58 -07:00
Shintaro Murakami
79ab958996 Revert assumed PVs and PVCs in unreserve extension point 2020-06-19 17:39:42 +09:00
Kubernetes Prow Robot
694566d06d
Merge pull request #91915 from tnozicka/fix-ds-recreate
Fix DS expectations on recreate
2020-06-18 19:05:11 -07:00
Tomas Nozicka
5cf3f8b79c Fix DS expectations on recreate 2020-06-17 09:22:17 +02:00
Kubernetes Prow Robot
a84784cbe5
Merge pull request #91730 from tnozicka/fix-sig-apps-owners
Add sig-apps-approvers and reviewers
2020-06-16 19:22:25 -07:00
Antonio Ojea
069707f75a refactor and instrument range_allocator cidr_sets
refactor and add the following metrics to the cidr_sets used by the range
allocator:, under the subsystem: node_ipam_controller

cidrset_cidrs_allocations_total
cidrset_cidrs_releases_total
cidrset_usage_cidrs
cidrset_allocation_tries_per_request
2020-06-17 00:03:49 +02:00
Kubernetes Prow Robot
98f250f883
Merge pull request #91307 from yuga711/attach
CSI: Modify VolumeAttachment check to use Informer/Cache
2020-06-15 08:10:10 -07:00
Kobayashi Daisuke
4ae11dac2e Replace StartLogging(klog.Infof) with StartStructuredLogging(0) 2020-06-15 17:48:35 +09:00
Yecheng Fu
814a6f2acd remove FakeVolumeBinderConfig and test new statues and states 2020-06-12 10:00:19 +08:00
Yecheng Fu
c4138361e4 Fail fast in PreFilter phase and return UnschedulableAndUnresolvable if immediate PVCs are not bound 2020-06-12 10:00:19 +08:00
Jayasekhar Konduru
2a89577659 CSI: Modify VolumeAttachment check to use Informer/Cache
Change-Id: Ie70c8b6657c67eefbf13042f36d56ca84a2e42bb
2020-06-11 10:34:09 -07:00
Kubernetes Prow Robot
1f299e7b99
Merge pull request #91574 from cofyc/fix91436
share a common pod indexer among volume controllers
2020-06-10 22:42:56 -07:00
Lukasz Szaszkiewicz
50db32cf8c GC doesn't have to create monitors in the constructor 2020-06-10 14:59:45 +02:00
Kubernetes Prow Robot
11fe6e815f
Merge pull request #91713 from liggitt/csr-v1-manager
CSR v1 - switch controllers
2020-06-09 14:49:30 -07:00
Kubernetes Prow Robot
a1c351cd28
Merge pull request #91576 from tahsinrahman/migrate-klog
Migrate to log calls to klog.InfoS and klog.ErroS for pkg/controller
2020-06-09 14:48:47 -07:00
Andrew Sy Kim
41dc075a85 move pkg/controller/cloud/node_lifecycle_controller.go to k8s.io/cloud-provider/controllers/nodelifecycle for easier external consumption
Signed-off-by: Andrew Sy Kim <kim.andrewsy@gmail.com>
2020-06-08 17:34:01 -04:00
Andrew Sy Kim
6d4a19b31c move pkg/controller/cloud/node_controller.go to k8s.io/cloud-provider/controllers/node for easier external consumption
Signed-off-by: Andrew Sy Kim <kim.andrewsy@gmail.com>
2020-06-08 17:34:01 -04:00
Andrew Sy Kim
99d9dda5a7 move pkg/controller/route to k8s.io/cloud-provider/controllers/route for easier external consumption
Signed-off-by: Andrew Sy Kim <kim.andrewsy@gmail.com>
2020-06-08 17:34:01 -04:00
Andrew Sy Kim
d06cd7ee4f move pkg/controller/service to k8s.io/cloud-provider/controllers/service for easier external consumption
Signed-off-by: Andrew Sy Kim <kim.andrewsy@gmail.com>
2020-06-08 17:34:01 -04:00
Jordan Liggitt
db4ca87d9d Switch CSR approver/signer/cleaner controllers to v1 2020-06-05 18:45:34 -04:00
tahsinrahman
78318c7a26 Migrate to log calls to klog.InfoS and klog.ErroS for pkg/controller 2020-06-05 13:23:01 +08:00
KeZhang
884f94ad92 Do not swallow NotFound error for DeletePod in dsc.manage 2020-06-04 16:41:38 +08:00
Tomas Nozicka
1d3654fcbd Add sig-apps-approvers and reviewers 2020-06-03 15:00:26 +02:00
Yecheng Fu
8422044f17 sharing a common pod pvc indexer among volume controllers 2020-06-03 14:51:21 +08:00
Yecheng Fu
eaf2f54bba auto-generated files 2020-06-03 14:51:21 +08:00
Kubernetes Prow Robot
2bf8e27737
Merge pull request #91455 from cofyc/fix88229
Emit correct event when unbound delay binding claim is used by pod
2020-06-02 18:11:36 -07:00
Kubernetes Prow Robot
462742fcf6
Merge pull request #91443 from littleroad/clean_annotation
deployment: remove annotation for non-exist parameter 'podMap'
2020-06-02 18:11:24 -07:00
Kubernetes Prow Robot
99a56f6ace
Merge pull request #91604 from iobuf/review.job
[pkg/controller/job]: fix comment typo
2020-06-01 23:34:29 -07:00
Zhou Peng
bc9bff0d9e [pkg/controller/job]: fix comment typo
Signed-off-by: Zhou Peng <p@ctriple.cn>
2020-05-30 23:09:10 +08:00
Yecheng Fu
32df4300ef emit correct event when unbound delay binding claim is used by pod 2020-05-29 19:36:13 +08:00
Jordan Liggitt
7049149181 Generated files 2020-05-28 16:53:23 -04:00
Jordan Liggitt
94fd1d76ca Switch issued check to inspect certificate length 2020-05-28 12:20:40 -04:00
Jordan Liggitt
d33a19cee7 Clean failed CSRs 2020-05-28 12:20:40 -04:00
Jordan Liggitt
57eddd5e04 Record Failed condition in signer controller 2020-05-28 12:20:40 -04:00
Lu Fengqi
0d04485a52 deployment: remove annotation for non-exist parameter 'podMap'
Since the parameter 'podMap' has been removed by commit 831a2d1129
("deployment: remove unused parameter 'podMap'"), the related annotation
also should be removed.

Signed-off-by: Lu Fengqi <lufq.fnst@cn.fujitsu.com>
2020-05-26 16:49:52 +08:00
Kubernetes Prow Robot
779f875243
Merge pull request #91180 from PengJi/fix_golint_failures
fix golint errors in pkg/controller/volume/events/event
2020-05-25 06:27:12 -07:00
Kubernetes Prow Robot
d94acda5ee
Merge pull request #91296 from cofyc/fix90962-cleanup-volumescheduling
volumescheduling: update comments to reflect latest change
2020-05-20 19:42:10 -07:00
Yecheng Fu
36d1365af5 update comments in volumescheduling pkg to reflect latest change 2020-05-20 22:23:08 +08:00
Yecheng Fu
f685af32e2 SchedulerVolumeBinder: don't modify assumed pod in AssumePodVolumes 2020-05-20 21:18:43 +08:00
Kubernetes Prow Robot
fdbb960354
Merge pull request #90934 from iobuf/cronjob
CronJob: cleanup legacy ScheduledJob vars,docs
2020-05-19 20:35:11 -07:00
pengji
69999a6d54 fix golint in pkg/controller/volume/events/event.go 2020-05-17 23:34:02 +08:00
Davanum Srinivas
07d88617e5
Run hack/update-vendor.sh
Signed-off-by: Davanum Srinivas <davanum@gmail.com>
2020-05-16 07:54:33 -04:00
Davanum Srinivas
442a69c3bd
switch over k/k to use klog v2
Signed-off-by: Davanum Srinivas <davanum@gmail.com>
2020-05-16 07:54:27 -04:00
Kubernetes Prow Robot
8a9206c9b2
Merge pull request #91046 from wawa0210/remove-beta-os-label
kubelet no longer registers "beta.kubernetes.io/os" and "beta.kubernetes.io/arch" node labels to apiserver
2020-05-15 02:48:58 -07:00
wawa0210
54c0f8b677
Remove the 'beta' version of the node label (os and arch types) 2020-05-13 22:51:52 +08:00
Kubernetes Prow Robot
977aeab3e5
Merge pull request #90987 from andrewsykim/service-controller-fixup
service controller: clean up unit tests
2020-05-13 00:19:13 -07:00
Andrew Sy Kim
758c25de2f service controller: store feature gate in local fields for better testability
Signed-off-by: Andrew Sy Kim <kim.andrewsy@gmail.com>
2020-05-12 13:40:54 -04:00
Kubernetes Prow Robot
70948498bc
Merge pull request #90769 from andrewsykim/service-controller-node-sync
service controller: only sync LB node pools when relevant fields change
2020-05-12 03:30:21 -07:00
Andrew Sy Kim
b3419e0ccf service controller: remove duplicate unit test TestGetNodePredicate (Test_getNodeConditionPredicate already exists)
Signed-off-by: Andrew Sy Kim <kim.andrewsy@gmail.com>
2020-05-11 16:59:12 -04:00
Andrew Sy Kim
55292cf3b4 service controller: remove pkg/controller dep in unit tests
Signed-off-by: Andrew Sy Kim <kim.andrewsy@gmail.com>
2020-05-11 16:59:12 -04:00
Kubernetes Prow Robot
2b2cf8df30
Merge pull request #80700 from mrkm4ntr/add-error-check
Add missing error check
2020-05-11 00:37:51 -07:00
Zhou Peng
b33e202397 CronJob: cleanup legacy ScheduledJob vars,docs
Signed-off-by: Zhou Peng <p@ctriple.cn>
2020-05-10 00:45:21 +08:00
Kubernetes Prow Robot
ba3bf32300
Merge pull request #90662 from nilo19/cleanup/decouple-cloud-testutils
Remove the deps to testutils in pkg/controller/cloud.
2020-05-09 02:17:51 -07:00
Kubernetes Prow Robot
8d718b1ef5
Merge pull request #90731 from deads2k/csr-separate-signer-flags
refactor the CSR controller into distinct controllers to allow easy
2020-05-09 00:44:05 -07:00
t-qini
fd4f3c6323 Remove the deps of testutils in pkg/controller/cloud. 2020-05-09 10:23:14 +08:00
Andrew Sy Kim
80a8a8df1c service controller: only sync LB node pools when relevant fields change
Signed-off-by: Andrew Sy Kim <kim.andrewsy@gmail.com>
2020-05-08 15:45:24 -04:00
cici37
32411016cc Copy RemoveTaintOffNode logic to k8s.io/cloud-provider 2020-05-05 16:47:09 -07:00
Indeed
3117b6a084 fix case where node exists but shutdown. 2020-05-05 08:57:58 -07:00
Indeed
78ace24670 check node existence before shutdown status. 2020-05-05 08:57:58 -07:00
Indeed
84dfaace5d add test about shutdown but non-existing node. 2020-05-05 08:51:21 -07:00
David Eads
83035890ad refactor the CSR controller into distinct controllers to allow easy configuration of multiple signing keys 2020-05-05 10:18:04 -04:00
Kubernetes Prow Robot
e8d6d3768e
Merge pull request #90561 from cici37/util
Copy patchNodeStatus logic to cloud-provider
2020-05-04 13:46:43 -07:00
wccsama
c776e80109 using case name instead 2020-04-30 13:55:50 +08:00
cici37
b8bac0206d Copy patchNodeStatus logic to cloud-provider 2020-04-29 15:51:55 -07:00
wccsama
7d45e12523 use sub test in gc_controller_test.go 2020-04-29 11:12:35 +08:00
Aaron Crickenberger
81881e4a12 prune .import-restrictions
specifically:

- cmd/kubeadm/.import-restrictions
  - we don't need to explicitly allow k8s.io repos (external or published)
- rm pkg/controller/.import-restrictions
  - pkg/client/unversioned was removed in 59042
- pkg/kubectl/.import-restrictions
  - pkg/printers is no longer used
  - pkg/api was masking all of the pkg/apis prefixes
- rm staging/src/k8s.io/code-generator/cmd/lister-gen/.import-restrictions
  - noop / empty file
- test/e2e/framework/.import-restrictions
  - we don't need to explicitly allow k8s.io repos (external or published)
2020-04-28 08:41:36 -07:00
Aaron Crickenberger
f306a0dbb4 convert .import-restrictions to yaml
yaml has comments, so we can explain why we have certain rules or
certain prefixes

for those files that weren't already commented yaml, I converted them to
yaml and took a best guess at comments based on the PRs that introduced
or updated them
2020-04-28 08:41:36 -07:00
Kubernetes Prow Robot
775feed217
Merge pull request #90018 from wojtek-t/deprecate_default_conversions
Deprecate default conversions
2020-04-23 10:23:10 -07:00
Kubernetes Prow Robot
fc08288bd9
Merge pull request #89609 from gavinfish/improve-discruption
Continue label is no more needed for countHealthyPods()
2020-04-22 17:02:12 -07:00
Kubernetes Prow Robot
85ee5fdd90
Merge pull request #87743 from u2takey/master
log pod event when node not ready
2020-04-21 17:25:52 -07:00
wojtekt
3758ab62d1 Avoid unnecessary GCE API calls for IP-alias calls
This is to avoid unnecessary GCE API calls done by getInstanceByName
helper, which is iterating over all zones to find in which zone the
VM exists.
ProviderID already contains all the information - it's in the form:
gce://<VM URL> (VM URL contains project, zone, VM name).

ProviderID is propagated by Kubelet on node registration and in case
of bugs backfilled by node-controller.
2020-04-20 20:47:11 +02:00
Kubernetes Prow Robot
c70e3e93bd
Merge pull request #89845 from yuga711/pvc-pv
Added events for failures in PV/PVC processing.
2020-04-18 02:51:35 -07:00
Jayasekhar Konduru
5a4f1be19d Added events for failures in PV/PVC processing:
- PV has a dangling reference to a PVC
- PVC is trying to bind to a PV that already references a different PVC

Change-Id: Ic509d39808763149b02b4dd52347edb74a8803fd
2020-04-16 22:11:02 -07:00
Kubernetes Prow Robot
3a0417cc4b
Merge pull request #81185 from andrewsykim/service-controller-node-resync
service controller: add node event handlers for faster LB backend sync
2020-04-15 22:28:44 -07:00
Kubernetes Prow Robot
b86297c837
Merge pull request #89669 from yangkev/yangkev-make-tests-table-driven-patch
allow running cronjob controller unit tests individually by name
2020-04-15 13:14:58 -07:00
Kubernetes Prow Robot
ec79307b04
Merge pull request #90057 from ialidzhikov/fix/gcp-ccm
Fix Node initialization for GCP cloud provider
2020-04-15 11:36:24 -07:00
Kubernetes Prow Robot
28c442ee2f
Merge pull request #90126 from smarterclayton/features_default
Promote service exclusion and legacy node role to beta
2020-04-15 01:12:03 -07:00
Kubernetes Prow Robot
d0183703cb
Merge pull request #90059 from ahg-g/ahg-nodeinfo2
Cleanup obsolete NodeInfo methods
2020-04-14 17:32:04 -07:00
Kubernetes Prow Robot
344130a574
Merge pull request #89870 from gaurav1086/controller_nil_ptr_check
[Controller]: cidr nil ptr dereference
2020-04-14 14:02:17 -07:00
ialidzhikov
5c276a451d Fix Node initialization for GCP cloud provider
Signed-off-by: ialidzhikov <i.alidjikov@gmail.com>
2020-04-14 21:01:26 +03:00
Clayton Coleman
d70b31e282
Remove the legacy load balancer exclusion annotation
alpha.service-controller.kubernetes.io/exclude-balancer is now
removed, deployers should use
node.kubernetes.io/exclude-from-external-load-balancers.
2020-04-13 21:01:11 -04:00
Kubernetes Prow Robot
b17ddac4df
Merge pull request #78944 from avorima/golint_fix_job
Fix golint errors in pkg/controller/job
2020-04-12 21:57:47 -07:00
Abdullah Gharaibeh
bed9b2f23b Cleanup obsolete NodeInfo methods 2020-04-12 18:13:46 -04:00
wojtekt
f624314f91 Fix multiple conversion tests 2020-04-10 17:03:35 +02:00
leiiwang
c6c18c8fed event pod event when node not ready 2020-04-07 18:24:00 +08:00
Gaurav Singh
4cbdb7bf97 [Controller]: cidr nil ptr dereference 2020-04-05 19:03:07 -04:00
Kubernetes Prow Robot
873fe1478a
Merge pull request #89207 from wccsama/service-controller-test
clean up the awkward pattern in service_controller_test
2020-04-03 02:09:46 -07:00
wccsama
8daf9ec2d4 clean up the pattern 2020-04-02 15:04:58 +08:00
Andrew Sy Kim
e2bc3a755f
move well-known kubelet cloud provider annotations to k8s.io/cloud-provider (#88631)
* move well-known kubelet cloud provider annotations to k8s.io/cloud-provider

Signed-off-by: andrewsykim <kim.andrewsy@gmail.com>

* cloud provider: rename AnnotationProvidedIPAddr to AnnotationAlphaProvidedIPAddr to indicate alpha status

Signed-off-by: Andrew Sy Kim <kim.andrewsy@gmail.com>
2020-03-31 23:01:27 -07:00
Kevin Yang
58a21399c5 wrap table driven tests in t.Run to allow running individual tests
This makes debugging individual test cases much easier. For example:

go test -p 1 ./pkg/controller/cronjob -run TestSyncOne_Status/prev_ran_but_done,_is_time,_past_deadline -v
2020-03-30 14:58:28 -07:00
drfish
251706ceb4 Continue label is no more needed for countHealthyPods() 2020-03-28 09:57:25 +08:00
Kubernetes Prow Robot
3cf4832d09
Merge pull request #89320 from andrewsykim/node-controller-fake-client
cloud node controller: refactor tests to not depend on controller/testutils
2020-03-25 16:34:25 -07:00
Rob Scott
94e5537fa0
Lengthening initial backoff time for EndpointSlice controller
The EndpointSlice controller has the potential to manage a large number of resources that are updated frequently. Without proper backoffs in place, there is potential for it to unnecessarily overload the API Server with requests. This makes two significant changes: Increasing the base backoff from 5ms to 1s and making all syncs triggered by EndpointSlice changes delayed by at least 1 second to enable batching.
2020-03-25 11:00:00 -07:00
shibataka000
dbd0d566ed Fix bug about unintentional scale out during updating deployment.
This commit fix bug in calcPlainMetricReplicas function.
Same bug in GetResourceReplicas function was fixed in #85027.
2020-03-25 15:47:40 +09:00
Andrew Sy Kim
f34b32f5d0 cloud node controller: refactor tests to not depend on controller/testutils
Signed-off-by: Andrew Sy Kim <kim.andrewsy@gmail.com>
2020-03-24 13:36:10 -04:00
Kubernetes Prow Robot
c441a1a7dc
Merge pull request #85027 from shibataka000/fix-bug-about-unintentional-scale-out-during-updating-deployment
Fix HPA bug about unintentional scale out during updating deployment.
2020-03-24 04:50:46 -07:00
Kubernetes Prow Robot
0641e0c6d8
Merge pull request #89059 from chenkaiyue/Reconcile-NoExecute-Taint
Reconcile NoExecute Taint
2020-03-23 00:14:45 -07:00
wccsama
3c22575e66 clean up the awkward pattern in service_controller_test 2020-03-18 13:50:36 +08:00
Kubernetes Prow Robot
1827fe444e
Merge pull request #87895 from alexzimmer96/68026-lint-pkg-controller-autoscaler
Fix Golint errors in pkg/controller/podautoscaler
2020-03-17 16:19:53 -07:00
kaiyuechen
b3637c9670 Reconcile NoExecute Taint 2020-03-13 11:44:12 +08:00
Andrew Sy Kim
366dd4af44 EndpointSlice and Endpoints should treat terminating pods the same
Signed-off-by: Andrew Sy Kim <kim.andrewsy@gmail.com>
2020-03-11 13:03:18 -04:00
skilxn-go
6b8fc8dc5e Move TaintBasedEvictions feature gates to GA 2020-03-09 10:49:00 +08:00
Jordan Liggitt
d8abacba40 client-go: update expansions callers 2020-03-06 16:50:41 -05:00
Kubernetes Prow Robot
f52cbea102
Merge pull request #88910 from liggitt/metadata-context
Metadata client: plumb context
2020-03-06 13:18:04 -08:00
Kubernetes Prow Robot
ef672c1c2d
Merge pull request #88678 from verult/slow-rxm-attach
Parallelize attach operations across different nodes for volumes that allow multi-attach
2020-03-06 13:17:21 -08:00
Kubernetes Prow Robot
179fe40d06
Merge pull request #88599 from julianvmodesto/scale-ctx-opts
Add context and options to scale client
2020-03-06 13:17:08 -08:00
Jordan Liggitt
04a72d5ef9 client-go metadata: update callers 2020-03-06 11:07:54 -05:00
Christian Huffman
c6fd25d100 Updated CSIDriver references 2020-03-06 08:21:26 -05:00
Cheng Xing
ef3d66b98b Parallelize attach operations across different nodes for volumes that allow multi-attach 2020-03-05 22:22:05 -08:00
Mike Danese
76f8594378 more artisanal fixes
Most of these could have been refactored automatically but it wouldn't
have been uglier. The unsophisticated tooling left lots of unnecessary
struct -> pointer -> struct transitions.
2020-03-05 14:59:47 -08:00
Mike Danese
aaf855c1e6 deref all calls to metav1.NewDeleteOptions that are passed to clients.
This is gross but because NewDeleteOptions is used by various parts of
storage that still pass around pointers, the return type can't be
changed without significant refactoring within the apiserver. I think
this would be good to cleanup, but I want to minimize apiserver side
changes as much as possible in the client signature refactor.
2020-03-05 14:59:46 -08:00
Mike Danese
c58e69ec79 automated refactor 2020-03-05 14:59:46 -08:00
Kubernetes Prow Robot
0836b583f7
Merge pull request #85289 from serathius/remove-prometheus-controller-endpointslice
Remove prometheus references from pkg/controller/endpointslice
2020-03-05 02:58:37 -08:00
Kubernetes Prow Robot
4d19c6f2ad
Merge pull request #87537 from uthark/oatamanenko/apiversion
Fixes #87506 Add apiVersion to involvedObject
2020-03-04 02:31:47 -08:00
Kubernetes Prow Robot
9d0cbb7503
Merge pull request #88673 from jsafrane/block-feature-ga
Promote block volumes to GA
2020-03-03 12:17:12 -08:00
Kubernetes Prow Robot
62dc3ea6d1
Merge pull request #87368 from 928234269/fix_staticcheck01
fix staticcheck errors in pkg/controller/daemon.
2020-03-03 12:15:28 -08:00
Kubernetes Prow Robot
c86aec0564
Merge pull request #88745 from mborsz/slice3
Implement simple endpoint slice batching
2020-03-03 03:03:38 -08:00
Maciej Borsz
49b11b5431 Implement simple endpoint slice batching 2020-03-03 08:16:42 +01:00
Jan Safranek
3af671011a Generated API 2020-03-02 22:21:42 +01:00
Kubernetes Prow Robot
62e993ce09
Merge pull request #88401 from gongguan/volume_binder
refactor volume binder
2020-03-02 09:16:44 -08:00
Julian V. Modesto
da3c3432d8 Add context and options to scale client 2020-03-02 00:03:26 -05:00
Marek Siarkowicz
4ea52da628 Remove prometheus references from pkg/controller/endpointslice 2020-02-29 15:10:23 +01:00
Kubernetes Prow Robot
03b7f272c8
Merge pull request #88246 from munnerz/csr-signername-controllers
Update CSR controllers & kubelet to respect signerName field
2020-02-28 23:38:39 -08:00
louisgong
c6b94e4606 refactor volume binder 2020-02-29 12:03:39 +08:00
Jan Safranek
2c1b743766 Promote block volume features to GA 2020-02-28 20:48:38 +01:00
Patrick Ohly
6329b17d2f volume scheduler: introduce special string type
This makes it possible to search for the special strings more easily
(https://github.com/kubernetes/kubernetes/pull/88230#discussion_r382367043).
2020-02-28 10:09:19 +01:00
Patrick Ohly
6eb0b034ac volume scheduler: move reason strings into volume code
The scheduler doesn't really need to know in detail which reasons
rendered a node unusable for a node. All it needs from the volume
binder is a list of reasons that it then can present to the user.

This seems a bit cleaner. But the main reason for the change is that
it simplifies the checking of CSI inline volumes and perhaps later
capacity checking. Both will lead to new failure reasons, which then
can be added without changing the interface.
2020-02-28 10:09:18 +01:00
James Munnelly
d5dae04898 certificates: update controllers to understand signerName field
Signed-off-by: James Munnelly <james.munnelly@jetstack.io>
2020-02-27 15:54:31 +00:00
James Munnelly
a983356caa Add signerName field to CSR resource spec
Signed-off-by: James Munnelly <james.munnelly@jetstack.io>
2020-02-27 10:17:55 +00:00
Kubernetes Prow Robot
f3d38fcd4f
Merge pull request #88516 from boddumanohar/issues/87447
Use servicePatch methods from cloud-provider repo in service-controller
2020-02-26 19:39:44 -08:00
Kubernetes Prow Robot
55f2d91c8c
Merge pull request #88447 from taesunny/pkg/controller
Fix pkg/controller typos in some error messages, comments etc
2020-02-26 19:39:19 -08:00
Kubernetes Prow Robot
a726c9c9cb
Merge pull request #88435 from andrewsykim/ccm-clean-up
move well known cloud provider taints to k8s.io/cloud-provider/api
2020-02-26 13:33:41 -08:00
Kubernetes Prow Robot
d98975217a
Merge pull request #88525 from mborsz/bench3
Reorder conditions in FindMatchingVolume to avoid calling volumeutil.CheckNodeAffinity in trivial cases
2020-02-26 09:46:40 -08:00
taesun_lee
79680b5d9b Fix pkg/controller typos in some error messages, comments etc
- applied review results by LuisSanchez
- Co-Authored-By: Luis Sanchez <sanchezl@redhat.com>

genernal -> general
iniital -> initial
initalObjects -> initialObjects
intentionaly -> intentionally
inforer -> informer
anotother -> another
triger -> trigger
mutli -> multi
Verifyies -> Verifies
valume -> volume
unexpect -> unexpected
unfulfiled -> unfulfilled
implenets -> implements
assignement -> assignment
expectataions -> expectations
nexpected -> unexpected
boundSatsified -> boundSatisfied
externel -> external
calcuates -> calculates
workes -> workers
unitialized -> uninitialized
afater -> after
Espected -> Expected
nodeMontiorGracePeriod -> NodeMonitorGracePeriod
estimateGrracefulTermination -> estimateGracefulTermination
secondrary -> secondary
ShouldRunDaemonPodOnUnscheduableNode -> ShouldRunDaemonPodOnUnschedulableNode
rrror -> error
expectatitons -> expectations
foud -> found
epackage -> package
succesfulJobs -> successfulJobs
namesapce -> namespace
ConfigMapResynce -> ConfigMapResync
2020-02-27 00:15:33 +09:00
Maciej Borsz
7d59ea8394 Reorder conditions in FindMatchingVolume to avoid checking NodeAffinity
in trivial cases.
2020-02-26 09:20:38 +01:00
Rob Scott
6a33727632
Adding AppProtocol to Service and Endpoints Ports 2020-02-25 17:42:34 -08:00
Manohar Reddy
7b2a0a4260 update bazel 2020-02-26 06:14:19 +05:30
Manohar Reddy
08473a4949 remote patch.go and patch_test.go files 2020-02-25 20:13:43 +05:30
Manohar Reddy
1c0a78a4fd Use servicePatch methods from cloud-provider repo in service-controller 2020-02-25 16:28:37 +05:30
andrewsykim
8c633356df move well known cloud provider taints to k8s.io/cloud-provider/api
Signed-off-by: andrewsykim <kim.andrewsy@gmail.com>
2020-02-23 19:54:59 -05:00
Andrew Sy Kim
8b490dea3a service controller: add OnAdd and OnDelete node event handlers
Signed-off-by: Andrew Sy Kim <kiman@vmware.com>
2020-02-20 12:56:47 -05:00
s-ito-ts
e6b9a7a309 Fix golint errors in pkg/controller/garbagecollector 2020-02-20 04:46:02 +00: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
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
Hemant Kumar
d9f7a1f311 Don't call delete for already deleted volumes 2020-02-18 15:59:47 -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
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
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
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
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
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
Mike Danese
2637772298 some manual fixes 2020-02-07 18:17:40 -08:00
Mike Danese
3aa59f7f30 generated: run refactor 2020-02-07 18:16:47 -08:00
Kubernetes Prow Robot
8215619ba4
Merge pull request #87642 from pohly/volume-binder-testing
volume binder testing
2020-02-07 05:56:39 -08:00
Alexander Zimmermann
e0b1e9206d
Clarified comments 2020-02-07 09:09:49 +01:00
Kubernetes Prow Robot
9c1e124b15
Merge pull request #87823 from tallclair/test-tokens
Ensure testing credentials are labeled as such
2020-02-06 17:47:29 -08:00
Kubernetes Prow Robot
04e28b3674
Merge pull request #87098 from davidz627/feature/migratedRollback
Add annotation updating for migration for PVs and PVCs
2020-02-06 17:45:32 -08:00
Alexander Zimmermann
a1c837022c
Fixed Golint errors in pkg/controller/podautoscaler 2020-02-06 17:16:38 +01:00
Tim Allclair
9d3670f358 Ensure testing credentials are labeled as such 2020-02-04 10:36:05 -08:00
Kubernetes Prow Robot
fa4bc10ef1
Merge pull request #86793 from prameshj/gce-finalizer
Attach a new finalizer in GCE ILB creation.
2020-01-30 21:20:32 -08:00
Alena Prokharchyk
6c3093f970 Ineffassign fixes for pkg/controller and kubelet 2020-01-30 14:35:10 -08:00
Kubernetes Prow Robot
7164152844
Merge pull request #87664 from liggitt/revert-parallel-volume
Revert "Merge pull request #87258 from verult/slow-rxm-attach"
2020-01-29 22:12:01 -08:00
Jordan Liggitt
cd1059e3c4 Revert "Merge pull request #87258 from verult/slow-rxm-attach"
This reverts commit 15c3f1b119, reversing
changes made to 52d7614a8c.
2020-01-29 14:58:32 -05:00
Mike Danese
968adfa993 cleanup req.Context() and ResponseWrapper 2020-01-29 08:50:45 -08:00
Mike Danese
d55d6175f8 refactor 2020-01-29 08:50:45 -08:00
Patrick Ohly
a3c434510d volume binder: enable klog flags in test
When debugging the test runs it is useful to increase the log level:

go test -v ./pkg/controller/volume/scheduling -args -v 5
2020-01-29 10:37:39 +01:00
Patrick Ohly
5c8929d95e volume binder: convert to sub-tests
Using t.Run() has some advantages:
- individual sub-tests can be selected with -run
- test failures are automatically associated with
  the scenario, therefore the test name no longer
  needs to be passed around

A "run" function is used primarily to avoid large indention changes,
but also because this can be used to extend the test with additional
parameters later on.
2020-01-29 10:37:27 +01:00
Kubernetes Prow Robot
f5a008746a
Merge pull request #83526 from eloyekunle/feat/gengo-reverse-import
import-boss reverse import
2020-01-28 18:50:13 -08:00
Pavithra Ramesh
1de2327afc Attach a new finalizer in GCE ILB creation.
Add logic in service_controller to skip create/update
if finalizer from a different controller is found.

The newly added finalizer will be checked by other controllers
implementing ILB services to determine if a given service is
already being managed by service_controller.

Moved finalizer check into cloudprovider code.

added unit test to verify new finalizer.

Modified existing unit test to create a fake service so that
attach/remove finalizer step can be tested.
2020-01-28 15:02:19 -08:00
Oleg Atamanenko
427f0f9463 Add apiVersion to involvedObject 2020-01-28 09:24:08 -08:00
Elijah Oyekunle
07e3cca6d0 update existing import-restrictions files 2020-01-28 10:51:45 +01:00
David Zhu
b7817a2981 Add annotation annealing for migration for PVs and PVCs during syncVolume and syncClaim. This allows external-provisioners to pick up and delete volumes when they have been rolled up from previous kubernetes versions. 2020-01-27 16:14:53 -08:00
Cheng Xing
c6a03fa5be Parallelize attach operations across different nodes for volumes that allow multi-attach 2020-01-27 15:02:25 -08:00
Kubernetes Prow Robot
dc090f80d1
Merge pull request #87406 from haosdent/remove-algo
Remove `scheduler/algorithm/priorities` in import-restrictions
2020-01-23 11:34:24 -08:00
Kubernetes Prow Robot
c5d981583a
Merge pull request #87308 from KobayashiD27/fix-staticcheck
Fix staticcheck in pkg/controller/podgc
2020-01-23 11:34:11 -08:00
David Eads
5c2d2c5ef1 rename dynamic cert loading to be more accurate 2020-01-22 15:00:46 -05:00
David Eads
6ccfc3aecf add dynamic reloading for CSR signing controllers 2020-01-22 15:00:46 -05:00
Kubernetes Prow Robot
e4926e2d70
Merge pull request #85421 from terrytangyuan/patch-1
Fix grammar: have -> has
2020-01-22 08:40:58 -08:00
Haosdent Huang
b09e35257a Remove scheduler/algorithm/priorities in import-restrictions 2020-01-22 11:54:28 +08:00
yiyang5055
53aff819e0 fix static check failure in pkg/controller/disruption and pkg/controller/namespace/deletion 2020-01-20 09:10:46 +00:00
Sakura
203c7b4731
fix staticcheck errors in pkg/controller/daemon.
Signed-off-by: Sakura <longfei.shang@daocloud.io>
2020-01-19 21:09:05 +08:00
Kubernetes Prow Robot
073da1588a
Merge pull request #86801 from likakuli/fix_syncsts_orphanrevision
fix a bug that orphan revision cannot be adopted and statefulset cannot be synced
2020-01-19 00:07:35 -08:00
Kobayashi Daisuke
ed1381e35f Fix staticcheck in pkg/controller/podgc 2020-01-17 15:42:38 +09:00
Paul Morie
afaea605f4 Remove Brad Childs from OWNERS files 2020-01-16 15:21:34 -05:00
Jordan Liggitt
054e3846fc Use v1 subjectaccessreview API in controller-manager CSR approver 2020-01-13 15:55:52 -05:00
Kewei Ma
34fce9faee
Fix a comment in job_controller 2020-01-13 10:09:06 -06:00
Kubernetes Prow Robot
ace98e1382
Merge pull request #84433 from yamt/comment-typo
Fix a comment typo in legacyNodeRoleBehaviorFeature
2020-01-10 17:17:38 -08:00
Kubernetes Prow Robot
240782c7f7
Merge pull request #87043 from zjs/topic/propagate-providerid-errors
Ensure a provider ID is set on a node if expected
2020-01-10 14:33:50 -08:00
Zach Shepherd
2b554079af
Ensure a provider ID is set on a node if expected
A transient issue might occur that causes an error to be returned by
InstanceID(). When this is ignored, the external cloud provider taint
will be removed and neither AddCloudNode() nor UpdateCloudNode() will
try to set a provider ID in the future.

By returning the error we can ensure that the external cloud provider
taint is not removed prematurely, allowing the operation to be retried
(until the provider ID can be set).

Preserve support for external cloud providers that do not use IDs by
continuing if a NotImplemented error is returned, making a distinction
between lack of support for provider IDs and an actual error.

Introduce pair of unit tests that show a provider ID will eventually
be set if an error is returned, unless that error is a NotImplemented,
in which case the external cloud provider taint will be removed.
2020-01-10 11:00:54 -08:00
Kubernetes Prow Robot
3ccdad175a
Merge pull request #86210 from draveness/feature/remove-ga-flags
feat: remove several feature gates in 1.18
2020-01-09 13:28:50 -08:00
Kubernetes Prow Robot
1e0bfae887
Merge pull request #86871 from gosoon/master
fix log message error in nodelifecycle
2020-01-08 02:58:33 -08:00
likakuli
10864d3366 fix a bug that orphan revision cannot be adopted and sts cannot be synced 2020-01-08 17:56:41 +08:00
Kubernetes Prow Robot
f3df7a2fdb
Merge pull request #86727 from mattjmcnaughton/mattjmcnaughton/remove-recorder-PastEventf
Remove `recorder.PastEventf` method
2020-01-07 04:38:49 -08:00
tianfeiyu
fddf50cf88
fix log message error in nodelifecycle 2020-01-06 21:02:08 +08:00
Abdullah Gharaibeh
041e5b5560 addressed comments 2020-01-04 01:14:24 -05:00
Abdullah Gharaibeh
7d604c318c Break DS controller on scheduler predicates and predicate errors 2020-01-03 13:05:07 -05:00
mattjmcnaughton
92940fa80d
Remove recorder.PastEventf method
The `recorder.PastEventf` method wasn't actually working as advertised.
It was supposed to accept a timestamp, which would be used when
generating the event. However, as the
[source code](https://github.com/kubernetes/kubernetes/blob/master/staging/src/k8s.io/client-go/tools/record/event.go#L316)
shows, this `timestamp` was never actually used.

In other words, `PastEventf` is identical to `Eventf`.

We have two options: one would be to fix `PastEventf` so that it works
as advertised. The other would be to delete `PastEventf` and only
support `Eventf`.

Ultimately, I could only find one use of `PastEventf` in the code base,
so I propose we just delete `PastEventf` and convert all uses to
`Eventf`.
2019-12-30 12:00:23 -05:00
Kubernetes Prow Robot
d4ba10ec80
Merge pull request #85703 from robscott/endpointslice-controller-race-fix
Fixing Potential Race Condition in EndpointSlice Controller.
2019-12-26 17:59:52 -08:00
Rob Scott
c75787bb77
Fixing Potential Race Condition in EndpointSlice Controller.
This adds a new EndpointSlice tracker to keep track of the expected resource versions of EndpointSlices associated with each Service managed by the EndpointSlice controller. This should prevent a potential race where a syncService call could happen with an incomplete view of EndpointSlices if additions or deletions hadn't fully propagated to the cache yet. Additionally, this ensures that external changes to EndpointSlices will be handled by the EndpointSlice controller.
2019-12-26 12:15:38 -08:00
danielqsj
5bc0e26c19 unify alias of api errors under pkg and staging 2019-12-26 16:42:28 +08:00
Alvaro Aleman
18fa7bdb6e Cloud node controller: Only call once into cloud provider 2019-12-17 20:03:27 +01:00
Kubernetes Prow Robot
42fe74cd2c
Merge pull request #86142 from raz-bn/add-complete-event
Adding new job completed event
2019-12-16 23:43:58 -08:00
raz-bn
0224c48120 Job completed event added 2019-12-16 21:41:15 +00:00
Kubernetes Prow Robot
69410eca4b
Merge pull request #86256 from liggitt/testapi
Remove use of testapi package
2019-12-13 12:55:50 -08:00
Jordan Liggitt
5d5b444c4d Remove use of testapi codecs, selflink, resourcepath functions 2019-12-13 11:56:29 -05:00
Kubernetes Prow Robot
f67d3b1a7d
Merge pull request #86229 from ahg-g/ahg-ds
Remove daemonset controller's dependency on scheduler metadata
2019-12-13 00:26:54 -08:00
Kubernetes Prow Robot
ae717afc0d
Merge pull request #86140 from yutedz/rs-rm-timeout
Do not swallow timeout in manageReplicas
2019-12-12 18:33:07 -08:00
Abdullah Gharaibeh
288609ecf5 remove ds dependeny on scheduler metadata 2019-12-12 19:04:36 -05:00
Ted Yu
9cff345770 Do not swallow timeout in manageReplicas 2019-12-12 11:27:36 -08:00
draveness
dcea6ff065 fix: remove TaintNodesByCondition feature gate in daemon controller 2019-12-12 18:17:14 +08:00
Kubernetes Prow Robot
928817a26a
Merge pull request #74525 from gliush/configurable-hpa-limits
Configurable HorizontalPodAutoscaler
2019-12-11 03:18:05 -08:00
Arjun Naik
8ab226263a Adds tests
Signed-off-by: Arjun Naik <arjun@arjunnaik.in>
2019-12-10 18:09:20 +01:00
Ivan Glushkov
27ffe439b6
Adds the algorithm implementation for the Configurable HPA 2019-12-10 20:37:33 +04:00
Kubernetes Prow Robot
fcc35b0468
Merge pull request #85899 from gongguan/slim_down_lister
slim down some lister expansions
2019-12-09 07:20:17 -08:00
louisgong
7f5076d8ee slim down some lister expansions 2019-12-07 08:27:06 +08:00
Nan Yu
1fb0dd4ec5 Rename PodDisruptionsAllowed to DisruptionsAllowed in type PodDisruptionBudgetStatus 2019-12-03 14:26:35 -08:00
Kubernetes Prow Robot
41757d673e
Merge pull request #85521 from gaorong/check-return-value
check service status value returned by EnsureLoadBalancer
2019-11-25 22:51:10 -08:00
Rob Scott
4229b99203
Deep copying EndpointSlices in reconciler before modifying them. 2019-11-23 20:57:50 -08:00
Rong Gao
99603e105a check service status value returned by EnsureLoadBalancer
when service status returned by EnsureLoadBalancer is nil, return the
function directly to avoid NPE
2019-11-22 09:19:06 +08:00
Benjamin Elder
cf510ac285 fix multiple node cidr masks in providerless build 2019-11-19 09:47:45 -08:00
Yuan Tang
dd308ca576
Fix grammar: have -> has 2019-11-18 11:17:58 -05:00
Kubernetes Prow Robot
c3f8d700ac
Merge pull request #85367 from aramase/node-cidr-followup
[kube controller manager] add comments for compatibility
2019-11-15 19:09:54 -08:00
Kubernetes Prow Robot
9c26a752a9
Merge pull request #85231 from davidz627/flags
Flip CSIMigration and CSIMigrationGCE to Beta
2019-11-15 17:57:41 -08:00
Kubernetes Prow Robot
9859e73433
Merge pull request #85361 from liggitt/endpoint-label
Fix label mutation in endpoints controller
2019-11-15 16:17:49 -08:00
Anish Ramasekar
128f33b26e
add comments for compatibility 2019-11-15 15:38:06 -08:00
Jordan Liggitt
08b5c809d2 Fix label mutation in endpoints controller 2019-11-15 16:24:10 -05:00
Rob Scott
7085d692b7
Reverting managed-by-setup annotation
This ended up causing far more problems than it was worth, especially
given that it just attempted to provide backwards compatibility with
the alpha release.
2019-11-15 11:50:58 -08:00
David Zhu
41c65f4740 Jump out of spec translation early if the spec is not migratable. Unit tests work after all! 2019-11-15 11:23:32 -08:00
David Zhu
6e716af89e Add CSINodes to AttachDetachControllerRecovery test 2019-11-15 11:23:32 -08:00
Travis Rhoden
0c5c3d8bb9
Remove pkg/util/mount (moved out of tree)
This patch removes pkg/util/mount completely, and replaces it with the
mount package now located at k8s.io/utils/mount. The code found at
k8s.io/utils/mount was moved there from pkg/util/mount, so the code is
identical, just no longer in-tree to k/k.
2019-11-15 08:29:12 -07:00
Kubernetes Prow Robot
ded6ee953c
Merge pull request #79993 from aramase/controller-manager-multiple-cidr
Allow multiple node cidr masks in kube-controller-manager
2019-11-14 23:23:42 -08:00
Kubernetes Prow Robot
372ebd24f5
Merge pull request #83098 from ddebroy/disable-intree
CSI Migration phase 2: disable probing of in-tree plugins
2019-11-14 20:51:42 -08:00
Anish Ramasekar
796faba4ac
Allow multiple node cidr masks in cm
update tests

add comment

amend var name

update comment

add check for empty slice

fix tests

fix mask size in test

review feedback

add ipv4 and ipv6 flag for mask sizes

add to violation exception list

remove import alias

run update-openapi-spec

review feedback

run update-bazel

review feedback

review feedback
2019-11-14 20:04:31 -08:00
YAMAMOTO Takashi
361cd7212e Fix a comment typo in legacyNodeRoleBehaviorFeature 2019-11-15 11:30:34 +09:00
Deep Debroy
129f15328b Disable in-tree plugins migrated to CSI
Signed-off-by: Deep Debroy <ddebroy@docker.com>
2019-11-14 17:28:21 -08:00
Kubernetes Prow Robot
ba9f7419f9
Merge pull request #84732 from khenidak/fix-disable-dualstack
Fix a CM panic when ipam tries to lock an out of range pre existing cidr
2019-11-14 11:19:35 -08:00
Kubernetes Prow Robot
5e30d32d2c
Merge pull request #83394 from bertinatto/convert_pv_no_affinity
Convert existing PVs to use volume topology in VolumeBinderPredicate
2019-11-13 21:45:56 -08:00
Kubernetes Prow Robot
565566f4b2
Merge pull request #85153 from codenrhoden/mount-no-exec-int
Retire mount.Exec for k8s.io/utils/exec
2019-11-13 17:28:32 -08:00
Kubernetes Prow Robot
072cf5bd58
Merge pull request #85023 from MrHohn/svc-lb-ga
Promote service load balancer finalizer to GA
2019-11-13 17:28:21 -08:00
Rob Scott
a7e589a8c6
Promoting EndpointSlices to beta 2019-11-13 14:20:19 -08:00
Travis Rhoden
367f879131
Retire mount.Exec for k8s.io/utils/exec
This patch removes mount.Exec entirely and instead uses the common
utility from k8s.io/utils/exec.

The fake exec implementation found in k8s.io/utils/exec differs a bit
than mount.Exec, with the ability to pre-script expected calls to
Command.CombinedOutput(), so tests that previously relied on a callback
mechanism to produce specific output have been updated to use that
mechanism.
2019-11-13 14:09:57 -07:00
Fabio Bertinatto
bbfc6ef450 Convert volume binder to use CSINode GA 2019-11-13 14:01:01 +01:00
Fabio Bertinatto
7cba40fb09 Use CSI translation lib in VolumeBinderPredicate 2019-11-13 14:01:01 +01:00
Zihong Zheng
0833e8840e Amend service controller code/test regarding finalizer GA 2019-11-12 15:04:07 -08:00
Rob Scott
0fa9981e01
Splitting IP address type into IPv4 and IPv6 for EndpointSlices 2019-11-12 09:03:53 -08:00
Kubernetes Prow Robot
5dc87d2919
Merge pull request #83965 from robscott/endpointslice-managed-by
Adding new label to indicate what is managing an EndpointSlice
2019-11-12 03:08:07 -08:00
Kubernetes Prow Robot
7d1f9b440e
Merge pull request #83815 from howardjohn/appprotocol
Add appProtocol to EndpointSlice.Port
2019-11-11 17:48:06 -08:00
Kubernetes Prow Robot
01e014c7d6
Merge pull request #85012 from alculquicondor/feat/predicate_factory
Add MetadataProducerFactory for predicates
2019-11-11 14:46:36 -08:00
Kubernetes Prow Robot
709a0c4f7b
Merge pull request #85067 from takanattie/fix_typo
Fix a typo in pkg/controller
2019-11-11 12:56:48 -08:00
Aldo Culquicondor
6a98c93f3c Add MetadataProducerFactory for predicates
Signed-off-by: Aldo Culquicondor <acondor@google.com>
2019-11-11 11:27:44 -05:00
Kubernetes Prow Robot
b2fb0f77ad
Merge pull request #82572 from tnozicka/fix-rs-expectations
Fix RS expectations for recreate case
2019-11-11 05:49:42 -08:00
Tomas Nozicka
ce52643f12 Update Bazel 2019-11-11 09:11:43 +01:00
Tomas Nozicka
6754b93f6b Fix RS informer handlers and handling expectations on delete 2019-11-11 09:11:43 +01:00
Takashi Natsume
e5ad39fbe0 Fix a typo in pkg/controller 2019-11-10 11:24:10 +00:00
shibataka000
b7122770f8 Fix bug about unintentional scale out during updating deployment.
During rolling update with maxSurge=1 and maxUnavailable=0,
len(metrics) is greater than currentReplcas
and it may cause unintentional scale out.
2019-11-09 06:24:31 +00:00
Rob Scott
6b8b2ff975
Adding new label to indicate what is managing an EndpointSlice
This adds a new Label to EndpointSlices that will ensure that multiple
controllers or entities can manage subsets of EndpointSlices. This
label provides a way to indicate the controller or entity responsible
for managing an EndpointSlice.

To provide a seamless upgrade from the alpha release of EndpointSlices
that did not support this label, a temporary annotation has been added
on Services to indicate that this label has been initially set on
EndpointSlices. That annotation will be set automatically by the
EndpointSlice controller with this commit once appropriate Labels have
been added on the corresponding EndpointSlices.
2019-11-08 15:34:44 -08:00
Kubernetes Prow Robot
9cf309ed59
Merge pull request #82049 from andrewsykim/ga-node-instance-type-label
Promote Node Instance Type Label to GA
2019-11-08 13:47:58 -08:00
Khaled Henidak(Kal)
2de6b2e52c unit tests 2019-11-08 18:29:08 +00:00
Khaled Henidak(Kal)
e07402f7dc fix a panic when ipam tries to allocate an out of range pre-existing cidr 2019-11-08 18:29:08 +00:00
John Howard
d00794ca60 Add appProtocol to EndpointSlice.Port 2019-11-08 09:22:50 -08:00
Kubernetes Prow Robot
f0184f0921
Merge pull request #84933 from krzysied/node_controller_v_level
Bumping up log level for not updated node
2019-11-08 09:00:40 -08:00
Kubernetes Prow Robot
ae15368355
Merge pull request #84351 from wojtek-t/promote_node_lease_to_GA
Promote node lease to GA
2019-11-08 09:00:15 -08:00
Andrew Sy Kim
55e40b8dc1 cloud node controller: apply stable instance-type label with backfill to existing nodes
Signed-off-by: Andrew Sy Kim <kiman@vmware.com>
2019-11-08 10:50:52 -05:00
Kubernetes Prow Robot
d366d2eaa3
Merge pull request #84896 from RainbowMango/pr_migrate_custom_collector_scheduler
Migrate custom collector for kube-scheduler
2019-11-08 01:04:14 -08:00
Kubernetes Prow Robot
3ee195f0e9
Merge pull request #81431 from andrewsykim/ga-node-topology
Promote Node Zone/Region Topology Labels to GA
2019-11-07 22:00:20 -08:00
Andrew Sy Kim
07229d6c51 pkg/util/node: update GetZoneKey to check both beta and GA labels
Signed-off-by: Andrew Sy Kim <kiman@vmware.com>
2019-11-07 21:22:04 -05:00
Andrew Sy Kim
3032c81187 node controller: set both deprecated Beta and GA labels for Zone/Region topology
Signed-off-by: Andrew Sy Kim <kiman@vmware.com>
2019-11-07 20:08:11 -05:00
Rob Scott
0c7548f020
Setting Hostname from Pods on EndpointSlice to match Endpoints behavior.
This was an oversight in the initial EndpointSlice release. This update
will ensure that Endpoints and EndpointSlices use the same logic to set
the Hostname attribute.
2019-11-07 13:22:54 -08:00
Kubernetes Prow Robot
f7c3fa8324
Merge pull request #84860 from wojtek-t/remove_conversion_funcs_4
Eliminate couple default conversions
2019-11-07 09:05:30 -08:00
Kubernetes Prow Robot
06a7e9a1f3
Merge pull request #84763 from hwdef/fix-staticcheck6
pkg/controller: fix staticcheck warning
2019-11-07 09:05:17 -08:00
Krzysztof Siedlecki
4e63b9a032 bumping up log level for not updated node 2019-11-07 17:59:26 +01:00
Kubernetes Prow Robot
8841624982
Merge pull request #81167 from krzysied/node_controller_list
Avoid listing pods in NodeLifecycleController
2019-11-07 07:53:10 -08:00
Kubernetes Prow Robot
1183771545
Merge pull request #84748 from hvaara/fix-golint-controller-volume-persistentvolume-options
Fix golint issues in pkg/controller/volume/persistentvolume/options
2019-11-07 04:35:53 -08:00
Kubernetes Prow Robot
ca836256c4
Merge pull request #84573 from robscott/endpointslice-publishnotready
Updating EndpointSlices to use PublishNotReadyAddresses from Services.
2019-11-07 04:35:10 -08:00
Krzysztof Siedlecki
9406e5bf2a adding pods lister 2019-11-07 12:02:21 +01:00
hwdef
38256df718 pkg/controller: fix staticcheck warning 2019-11-07 16:46:47 +08:00
Kubernetes Prow Robot
24fb2c1afd
Merge pull request #84280 from gongguan/service_selector_cache
add service selector cache in endpoint and endpointSlice controller
2019-11-06 18:47:00 -08:00
RainbowMango
09dc221d7b Deal with auto-generated files.
Update bazel by hack/update-bazel.sh
2019-11-07 10:30:12 +08:00
RainbowMango
9efabe8124 Migrate custom collector to stablility framework 2019-11-07 10:26:27 +08:00
Kubernetes Prow Robot
46472773cb
Merge pull request #84836 from yuxiaobo96/k8s-checks
Correct spelling mistakes
2019-11-06 12:21:11 -08:00
Kubernetes Prow Robot
b09b962d96
Merge pull request #84746 from Huang-Wei/move-sched-constrants
Move out const strings in pkg/scheduler/api/well_known_labels.go
2019-11-06 12:20:06 -08:00
Rob Scott
ff3cbdb0ad
Updating EndpointSlices to use PublishNotReadyAddresses from Services.
The Service spec includes a PublishNotReadyAddresses field which has
been used by Endpoints to report all matching resources ready. This may
or may not have been the initial purpose of the field, but given the
desire to provide backwards compatibility with the Endpoints API here,
it seems to make sense to continue to provide the same functionality.
2019-11-06 09:11:31 -08:00
wojtekt
ccded14941 Eliminate some default conversions 2019-11-06 14:08:15 +01:00
yuxiaobo
81e9f21f83 Correct spelling mistakes
Signed-off-by: yuxiaobo <yuxiaobogo@163.com>
2019-11-06 20:25:19 +08:00
Wei Huang
019d7497a5
bazel files 2019-11-05 20:57:21 -08:00
Wei Huang
dd74205bcf
Move out const strings in pkg/scheduler/api/well_known_labels.go 2019-11-05 20:56:21 -08:00
louisgong
2133f9e9ff add service selector cache in endpoint controller and endpointSlice controller 2019-11-06 10:55:26 +08:00
Kubernetes Prow Robot
0c32aa8910
Merge pull request #83257 from robscott/endpointslice-metrics
Adding initial EndpointSlice metrics.
2019-11-05 15:30:31 -08:00
Kubernetes Prow Robot
268e331c70
Merge pull request #84527 from robscott/endpoint-util-owners
Adding owners file for Endpoint controller utils
2019-11-05 06:28:39 -08:00
wojtekt
ffad401b4e Promote NodeLease feature to GA 2019-11-05 09:01:12 +01:00
Kubernetes Prow Robot
aaa5707896
Merge pull request #84677 from mikedanese/cfssl
remove cfssl dependencies
2019-11-04 15:28:53 -08:00
Kubernetes Prow Robot
1d1385af91
Merge pull request #83474 from msau42/topology-ga
CSI Topology ga
2019-11-04 15:28:27 -08:00
Roy Hvaara
dffcf7c8cd
Fix golint issues in pkg/controller/volume/persistentvolume/options 2019-11-04 21:45:21 +01:00
Mike Danese
6a004d0c18 support URI SANs in local signer 2019-11-04 10:56:06 -08:00
Mike Danese
fe51712288 refactor into seperate authority package 2019-11-04 10:56:06 -08:00
Mike Danese
4bd2c3998f don't use cfssl in signer 2019-11-04 10:56:06 -08:00
Kubernetes Prow Robot
6a19261e96
Merge pull request #84123 from smarterclayton/terminating_cause
Handle namespace deletion more gracefully in built-in controllers
2019-11-04 07:55:41 -08:00
Kubernetes Prow Robot
5e33f3db5f
Merge pull request #84445 from krzysied/node_controller_retry_fix
NodeLifecycleController - MarkPodsNotReady retry fix
2019-11-03 20:15:40 -08:00
Kubernetes Prow Robot
b55440dcf8
Merge pull request #84637 from zhipengzuo/master
fix log and note :cidr mask size must be <= node mask
2019-11-03 18:53:40 -08:00
Kubernetes Prow Robot
d8ab3f26e7
Merge pull request #84323 from draveness/feature/remove-suspended-daemon-pods
feat: remove suspendedDaemonPods from daemon controller
2019-11-02 23:41:40 -07:00
Kubernetes Prow Robot
6e0c915f43
Merge pull request #84060 from yutedz/gc-ref-diff
Traverse OwnerReference maps more efficiently
2019-11-01 18:07:41 -07:00
zhipengzuo
1e0b019062 fix log and annotation :cidr mask size must be <= node mask 2019-11-01 17:26:23 +08:00
Krzysztof Siedlecki
3a82f50b2e adding test for retrying MarkPodsNotReady 2019-10-31 16:56:54 +01:00
Krzysztof Siedlecki
9759a982c5 MarkPodsNotReady retry fix 2019-10-31 16:56:54 +01:00
Ryan Phillips
f87da3fdfa fixes for tests to pass with FIPS compiler
* use P256 ECDSA key since P224 is not supported
* regen test certs to be 2048bits
2019-10-30 10:10:11 -05:00
Rob Scott
40423cf18e
Adding owners file for Endpoint controller utils 2019-10-29 11:01:49 -07:00
Andrew Sy Kim
897b8d7476 improve error handling in cloud node controller
Signed-off-by: Andrew Sy Kim <kiman@vmware.com>
2019-10-28 20:23:12 -04:00
Michelle Au
fb6dfeb718 Convert attach-detach controller to use v1.CSINode 2019-10-28 13:41:13 -07:00
wojtekt
ce499ac286 Migrate components to EndpointsLeases leader election lock 2019-10-28 09:09:03 +01:00
Kubernetes Prow Robot
d379ab2697
Merge pull request #84288 from wojtek-t/cleanup_conversions_registrations
Cleanup conversions registrations
2019-10-25 22:53:22 -07:00
draveness
dc437a7890 feat: remove suspendedDaemonPods from daemon controller 2019-10-25 09:16:48 +08:00
wojtekt
7b6bcdf780 Autogenerated code 2019-10-24 20:21:00 +02:00
Kubernetes Prow Robot
2c4cba8aa0
Merge pull request #82365 from jkaniuk/pod-gc
Pod GC controller - use node lister
2019-10-24 03:13:06 -07:00
Rob Scott
724b142f07
Adding initial EndpointSlice metrics. 2019-10-23 17:33:17 -07:00
Kubernetes Prow Robot
ed5a3847a2
Merge pull request #83856 from mrbobbytables/update-autoscaling-owners
Prune inactive owners from autoscaling related OWNERS files.
2019-10-23 15:53:34 -07:00
Kubernetes Prow Robot
4f63f61c36
Merge pull request #84193 from ahg-g/ahg-list
Separate scheduler listers into their own package
2019-10-23 12:51:30 -07:00
Kubernetes Prow Robot
7dc298af42
Merge pull request #82795 from draveness/feature/remove-schedule-daemonset-pods
feat(scheduler): graduate ScheduleDaemonSetPods to GA
2019-10-23 12:49:12 -07:00
Kubernetes Prow Robot
65fa4c979a
Merge pull request #82152 from misterikkit/disruption
Fix retry logic in DisruptionController
2019-10-23 12:48:58 -07:00
Jacek Kaniuk
39883f08bf Pod GC controller - use node lister 2019-10-23 16:54:54 +02:00
draveness
35d772e354 feat: graduate ScheduleDaemonSetPods to GA 2019-10-23 21:34:47 +08:00
Kubernetes Prow Robot
75cd65ae0e
Merge pull request #82145 from shivi28/fix-controller-nodeipam-ipam-cidrset
nodeipam-controller:fix static check failures
2019-10-22 23:18:26 -07:00
Cristian Dima
da759609dc in pkg/controller/service rename service_controller.go to controller.go 2019-10-23 01:52:19 +03:00
Cristian Dima
a18de39166 fix golint errors in pkg/controller/service 2019-10-23 01:52:19 +03:00
Abdullah Gharaibeh
d393804237 separate listers into their own package 2019-10-22 18:11:02 -04:00
Kubernetes Prow Robot
3c0fa84f92
Merge pull request #84075 from yutedz/replica-set-rolling
Extract PodPhase map outside Less func
2019-10-22 10:28:36 -07:00
Kubernetes Prow Robot
4984c6f000
Merge pull request #84049 from jsafrane/block-feature-gate-checks
Add block feature gate checks to PV controller
2019-10-21 21:12:09 -07:00
Ted Yu
7a4b98b896 Extract PodPhase map outside Less func 2019-10-21 14:32:20 -07:00
Clayton Coleman
bd9260711f
deployment: Ignore namespace termination errors when creating replicasets
Instead of reporting an event or displaying an error, simply exit
when the namespace is being terminated. This reduces the amount of
controller churn on namespace shutdown. Unlike other controllers, we
drop the replica set create error very late (in the queue handleErr)
in order to avoid changing the structure of the controller
substantially.
2019-10-20 18:39:01 -04:00
Clayton Coleman
c6e34e58c5
job: Ignore namespace termination errors when creating pods or jobs
Instead of reporting an event or displaying an error, simply exit
when the namespace is being terminated. This reduces the amount of
controller churn on namespace shutdown. While we could technically
exit the entire processing loop early for very large jobs,
we should wait for more evidence that is an issue before changing
that logic substantially.
2019-10-20 18:39:01 -04:00
Clayton Coleman
8f74c8970b
daemonset: Ignore namespace termination errors when creating pods
Instead of reporting an event or displaying an error, simply exit
when the namespace is being terminated. This reduces the amount of
controller churn on namespace shutdown. While we could technically
exit the entire processing loop early for very large daemon sets,
we should wait for more evidence that is an issue before changing
that logic substantially.
2019-10-20 18:39:00 -04:00
Clayton Coleman
2e8ace82eb
replicaset: Ignore namespace termination errors when creating pods
Instead of reporting an event or displaying an error, simply exit
when the namespace is being terminated. This reduces the amount of
controller churn on namespace shutdown. While we could technically
exit the entire processing loop early for very large replica sets,
we should wait for more evidence that is an issue before changing
that logic substantially.
2019-10-20 18:39:00 -04:00
Clayton Coleman
dc0c21c7d7
serviceaccount: If namespace is terminating, ignore create errors
In some scenarios the service account and token controllers can
race with namespace deletion, causing a burst of errors as they
attempt to recreate secrets being deleted.

Instead, detect these errors and do not retry.
2019-10-20 18:39:00 -04:00
Clayton Coleman
937ef77257
endpoints: If namespace is terminating, drop item immediately
Avoid sending an event to the namespace that is being terminated,
since it will be rejected.
2019-10-20 18:38:59 -04:00
walter
6991069e31 Push context up to cloud node controller.
This adds context to the cloud node controller. It continues the propogation started in 59287.  Fixes 815.
Fixed test code calls.
2019-10-20 11:20:49 -07:00
Ted Yu
0d704f1ce2 Traverse OwnerReference maps more efficiently 2019-10-19 17:56:11 -07:00
Kubernetes Prow Robot
aab740ffc2
Merge pull request #82703 from draveness/feature/graduate-taint-nodes-by-condition-to-ga
feat: update taint nodes by condition to GA
2019-10-18 20:01:37 -07:00
draveness
1163a1d51e feat: update taint nodes by condition to GA 2019-10-19 09:17:41 +08:00
Kubernetes Prow Robot
de9a7d863d
Merge pull request #83934 from wccsama/wcc-service-dev
Convert error messages to use event recorder
2019-10-18 12:37:46 -07:00
wccsama
18cf49e3df Convert error messages to use event recorder
remove mix protocol validation
remove check nil
2019-10-18 13:30:00 +08: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