Commit Graph

5439 Commits

Author SHA1 Message Date
Swetha Repakula
6f5329d4c0 Remove EndpointSliceNodeName feature gate logic
- feature gate has graduated to GA and will always be enabled, so no
 longer need to check if enabled
2021-03-04 09:57:15 -08:00
Rob Scott
06db357e06 Updating EndpointSliceMirroring controller to wait for cache to be updated
This matches the recent updates to the EndpointSliceTracker for the
EndpointSlice controller in #99345 that accomplished the same thing.
2021-03-04 09:16:41 -08:00
Aldo Culquicondor
2dd0c73056 Test for removal of invalid and repeated indexes
in Indexed Job
2021-03-04 16:39:34 +00:00
Mike Dame
af045087d9 Move GetZoneKey function to component-helpers 2021-03-04 10:32:38 -05:00
Kubernetes Prow Robot
c8fe1d9c06 Merge pull request #99614 from mengjiao-liu/update_cronjob_test_desc
modify the TestController2_updateCronJob test method description
2021-03-04 06:42:29 -08:00
Kubernetes Prow Robot
cc4bd511bb Merge pull request #99746 from swetharepakula/nodeName-feature-gate-ga
Graduate EndpointSliceNodeName feature gate to GA
2021-03-04 02:09:03 -08:00
Kubernetes Prow Robot
180d9cfa8b Merge pull request #99632 from pohly/storage-capacity-enablement
volume binder: storage capacity enablement
2021-03-04 02:08:20 -08:00
Kubernetes Prow Robot
9fa33ada4b Merge pull request #99514 from mikkeloscar/hpa-no-scale-down-some-broken-metrics
hpa: Don't scale down if at least one metric was invalid
2021-03-04 02:08:08 -08:00
Kubernetes Prow Robot
3ce93161fe Merge pull request #97507 from aldudko/controller-logging
Migrate deployment controller log messages to structured logging
2021-03-03 22:49:59 -08:00
mengjiao.liu
f80a799a45 modify the TestController2_updateCronJob test method description 2021-03-04 11:20:33 +08:00
Swetha Repakula
be2ef551d1 Graduate EndpointSliceNodeName feature gate to GA
- Feature gate can be removed when EndpointSlice v1beta1 is removed
  - Remove test cases where feature gate is disabled
2021-03-03 18:13:51 -08:00
Aldo Culquicondor
8812531b8c Add completion index to Job Pods
When .spec.completionMode="Indexed"
2021-03-03 22:45:53 +00:00
Kubernetes Prow Robot
7b0ad65d4d Merge pull request #99288 from supriya-premkumar/ineffassign
Adds ineffassign to GO linter script.
2021-03-03 14:40:46 -08:00
Kubernetes Prow Robot
53492f79df Merge pull request #98756 from pacoxu/ut/faster
networking nodeipam UT: set node poll interval to 1s in UT
2021-03-03 14:40:31 -08:00
Kubernetes Prow Robot
59f8ba5ffa Merge pull request #98595 from SergeyKanzhelev/nodelifecycleSchedulerUnitTestsSpeedUp
sped up scheduler tests by using fake clock
2021-03-03 14:40:21 -08:00
Kubernetes Prow Robot
90ac9cfc58 Merge pull request #97881 from ialidzhikov/nit/unnecessary-type-conversion
Nit: Remove unnecessary type conversion
2021-03-03 14:39:49 -08:00
Sergey Kanzhelev
d24ed4ace1 sped up scheduler tests by using fake clock 2021-03-03 19:12:53 +00:00
Supriya Premkumar
e52e5e486c Adds ineffassign to GO linter script.
Changes:
 - Enables ineffassign check in the verify scripts.
 - Fixes lint errs.
2021-03-03 08:28:10 -08:00
Patrick Ohly
512401a8a2 scheduler: tests for generic ephemeral volumes
This covers some failure scenarios and feature gate enablement.
2021-03-03 10:13:05 +01:00
Patrick Ohly
d2cc70ee2c scheduler: fail when a pod uses disabled generic ephemeral volumes
Without this error, kube-scheduler was simply ignoring the special
volume source and scheduled the pod. This was unlikely to work in
practice because the volume might have needed binding or the feature
is also disabled on kubelet which then doesn't know what to do with
the volume.
2021-03-03 10:13:05 +01:00
pacoxu
cef6e81fb3 set node poll interval to 10ms in UT
Signed-off-by: pacoxu <paco.xu@daocloud.io>
2021-03-03 16:39:57 +08:00
Mikkel Oscar Lyderik Larsen
fef092b417 hpa: Don't scale down if at least one metric was invalid
Signed-off-by: Mikkel Oscar Lyderik Larsen <mikkel.larsen@zalando.de>
2021-03-03 07:53:01 +01:00
Kubernetes Prow Robot
ee90db514c Merge pull request #99345 from robscott/endpointslice-wait-for-cache
Updating EndpointSlice controller to wait for cache to be updated
2021-03-02 13:23:20 -08:00
Kubernetes Prow Robot
d1a2af554a Merge pull request #99115 from pohly/ephemeral-volume-metrics
generic ephemeral volume: add metrics
2021-03-02 12:15:59 -08:00
Kubernetes Prow Robot
a89d783b27 Merge pull request #99553 from alaypatel07/fix-flaky-unit-test
cronjob: fix flaky unit test TestController2_updateCronJob
2021-03-02 11:11:31 -08:00
Rob Scott
e1542606c2 Updating EndpointSlice controller to wait for cache to be updated
This updates the EndpointSlice controller to make use of the
EndpointSlice tracker to identify when expected changes are not present
in the cache yet. If this is detected, the controller will wait to sync
until all expected updates have been received. This should help avoid
race conditions that would result in duplicate EndpointSlices or failed
attempts to update stale EndpointSlices. To simplify this logic, this
also moves the EndpointSlice tracker from relying on resource versions
to generations.
2021-03-02 09:43:46 -08:00
Alay Patel
08bc827e66 cronjob_controller: add metrics for job creation skew duration 2021-03-02 10:38:59 -05:00
Patrick Ohly
98f75290ba generic ephemeral volume: simpler metrics
A CounterVector with status as label may create unnecessary overhead
and using the success case with the empty label value wasn't
easy. It's better to have two seperate counters, one for total number
of calls and one for failed calls.
2021-03-02 12:01:37 +01:00
Patrick Ohly
6cb28fd1b4 generic ephemeral volume: add metrics
As discussed during the production readiness review, a metric for the
PVC create operations is useful. The "ephemeral_volume" workqueue
metrics were already added in the initial implementation.

The new code follows the example set by the endpoints controller.
2021-03-02 12:01:37 +01:00
Patrick Ohly
e98c40a6f9 volume binder: test different CSIStorageCapacity/CSIDriver combinations
When the feature is disabled either in the scheduler or the CSIDriver,
the scheduler is expected to schedule pods without considering whether
storage capacity is available.
2021-03-02 11:08:57 +01:00
Patrick Ohly
1f3ede50f7 PVC protection controller: clarify pod shutdown
The code was correct and now the comment references the code in
kubelet to illustrate how pod shutdown works.
2021-03-02 08:31:12 +01:00
Kubernetes Prow Robot
2e055dac58 Merge pull request #99163 from ahg-g/ahg-pod-deletion
Implements pod deletion cost
2021-03-01 18:19:21 -08:00
Kubernetes Prow Robot
1b88c2ee47 Merge pull request #98912 from wzshiming/ut/speed-up-volume-scheduling
Speed up pkg/controller/volume/scheduling unit tests
2021-03-01 13:58:16 -08:00
Alay Patel
602435ccb9 cronjob: fix flaky unit test TestController2_updateCronJob 2021-03-01 15:45:32 -05:00
Abdullah Gharaibeh
d7e80ab038 Implement pod deletion cost 2021-03-01 13:45:58 -05:00
Clayton Coleman
8d8884a907 daemonset: Remove unnecessary error returns in strategy code
The nodeShouldRunDaemonPod method does not need to return an error
because there are no scenarios under which it fails. Remove the
error return path for its direct calls as well.
2021-03-01 13:23:18 -05:00
Clayton Coleman
9f296c133d daemonset: Simplify the logic for calculating unavailable pods
In order to maintain the correct invariants, the existing maxUnavailable
logic calculated the same data several times in different ways. Leverage
the simpler structure from maxSurge and calculate pod availability only
once, as well as perform only a single pass over all the pods in the
daemonset. This changed no behavior of the current controller, and
has a structure that is almost identical to maxSurge.
2021-03-01 13:23:16 -05:00
Clayton Coleman
18f43e4120 daemonset: Implement MaxSurge on daemonset update
If MaxSurge is set, the controller will attempt to double up nodes
up to the allowed limit with a new pod, and then when the most recent
(by hash) pod is ready, trigger deletion on the old pod. If the old
pod goes unready before the new pod is ready, the old pod is immediately
deleted. If an old pod goes unready before a new pod is placed on that
node, a new pod is immediately added for that node even past the MaxSurge
limit.

The backoff clock is used consistently throughout the daemonset controller
as an injectable clock for the purposes of testing.
2021-03-01 13:21:12 -05:00
Clayton Coleman
8e6f58b0bd daemonset: Prevent accidental omissions of test condition checks
It is too easy to omit checking the return value for the
syncAndValidateDaemonSet test in large suites. Switch the method
type to be a test helper and fatal/error directly. Also rename
a method that referenced the old name 'Rollback' instead of
'RollingUpdate'.
2021-03-01 13:20:58 -05:00
Kubernetes Prow Robot
5498ee641b Merge pull request #99561 from BenTheElder/remove-bazel
Remove Bazel
2021-03-01 09:55:27 -08:00
Kubernetes Prow Robot
f6152d1521 Merge pull request #97086 from xing-yang/check_datasource
Only CSI plugin can have a DataSource
2021-03-01 06:53:26 -08:00
wzshiming
67e4ba0797 Speed up pkg/controller/volume/scheduling unit tests 2021-03-01 11:53:45 +08:00
Morten Torkildsen
5ad4280c09 Avoid sending events for every non-conformant pod in disruption controller 2021-02-28 19:43:25 -08:00
Benjamin Elder
56e092e382 hack/update-bazel.sh 2021-02-28 15:17:29 -08:00
Kubernetes Prow Robot
c200a8f9b7 Merge pull request #98433 from damemi/remove-helper-from-volume-zone
Move GetPersistentVolumeClaimClass to component-helpers
2021-02-26 12:38:15 -08:00
Kubernetes Prow Robot
c198632a12 Merge pull request #97098 from alaypatel07/cronjob-controller-2-follow-up-2
fix the case of time drift and re-implement next schedule calculation
2021-02-25 12:21:40 -08:00
xing-yang
676a3a7012 Only CSI plugin can have a DataSource 2021-02-25 15:27:26 +00:00
Kubernetes Prow Robot
8feec9bf94 Merge pull request #99351 from CaoDonghui123/fixissues3
Remove deadcode
2021-02-24 15:29:34 -08:00
Alay Patel
cebbc6b487 cronjob: use the same schedule Parser for tests as the reconcile loop 2021-02-24 13:50:03 -05:00
Alay Patel
6290a23ceb cronjob_controllerv2: gracefully handle 0 seconds between schedules 2021-02-24 13:48:56 -05:00