Commit Graph

92571 Commits

Author SHA1 Message Date
David Eads
e88fecf26b allow setting different certificates for kube-controller-managed CSR signers 2020-07-09 08:14:55 -04:00
Kubernetes Prow Robot
a26e5881d8
Merge pull request #92786 from answer1991/feature/enhance-bootstrap-certificate
make Kubelet bootstrap certificate signal aware
2020-07-06 09:52:52 -07:00
chenjun.cj
db71941775 make Kubelet bootstrap certificate signal aware 2020-07-06 22:30:27 +08:00
Kubernetes Prow Robot
205d5c5829
Merge pull request #91381 from pjbgf/seccomp-ga-kubelet-changes
seccomp GA - Add new seccomp fields and update kubelet to use them
2020-07-06 07:02:52 -07:00
Paulo Gomes
8976e3620f
Add seccomp enforcement and validation based on new GA fields
Adds seccomp validation.

This ensures that field and annotation values must match when present.

Co-authored-by: Sascha Grunert <sgrunert@suse.com>
2020-07-06 09:13:25 +01:00
Kubernetes Prow Robot
865cbf0bdf
Merge pull request #91517 from gaurav1086/Remove_unnecessary_Sprintfs
cleanup: Remove_unnecessary_Sprintfs
2020-07-05 05:26:49 -07:00
Kubernetes Prow Robot
b9da08a33e
Merge pull request #92793 from feiskyer/fix-node-name
Fix throttling issues when Azure VM computer name prefix is different from VMSS name
2020-07-04 20:44:49 -07:00
Kubernetes Prow Robot
9e70d6f805
Merge pull request #91738 from jsafrane/fix-iscsi-metadata
iscsi: don't write json medata file when the volume is already mounted.
2020-07-04 16:06:48 -07:00
Kubernetes Prow Robot
2da917d370
Merge pull request #77979 from s-urbaniak/remove-trailing-one
kube-aggregator/openapi/controller: remove trailing 1 in failure ratelimiter
2020-07-04 04:56:48 -07:00
Pengfei Ni
e1bbcd8f06 Fix throttling issues when Azure VM computer name prefix is different from VMSS name 2020-07-04 19:19:30 +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
86096addb1
Merge pull request #92689 from chendave/fix_testcase
Fix the nits found in the testcases of `PodTopologySpread`
2020-07-03 20:31:26 -07:00
Kubernetes Prow Robot
efb56da4a5
Merge pull request #92665 from klueska/upstream-add-get-preferred-allocation-api
Add GetPreferredAllocation() call to the v1beta1 device plugin API
2020-07-03 20:31:16 -07:00
Kubernetes Prow Robot
d3aafb231b
Merge pull request #92609 from andrewsykim/ipvs-binded-addr
proxier/ipvs: check already binded addresses in the IPVS dummy interface
2020-07-03 20:31:02 -07:00
Kubernetes Prow Robot
6eca9f653b
Merge pull request #92435 from rosti/kubeadm-cc-test-refactor
kubeadm: refactor and cleanup component config tests
2020-07-03 20:30:48 -07:00
Kubernetes Prow Robot
faff3c5378
Merge pull request #91527 from danwinship/ipfamily-api-docs
api: update Service.Spec.IPFamily docs
2020-07-03 16:36:47 -07:00
Kubernetes Prow Robot
8ec5747fe5
Merge pull request #91501 from tahsinrahman/add-apiserver-logging-flag
Add `--logging-format` flag for kube-apiserver
2020-07-03 12:24:47 -07:00
Rostislav M. Georgiev
d023f3d25d kubeadm: Cleanup and refactor the LoadJoinConfigurationFromFile test
Back in the v1alpha2 days the fuzzer test needed to be disabled. To ensure that
there were no config breaks and everything worked correctly extensive replacement
tests were put in place that functioned as unit tests for the kubeadm config utils
as well.

The fuzzer test has been reenabled for a long time now and there's no need for
these replacements. Hence, over time most of these were disabled, deleted and
refactored. The last remnants are part of the LoadJoinConfigurationFromFile test.

The test data for those old tests remains largely unused today, but it still receives
updates as it contains kubelet's and kube-proxy's component configs. Updates to these
configs are usually done because the maintainers of those need to add a new field.

Hence, to cleanup old code and reduce maintenance burden, the last test that depends
on this test data is finally refactored and cleaned up to represent a simple unit test
of `LoadJoinConfigurationFromFile`.

Signed-off-by: Rostislav M. Georgiev <rostislavg@vmware.com>
2020-07-03 20:00:49 +03:00
Rostislav M. Georgiev
930ca6ceb2 kubeadm: Refactor component config tests
Over the course of recent development of the `componentconfigs` package,
it became evident that most of the tests in this package cannot be implemented without
using a component config. As all of the currently supported component configs are
external to the kubeadm project (kubelet and kube-proxy), practically all of the tests
in this package are now dependent on external code.
This is not desirable, because other component's configs may change frequently and
without much of a notice. In particular many configs add new fields without bumping their
versions. In addition to that, some components may be deprecated in the future and many
tests may use their configs as a place holder of a component config just to test some
common functionality.
To top that, there are many tests that test the same common functionality several times
(for each different component config).

Thus a kubeadm managed replacement and a fake test environment are introduced.
The new test environment uses kubeadm's very own `ClusterConfiguration`.
ClusterConfiguration is normally not managed by the `componentconfigs` package.
It's only used, because of the following:
- It's a versioned API that is under the control of kubeadm maintainers. This enables us to test
  the componentconfigs package more thoroughly without having to have full and always up to date
  knowledge about the config of another component.
- Other components often introduce new fields in their configs without bumping up the config version.
  This, often times, requires that the PR that introduces such new fields to touch kubeadm test code.
  Doing so, requires more work on the part of developers and reviewers. When kubeadm moves out of k/k
  this would allow for more sporadic breaks in kubeadm tests as PRs that merge in k/k and introduce
  new fields won't be able to fix the tests in kubeadm.
- If we implement tests for all common functionality using the config of another component and it gets
  deprecated and/or we stop supporting it in production, we'll have to focus on a massive test refactoring
  or just continue importing this config just for test use.

Thus, to reduce maintenance costs without sacrificing test coverage, we introduce this mini-framework
and set of tests here which replace the normal component configs with a single one (`ClusterConfiguration`)
and test the component config independent logic of this package.

As a result of this, many of the older test cases are refactored and greatly simplified to reflect
on the new change as well. The old tests that are strictly tied to specific component configs
(like the defaulting tests) are left unchanged.

Signed-off-by: Rostislav M. Georgiev <rostislavg@vmware.com>
2020-07-03 20:00:45 +03:00
Kubernetes Prow Robot
a472138c1f
Merge pull request #92724 from chelseychen/event-e2e
Update Event CRUD tests to use events.k8s.io/v1
2020-07-03 07:54:47 -07:00
Kevin Klues
5bd0db0b1f Add new test cases for GetPreferredAllocation() in allocation path 2020-07-03 13:01:32 +00:00
Kevin Klues
83f18d9975 Remove unnecessary field from TestTopologyAlignedAllocation() test cases 2020-07-03 13:01:32 +00:00
Kevin Klues
bb08fd1135 Add a simple endpoint test for GetPreferredAllocation()
More extensive tests that exercise the allocation logic are to follow.
2020-07-03 13:01:32 +00:00
Kevin Klues
cbd405d85c Update existing tests in support of GetPreferredallocation() 2020-07-03 13:01:32 +00:00
Kubernetes Prow Robot
d5f76a9c6f
Merge pull request #92764 from sjenning/add-new-kubelet-approvers-to-cmd
add dashpole and sjenning to cmd/kubelet OWNERS
2020-07-03 05:04:21 -07:00
Kubernetes Prow Robot
5da9ba51cd
Merge pull request #92750 from wawa0210/e2e-app-staticcheck
fix test/e2e/apps staticcheck
2020-07-03 05:04:12 -07:00
Kubernetes Prow Robot
af29f81af6
Merge pull request #92740 from SataQiu/deprecate-config-view-20200702
Mark 'kubeadm config view' command as deprecated
2020-07-03 05:04:02 -07:00
Kubernetes Prow Robot
046ac5100e
Merge pull request #92720 from neolit123/1.19-add-kcm-port
kubeadm: add --port=0 for kube-controller-manager and kube-scheduler
2020-07-03 05:03:25 -07:00
Kubernetes Prow Robot
b6cbe1b8de
Merge pull request #92662 from chelseychen/event-api-fallback
Switch event recorder to use events.k8s.io/v1
2020-07-03 05:03:15 -07:00
Kubernetes Prow Robot
19883b50f8
Merge pull request #92604 from soulxu/fix_preemption_with_nominated_node
The Pod is eligible to preempt when previous nominanted node is UnschedulableAndUnresolvable
2020-07-03 05:03:01 -07:00
Kubernetes Prow Robot
a2aaae2dd5
Merge pull request #88124 from rosti/kubeadm-cc-upgrade-plan
kubeadm upgrade plan: print a component config state table
2020-07-03 05:02:47 -07:00
Kubernetes Prow Robot
d7e364ad0f
Merge pull request #92579 from chendave/preemption_topology
Change the exception to avoid the cost of preemption
2020-07-02 23:24:47 -07:00
Dave Chen
3e65fe4378 Change the exception to avoid the cost of preemption
node's labels doesn't contain the required topologyKeys in `Constraints`
cannot be resolved by preempting the pods on that pods.

One use case that could easily reproduce the issue is,
- set `alwaysCheckAllPredicates` to true.
- one node contains all the required topologyKeys but is failed in predicates
  such as 'taint'.
- another node doesn't hold all the required topologyKeys, and thus return `Unschedulable`
  status code.
- scheduler will try to preempt the pods on the above node with lower priorities.

Signed-off-by: Dave Chen <dave.chen@arm.com>
2020-07-03 10:17:31 +08:00
Kubernetes Prow Robot
36083e4292
Merge pull request #91522 from SataQiu/add-logging-format-flag-20200528
Add '--logging-format' flag to kube-scheduler
2020-07-02 19:04:47 -07:00
SataQiu
2b7af10276 mark 'kubeadm config view' command as deprecated 2020-07-03 09:40:23 +08:00
He Jie Xu
b3741f344e The Pod is eligible to preempt when previous nominanted node is UnschedulableAndUnresolvable
If the Pod's previous nominated node is UnschedulableAndUnresolvable from previous
filtering, it should be considered for preemption again.
2020-07-03 08:57:45 +08:00
Kubernetes Prow Robot
6da40542e7
Merge pull request #92706 from nodo/scheduler-integration-test-add-labels-cleanup
Create nodes with labels instead of adding them later
2020-07-02 17:46:47 -07:00
Kevin Klues
a780ccff5b Updates logic in devicesToAllocate() to call GetPreferredAllocation() 2020-07-02 22:07:27 +00:00
Kevin Klues
bb56a09133 Add callGetPreferredAllocationIfAvailable() function in devicemanager
This function mimics what is already done for the conditional call to
PreStartContainer() via the callPreStartContainerIfNeeded() function.
2020-07-02 22:07:27 +00:00
Kubernetes Prow Robot
47a9952337
Merge pull request #86968 from gnufied/add-extra-csi-fields
Add extra fields in node expansion CSI call
2020-07-02 15:06:47 -07:00
Andrew Sy Kim
de2ecd7e2f proxier/ipvs: check already binded addresses in the IPVS dummy interface
Signed-off-by: Andrew Sy Kim <kim.andrewsy@gmail.com>
Co-authored-by: Laurent Bernaille <laurent.bernaille@gmail.com>
2020-07-02 15:32:21 -04:00
Seth Jennings
b1f91d33e7 add dashpole and sjenning to cmd/kubelet OWNERS 2020-07-02 14:20:41 -05:00
Chelsey Chen
e54ad20f05 Remove DeprecatedSource assignment to avoid validation failure 2020-07-02 14:50:47 -04:00
Chelsey Chen
ade2422883 Switch event recorder to use events.k8s.io/v1 2020-07-02 14:50:41 -04:00
Kevin Klues
abf87c99c6 Add GetPreferredAllocation() as a supported device plugin endpoint 2020-07-02 15:15:50 +00:00
Kevin Klues
32c047a52e Update device plugin stub with new GetPreferredAllocation() call 2020-07-02 15:15:48 +00:00
Kevin Klues
202c4f0816 Add GetPreferredAllocation() call to the device plugin api.proto
The details of this API can be found in:
https://github.com/kubernetes/enhancements/pull/1121
2020-07-02 15:15:46 +00:00
Kevin Klues
c45f1317eb Fix some whitespacing and comments in devicemanager 2020-07-02 15:15:44 +00:00
Kevin Klues
9c41989524 Update whitespace in device plugin api.proto 2020-07-02 15:15:41 +00:00
Kubernetes Prow Robot
6cedc0853f
Merge pull request #92691 from zhouya0/change_kubectl_list_option_stdout
Change kubectl label and annotation list option stdout
2020-07-02 06:41:39 -07:00