Commit Graph

11543 Commits

Author SHA1 Message Date
Kubernetes Prow Robot
3efd083b6c
Merge pull request #118012 from mengjiao-liu/runtime-framework-pass-context
kube-scheduler: NewFramework function to pass the context parameter
2023-05-24 11:50:49 -07:00
Lubomir I. Ivanov
72e4c9a82a kubeadm: add the "config validate" subcommand
The command can be used to validate an input --config and throw
warnings and errors.

Add a new argument strctErrors to the functions
documentMapTo{Init|Join}Configuration(). This allows
to return errors from the calls to VerifyUnmarshalStrict().

Add a new function verifyKnownGVKs() in config/common.go
that is used to verify if a list of GVKs in a config file is
known. This function is used by the "validate" and "migrate"
commands.

Both commands now throw errors for unknown APIs or fields.
2023-05-24 21:22:02 +03:00
Kubernetes Prow Robot
7024beeeeb
Merge pull request #117984 from champtar/kubeadm-init-speedup
kubeadm: speedup init by 0s or 20s
2023-05-24 09:09:01 -07:00
andyzhangx
485d1631cd Remove Azure file in-tree storage plugin 2023-05-24 14:10:34 +00:00
Dan Winship
6232ac734a Merge duplicated Linux/Windows kube-proxy setup code 2023-05-23 16:17:07 -04:00
Dan Winship
08ce580576 Add ProxyServer.platformSetup
Move the Linux-specific conntrack setup code into a new
"platformSetup" rather than trying to fit it into the generic setup
code.

Also move metrics registration there.
2023-05-23 16:17:04 -04:00
Mengjiao Liu
1c05cf1d51 kube-scheduler: NewFramework function to pass the context parameter
Co-authored-by: Aldo Culquicondor <1299064+alculquicondor@users.noreply.github.com>
2023-05-23 10:17:34 +08:00
Benjamin Elder
96d48de9b9 add OWNERS for cmd/prune-junit-xml 2023-05-22 11:01:38 -07:00
Lubomir I. Ivanov
d8db9640fa kubeadm: remove function pointer comparison in phase test
TestBindToCommandArgRequirements has a .Pointer()
comparison that is not guaranteed to pass given
the reflected functions are closures.

This test is consistently failing on Go 1.21 rc1.
Remove said comparison from the test.
2023-05-20 23:03:45 +03:00
Kubernetes Prow Robot
589d6f3886
Merge pull request #117630 from skitt/intstr-fromint32-cluster-lifecycle
Cluster lifecycle: use new intstr functions
2023-05-19 08:50:30 -07:00
Kubernetes Prow Robot
15a1f9a39d
Merge pull request #117921 from kkkkun/clean-up-etcd-version
clean up unsupport etcd version
2023-05-18 20:30:28 -07:00
Etienne Champetier
19ae2de19c kubeadm: speedup init by 0s or 20s
Before this commit, kubeadm starts kubelet before it creates
/etc/kubernetes/manifests. On boot, kubelet tries to load the
static pod manifests from this dir by calling `listConfig()`
7ad8303b96/pkg/kubelet/config/file.go (L97)
and it'll then try to start a file watcher every second for 20s
7ad8303b96/pkg/kubelet/config/file.go (L114)
7ad8303b96/pkg/kubelet/config/file_linux.go (L51-L67)

If kubelet starts and calls `listConfig()` before kubeadm creates
`/etc/kubernetes/manifests` (while writing the static pods manifests),
the file watcher will be created less than a second after, but there
will be no changes to report, so the manifests will only be detected
on the next tick of `listTicker`, a bit less than 20s later
7ad8303b96/pkg/kubelet/config/file.go (L102-L103)

Even if we fixed the watch code to `listConfig()` just after starting the
inotify watch, watching source file is only supported on linux,
so moving the manifests generation before kubelet start fixes all
cases and make more sense IMO.

Signed-off-by: Etienne Champetier <e.champetier@ateme.com>
2023-05-18 15:09:15 -04:00
Kubernetes Prow Robot
7ad8303b96
Merge pull request #118104 from liggitt/crd-sync
Fix waiting for CRD sync at server start
2023-05-18 11:26:45 -07:00
Jordan Liggitt
e4102d5e30
Test APIService safe handling at startup 2023-05-18 12:17:37 -04:00
Jordan Liggitt
3be3997193
Fix waiting for CRD sync at server start 2023-05-18 11:07:53 -04:00
carlory
bea71a3e4e remove unused pv informer from expand_controller 2023-05-18 15:58:38 +08:00
Kubernetes Prow Robot
f9d97e0880
Merge pull request #118069 from SataQiu/fix-kubeadm-20230517
kubeadm: fix a bug where the static pod changes detection logic is inconsistent with kubelet
2023-05-17 21:26:40 -07:00
Kubernetes Prow Robot
9d613da22b
Merge pull request #118066 from BenTheElder/yamlfmt-cleanup
yamlfmt cleanup
2023-05-17 15:42:33 -07:00
Benjamin Elder
fc4fb004cf add reviewers and labels to yamlfmt 2023-05-17 09:59:26 -07:00
SataQiu
261de704c2 kubeadm: fix a bug where the static pod changes detection logic is inconsistent with kubelet 2023-05-17 17:05:24 +08:00
kkkkun
8b4840aa37 clean up unsupport etcd version
Signed-off-by: kkkkun <scuzk373x@gmail.com>
2023-05-17 16:35:50 +08:00
Benjamin Elder
e0ebac6c9c drop redundant NArg check when looping Args 2023-05-16 23:23:22 -07:00
Benjamin Elder
82c40e3697 drop redundant NArg check when looping Args 2023-05-16 23:12:37 -07:00
Humble Chirammal
e3eb4bd0c5 updating dependencies.yaml for etcd v3.5.9 version
Signed-off-by: Humble Chirammal <humble.devassy@gmail.com>
2023-05-16 20:27:17 +05:30
Kubernetes Prow Robot
ffb4172ff1
Merge pull request #115754 from linxiulei/sched
Start informers after leader election
2023-05-15 15:41:36 -07:00
Eric Lin
a52dcd0d9f Add DelayCacheUntilActive option to start informers after leader election
If scheduler fails to be active (elected if leader election is enabled),
setting this option will not start informers so that to avoid memory
overhead.

Signed-off-by: Eric Lin <exlin@google.com>
2023-05-15 19:52:04 +00:00
Kubernetes Prow Robot
1487fc762f
Merge pull request #117982 from jpbetz/sig-roles-jpbetz
Add api-machinery TL owners permissions for jpbetz
2023-05-15 09:07:29 -07:00
Joe Betz
f0f92853ad Add api-machinery TL owners permissions for jpbetz 2023-05-15 11:09:54 -04:00
Kubernetes Prow Robot
f70c26d495
Merge pull request #117919 from dlipovetsky/kubeadm-etcd-log-message-format
kubeadm: Remove leading zeros from etcd member ID in log messages
2023-05-14 20:09:38 -07:00
Daniel Lipovetsky
ef9f8d7c0c
kubeadm: Remove leading zeros from etcd member ID in log messages 2023-05-12 17:38:44 -07:00
Daniel Lipovetsky
ff4c6916ec
kubeadm: Fix log message when etcd member is added as learner 2023-05-12 17:38:44 -07:00
Kubernetes Prow Robot
8479db5876
Merge pull request #117946 from lavalamp/lavalamp-taking-a-break
lavalamp is taking a long break
2023-05-12 14:34:47 -07:00
Kubernetes Prow Robot
8f9c185696
Merge pull request #116761 from iancoolidge/devel-cpuset-revendor
Complete cpuset export to k/utils by revendoring
2023-05-12 08:37:02 -07:00
ZHAO Yao
4b50c4bb01
Update --image-gc-low-threshold option's description
kubelet option '--image-gc-low-threshold' description says it 'should not be larger than that of --image-gc-high-threshold'. But actually, it must less than '--image-gc-high-threshold', according to 02659772cb/pkg/kubelet/apis/config/validation/validation.go (L84)
2023-05-12 14:51:45 +08:00
Daniel Smith
1ffe3f467e lavalamp is taking a long break 2023-05-11 16:43:38 +00:00
Kubernetes Prow Robot
64af2d93e5
Merge pull request #117295 from aojea/transport_cache_metrics
add new metric for the internal client-go cache size
2023-05-11 08:59:02 -07:00
Kubernetes Prow Robot
19aaf0c0e1
Merge pull request #117724 from dlipovetsky/kubeadm-remove-etcd-member-idempotent
kubeadm: Make etcd member removal idempotent
2023-05-10 12:08:59 -07:00
Daniel Lipovetsky
5fd5768ef3
kubeadm: Make etcd member removal idempotent
If the etcd member is not found, then it has already been removed, and
kubeadm reset should immediately complete the 'remove-etcd-member'
phase. Previously, the phase would complete only once the
exponential-backoff retry expired, up to 3 minutes duration.

This commit also fixes a semantic error in etcd.GetMemberID. Previously,
the function returned 0 if no member was found, but 0 is not a valid
member ID.
2023-05-10 09:13:31 -07:00
SataQiu
164113bc1c fix a bug where the KubeletConfiguration is not printed correctly in the log 2023-05-10 22:29:37 +08:00
Kubernetes Prow Robot
626b2db1ca
Merge pull request #117335 from kkkkun/update-etcd-3.5.8
etcd: Update version to 3.5.8
2023-05-10 03:38:59 -07:00
Kubernetes Prow Robot
44a93d0b9d
Merge pull request #117792 from dlipovetsky/kubeadm-etcd-client-refactor
kubeadm: Add etcd client unit tests
2023-05-09 11:02:20 -07:00
HirazawaUi
82e3fa0930 fix fd leaks and failed file removing for main pkg and cmd 2023-05-09 09:24:11 -05:00
Min Ni
e865b30abd
update serial number to a valid non-zero number in ca certificate (#117791)
* update serial number to a valid non-zero number in ca certificate

* fix the existing problem (0 SerialNumber in all certificate) as part of this PR in a separate commit
2023-05-09 06:34:08 -07:00
Daniel Lipovetsky
05b3449346
kubeadm: Add etcd client unit tests 2023-05-08 13:35:03 -07:00
Daniel Lipovetsky
fc1b228779
kubeadm: Use internal etcd client through an interface 2023-05-08 13:35:03 -07:00
SataQiu
b4560f9e57 kubeadm: fix a bug where file copy(backup) could not be executed correctly on Windows platform during upgrade 2023-05-08 22:17:32 +08:00
Kubernetes Prow Robot
50ce134595
Merge pull request #117835 from pacoxu/kubeadm-crictl
kubeadm: fix crictl pull using wrong flag, use -i and -r
2023-05-06 09:31:15 -07:00
Kubernetes Prow Robot
98cf297e57
Merge pull request #117391 from catandcoder/master
fix doc mismatch
2023-05-06 08:35:17 -07:00
kkkkun
c56839c0a1 etcd: Update version to 3.5.8
Signed-off-by: kkkkun <scuzk373x@gmail.com>
2023-05-06 17:29:47 +08:00
Paco Xu
64f2fe2357 kubeadm: fix crictl pull using wrong flag, use -i and -r 2023-05-06 14:50:21 +08:00
Kubernetes Prow Robot
ff244415ae
Merge pull request #117747 from danwinship/proxy-startup-config
proxy startup-time config handling cleanup (take 2)
2023-05-04 14:37:24 -07:00
Dan Winship
0c9f55588c Simplify creation of default KubeProxyConfiguration 2023-05-04 11:39:40 -04:00
Kubernetes Prow Robot
763b10f000
Merge pull request #117421 from cbandy/scheduler-testing-setenv
Replace os.Setenv with testing.T.Setenv in tests
2023-05-03 23:54:53 -07:00
Ian K. Coolidge
cede96336a Depend on k8s.io/utils cpuset
Steps performed:

$ find . -name '*.go' -exec sed -i
's|k8s.io/kubernetes/pkg/kubelet/cm/cpuset|k8s.io/utils/cpuset|g' {} \
$ ./hack/update-vendor.sh
$ ./hack/update-gofmt.sh
$ git rm -r pkg/kubelet/cm/cpuset/
2023-05-03 16:26:09 +00:00
Dan Winship
10a869fc75 Remove duplicated config fields from ProxyServer
Rather than duplicating some of the KubeProxyConfiguration into
ProxyServer, just store the KubeProxyConfiguration itself so later
code can reference it directly.

For the fields that get platform-specific defaults (Mode,
DetectLocalMode), fill the defaults directly into the
KubeProxyConfiguration rather than keeping the original there and the
defaulted version in the ProxyServer.
2023-05-03 10:15:37 -04:00
SataQiu
1f7c07f355 scheduler: remove deprecated v1beta2 KubeSchedulerConfiguration 2023-05-03 21:43:19 +08:00
Dan Winship
c4575c3438 Fix up detect-local-mode validation
Validate the --detect-local-mode value in the API object validation
rather than doing it separately later. Also, remove runtime checks and
unit tests for cases that would be blocked by validation
2023-05-03 08:22:49 -04:00
Dan Winship
3734fe7ab1 Remove some useless error checks
Don't return errors in the event of programmer errors, and don't
double-check things that were already validated.
2023-05-03 08:22:45 -04:00
Alexander Zielenski
ffb9c076d7 add OpenAPIV3 config to tests and server options 2023-05-01 13:18:44 -07:00
Francesco Romani
69bc685556 node: podresources: graduate to GA
Lock the feature gate to ON and simplify the code
accordingly.

Signed-off-by: Francesco Romani <fromani@redhat.com>
2023-05-01 16:23:28 +02:00
Stephen Kitt
4c83aae2cc
kubeadm: replace intstr.FromInt with intstr.FromInt32
This touches cases where FromInt() is used on numeric constants, or
values which are already int32s, or int variables which are defined
close by and can be changed to int32s with little impact.

Signed-off-by: Stephen Kitt <skitt@redhat.com>
2023-05-01 09:17:50 +02:00
Kubernetes Prow Robot
f47d7f3a16
Merge pull request #117690 from pacoxu/revert-117297-proxy-startup-config
Revert "proxy startup-time config handling cleanup"
2023-04-30 03:08:17 -07:00
Kubernetes Prow Robot
bc872028ab
Merge pull request #117660 from pacoxu/UpgradeAddonsBeforeControlPlane
kubeadm: add deprecated FG UpgradeAddonsBeforeControlPlane
2023-04-29 20:50:17 -07:00
Paco Xu
e28f3de656
Revert "proxy startup-time config handling cleanup" 2023-04-30 09:05:42 +08:00
Kubernetes Prow Robot
e8130ba572
Merge pull request #117297 from danwinship/proxy-startup-config
proxy startup-time config handling cleanup
2023-04-28 17:32:16 -07:00
Kubernetes Prow Robot
9924dc65b7
Merge pull request #117614 from chendave/multi_cri
kubeadm: fix unit test failure on node with multiple cri endpoints
2023-04-28 01:30:16 -07:00
Dave Chen
2572a43034 kubeadm: fix unit test failure on node with multiple cri endpoints
Signed-off-by: Dave Chen <dave.chen@arm.com>
2023-04-28 15:00:16 +08:00
Paco Xu
c6f4bee98d kubeadm: add deprecated FG UpgradeAddonsBeforeControlPlane 2023-04-28 13:55:46 +08:00
Dan Winship
258c4c4251 Remove duplicated config fields from ProxyServer
Rather than duplicating some of the KubeProxyConfiguration into
ProxyServer, just store the KubeProxyConfiguration itself so later
code can reference it directly.

For the fields that get platform-specific defaults (Mode,
DetectLocalMode), fill the defaults directly into the
KubeProxyConfiguration rather than keeping the original there and the
defaulted version in the ProxyServer.
2023-04-27 15:43:35 -04:00
Dan Winship
9d4f10f5d2 Fix up detect-local-mode validation
Validate the --detect-local-mode value in the API object validation
rather than doing it separately later. Also, remove runtime checks and
unit tests for cases that would be blocked by validation
2023-04-27 15:43:35 -04:00
Kubernetes Prow Robot
78b56ce16d
Merge pull request #116570 from SataQiu/fix-kubeadm-20230314
kubeadm: support upgrade coredns and kube-proxy addons after all the control plane instances have been upgraded
2023-04-27 01:44:26 -07:00
SataQiu
170d5ef9fa code cleanup for kubeadm 2023-04-26 23:51:39 +08:00
Antonio Ojea
24e68b3c6a use client-go metrics not only rest_client
Change-Id: Id1a98fbaffd3e9db8dc719478ac1e7b4031ccbad
2023-04-25 20:06:05 +00:00
SataQiu
e3d84aa93c kubeadm: add the experimental (alpha) feature gate UpgradeAddonsAfterControlPlane that supports upgrade coredns and kube-proxy addons after all the control plane instances have been upgraded 2023-04-25 22:12:50 +08:00
Kubernetes Prow Robot
c0804231b9
Merge pull request #117521 from nberlee/fix-coredns-rbac
remove nodes resource from CoreDNS RBAC manifest
2023-04-24 10:57:13 -07:00
Li Bo
f9bab9a60b add --concurrent-cron-job-syncs flag 2023-04-24 18:28:14 +08:00
Kubernetes Prow Robot
b35ffd1dcb
Merge pull request #113969 from Octopusjust/k8s-pr11
Add test for cmd/kubeadm/app/phases/upgrade/compute.go
2023-04-24 02:45:01 -07:00
SataQiu
3469bb05db kubeadm: fix unit test panic for TestNewResetData 2023-04-22 17:02:34 +08:00
Nico Berlee
39e52449f9
remove nodes resource from CoreDNS RBAC manifest
This commit syncs RBAC from coredns/deployment and removes a get nodes
RBAC.

Historically the federation CoreDNS plugin needed the nodes resource to
fetch zone and region labels.

However, the CoreDNS federation plugin was deprecated and cleaned up a
long time ago and removed the Nodes RBAC requirement here in
`coredns/deployment` coredns.yaml.sed:
https://github.com/coredns/deployment/pull/229

This change however, never made it to `kubernetes/kubernetes`.

Signed-off-by: Nico Berlee <nico.berlee@on2it.net>
2023-04-21 15:10:31 +02:00
Chris Bandy
b9ef160322 Cleanup environment in tests that call os.Unsetenv
testing.T.Cleanup ensures the environment is restored after a test and
any of its parallel sub-tests. It's possible that some of these can be
simplified further to T.Setenv(key, ""), but I did not investigate.
2023-04-17 20:03:33 -05:00
Chris Bandy
240fccd766 Replace os.Setenv with testing.T.Setenv in tests
T.Setenv ensures that the environment is returned to its prior state
when the test ends. It also panics when called from a parallel test to
prevent racy test interdependencies.
2023-04-17 20:03:09 -05:00
Chris Bandy
fc643d2e40 Replace os.Setenv with testing.T.Setenv in tests
T.Setenv ensures that the environment is returned to its prior state
when the test ends. It also panics when called from a parallel test to
prevent racy test interdependencies.
2023-04-17 19:34:03 -05:00
cui fliter
1359ebcc5b fix doc mismatch
Signed-off-by: cui fliter <imcusg@gmail.com>
2023-04-16 18:29:45 +08:00
Dan Winship
a96358ac0f Remove some useless error checks
Don't return errors in the event of programmer errors, and don't
double-check things that were already validated.
2023-04-13 19:50:26 -04:00
Andy Goldstein
432a3016a4 Revert "Merge pull request #113151 from ncdc/refactor-crd-conversion"
This reverts commit f524d765f4, reversing
changes made to c2b5457dfa.
2023-04-13 11:27:39 -04:00
Kubernetes Prow Robot
c3e3ff989a
Merge pull request #116896 from thockin/apimachinery_util_diff_cleanup
apimachinery util/diff cleanups
2023-04-13 02:26:37 -07:00
Kubernetes Prow Robot
caad9d5630
Merge pull request #116593 from danwinship/proxy-unused-cleanup
remove some dead code in cmd/kube-proxy
2023-04-12 14:54:44 -07:00
Kubernetes Prow Robot
5d8c99a6fe
Merge pull request #117138 from tosi3k/job-syncs
Add `--concurrent-job-syncs` flag to kube-controller-manager
2023-04-12 09:58:42 -07:00
Tim Hockin
bc302fa414
Replace uses of ObjectReflectDiff with cmp.Diff
ObjectReflectDiff is already a shim over cmp.Diff, so no actual output
or behavior changes
2023-04-12 08:48:03 -07:00
Dan Winship
be101a748d Remove some unused winkernel arguments/fields/functions
The winkernel proxy was originally created by copying+pasting from the
iptables code, but some iptables-specific things were never removed
(and one function got left behind after its functionality was moved
into the shared proxy code).
2023-04-12 09:41:38 -04:00
Dan Winship
8a790ac2e1 Remove unused ProxyServer.EventClient field
The port to Events v1 left some cruft behind.
2023-04-12 09:41:38 -04:00
Dan Winship
9754386c76 Remove write-only ProxyServer fields 2023-04-12 09:41:37 -04:00
Antoni Zawodny
c69689659a Add --concurrent-job-syncs flag to kube-controller-manager 2023-04-12 14:19:39 +02:00
Kubernetes Prow Robot
2308086e29
Merge pull request #116503 from codetalks-new/br_fix_text
[fix][typing] startResourceClaimController errrorf message has typos
2023-04-11 23:18:31 -07:00
Kubernetes Prow Robot
1acc2b4ae0
Merge pull request #117169 from tukwila/etcd_version
supported version of etcd 3.5.7-0 for Kubernetes v1.27.0-rc.0
2023-04-11 21:17:19 -07:00
Kubernetes Prow Robot
7da3893003
Merge pull request #117102 from ardaguclu/move-genericiooptions
Move genericclioptions.IOStreams to genericiooptions.IOStreams
2023-04-11 20:21:17 -07:00
Kubernetes Prow Robot
dcf3792310
Merge pull request #116730 from danwinship/network-owners
sig-network OWNERS fixups
2023-04-11 18:19:44 -07:00
Kubernetes Prow Robot
61457b939d
Merge pull request #116648 from ncdc/admission-clients
admission ApplyTo: take in clients
2023-04-11 18:18:41 -07:00
Kubernetes Prow Robot
19042c6071
Merge pull request #116605 from danwinship/hollow-proxy
Move hollow_proxy.go from pkg/kubemark to pkg/proxy/kubemark
2023-04-11 18:18:30 -07:00
Kubernetes Prow Robot
779abe6ebe
Merge pull request #115399 from 3u13r/feat/documentTLS13Exception
Add note about TLS 1.3 cipher suites
2023-04-11 15:35:27 -07:00