Commit Graph

10935 Commits

Author SHA1 Message Date
Kubernetes Prow Robot
610b7839a0
Merge pull request #111399 from Argh4k/i-111290
Modify timeout for etcd healthcheck
2022-07-27 07:36:28 -07:00
Jakub Przychodzeń
7dd4e89a99 Enable 'running_managed_controllers' for KCM nodeipam controller 2022-07-27 14:30:40 +00:00
Maciej Wyrzuc
b42045a64f Add additional etcd check to readyz with 2 seconds timeout. 2022-07-27 12:23:02 +00:00
Dave Chen
819c12276b kubeadm: move getClientSet to cmd utils
`getClientSet` is used by both cmd `token` and `reset`, move this
method to cmd utils to decouple it from one specific cmd.

Signed-off-by: Dave Chen <dave.chen@arm.com>
2022-07-27 15:13:09 +08:00
Davanum Srinivas
a9593d634c
Generate and format files
- Run hack/update-codegen.sh
- Run hack/update-generated-device-plugin.sh
- Run hack/update-generated-protobuf.sh
- Run hack/update-generated-runtime.sh
- Run hack/update-generated-swagger-docs.sh
- Run hack/update-openapi-spec.sh
- Run hack/update-gofmt.sh

Signed-off-by: Davanum Srinivas <davanum@gmail.com>
2022-07-26 13:14:05 -04:00
Kubernetes Prow Robot
96a32be18d
Merge pull request #111394 from SataQiu/cleanup-20220725
kubeadm: prefer to use pkg/errors package and cleanup fmt.Errorf
2022-07-26 09:11:09 -07:00
Kubernetes Prow Robot
28fc2991a5
Merge pull request #111317 from wojtek-t/fix_leaking_goroutines_12
Clean shutdown of cloud controllers in integration tests
2022-07-26 04:45:09 -07:00
SataQiu
6cab9800a7 kubeadm: prefer to use pkg/errors package and cleanup fmt.Errorf 2022-07-26 16:56:16 +08:00
ialidzhikov
cb4a3d2ca4 Update the feature state in the help text of the --seccomp-default flag 2022-07-26 10:53:24 +03:00
Aldo Culquicondor
cdb0b6babf Mark enable-taint-manager CLI flag as deprecated
Change-Id: Ib0247e034def837f973b69c55ed6bc9486bd364e
2022-07-25 17:04:06 -04:00
Kubernetes Prow Robot
17efdc6efb
Merge pull request #111377 from chendave/v1beta3
No need to assert an error when the error is not nil
2022-07-25 12:22:45 -07:00
Lukasz Szaszkiewicz
81dec8bc6a kubeadm: pass etcd progress notification flag to etcd
The experimental-watch-progress-notify-interval flag specifies an interval
at which etcd sends data to the kube-api server.

It is used by the WatchBookmark feature which is GA since 1.17.
It will be used by a new WatchList feature which is Alpha since 1.25

In addition to that the feature was graduated to GA (non-experiment) in etcd 3.5 without any code changes
2022-07-25 12:28:51 +02:00
Wojciech Tyczyński
1f4f98e40d Clean shutdown of cloud controllers in integration tests 2022-07-25 11:28:50 +02:00
Dave Chen
79cac48b30 No need to assert an error when the error is not nil
Signed-off-by: Dave Chen <dave.chen@arm.com>
2022-07-25 12:26:35 +08:00
Kubernetes Prow Robot
287888b191
Merge pull request #111330 from marosset/use-pause-3.8
Switching everything to use pause:3.8
2022-07-21 18:28:48 -07:00
Mark Rossetti
40f3e624a6 Switching everything to use pause:3.8
Signed-off-by: Mark Rossetti <marosset@microsoft.com>
2022-07-21 14:53:15 -07:00
Jakub Przychodzeń
49553a46bd 'running_managed_controllers' for KCM/CCM for cloud-node-lifecycle controller 2022-07-21 13:18:56 +00:00
Kubernetes Prow Robot
122254fc01
Merge pull request #111210 from chymy/kubeadm-fix-typo
kubeadm: fix comment typo
2022-07-18 21:56:34 -07:00
Kubernetes Prow Robot
1c1efde70d
Merge pull request #109639 from Abirdcfly/fixduplicateimport
cleanup: remove all duplicate import
2022-07-18 16:55:23 -07:00
Kubernetes Prow Robot
8af2c50201
Merge pull request #110762 from pandaamanda/windows_default_proxy
kube-proxy: kernelspace mode is announced to be default for windows
2022-07-18 11:45:15 -07:00
Kubernetes Prow Robot
5108b0a3a0
Merge pull request #111189 from Octopusjust/k8s-pr4
Add testcases for cmd/kubeadm/app/util/net.go and version.go
2022-07-18 02:49:27 -07:00
chymy
a1fd50d53a kubeadm: fix comment typo
Signed-off-by: chymy <chang.min1@zte.com.cn>
2022-07-18 16:48:29 +08:00
Octopusjust
db0bfd8727
Update version_test.go
run ./hack/verify-gofmt.sh
2022-07-18 14:15:06 +08:00
pandaamanda
fbe934da21 kube-proxy: kernelspace mode is announced to be default for windows 2022-07-18 01:04:56 +00:00
ZhangYu
ba80421254 Add testcases for cmd/kubeadm/app/util/net.go and version.go 2022-07-16 09:23:48 +08:00
Kubernetes Prow Robot
f8e80d32c0
Merge pull request #111135 from thockin/yamlfmt-print-filenames
Make yamlfmt tool print filenames
2022-07-15 03:46:25 -07:00
Paco Xu
5c0c20a5ea
kubeadm: UnversionedKubeletConfigMap is GAed in v1.25 2022-07-14 20:56:45 +08:00
Tim Hockin
722ebf8dca Make yamlfmt tool print filenames
Otherwise fixing errors YAML is much harder.
2022-07-13 20:33:40 -07:00
Abirdcfly
00b9ead02c cleanup: remove duplicate import
Signed-off-by: Abirdcfly <fp544037857@gmail.com>
2022-07-14 11:25:19 +08:00
Kubernetes Prow Robot
d06fc1e1bb
Merge pull request #111039 from ncdc/resourcequota-update-filter-func
quota: add an update filter
2022-07-13 09:27:50 -07:00
SataQiu
723cadf750 kubeadm: respect user specified image repository when using Kubernetes ci version 2022-07-09 16:24:51 +08:00
Andy Goldstein
a899441484
quota: add an update filter
Fix a TODO to plumb an update filter from above in the resource quota
monitor code that was handling update events for quota-able objects,
instead of hard-coding the logic in the resource quota monitor.

Signed-off-by: Andy Goldstein <andy.goldstein@redhat.com>
2022-07-08 18:39:55 -04:00
Kubernetes Prow Robot
34b9f0dbed
Merge pull request #110998 from chendave/de_dup_kubeadm
kubeadm: De-dup the confirmation on the interactive cmds
2022-07-07 12:46:37 -07:00
Dave Chen
8aeee521e6 kubeadm: De-dup the confirmation on the interactive cmds
Signed-off-by: Dave Chen <dave.chen@arm.com>
2022-07-07 11:51:26 +08:00
Mengjiao Liu
88c6deb778 Update godoc.org to pkg.go.dev in kubeadm 2022-07-07 11:06:13 +08:00
Kubernetes Prow Robot
f88b11897d
Merge pull request #110978 from chendave/dry_run_interactive
kubeadm: Don't ask for input if it's dry run mode
2022-07-06 18:39:33 -07:00
Dave Chen
988b96fcbb kubeadm: Don't ask for input if it's dry run mode
Signed-off-by: Dave Chen <dave.chen@arm.com>
2022-07-06 18:18:53 +08:00
likakuli
74a3b8f4a9 feat: fix a bug thaat not all event be ignored by gc controller
Signed-off-by: likakuli <1154584512@qq.com>
2022-07-04 18:00:54 +08:00
JunYang
842abe9dae Execute the Run function of kubelet, no log output after failure 2022-07-01 22:24:07 +08:00
Kubernetes Prow Robot
fa16bf8e12
Merge pull request #110791 from SataQiu/fix-kubeadm-20220626
kubeadm: fix the bug that configurable KubernetesVersion not respected during kubeadm join
2022-06-30 21:53:34 -07:00
Kubernetes Prow Robot
8b0221708c
Merge pull request #110744 from neolit123/1.25-update-etcd-startup-probe
kubeadm: use non-serializable startup probe for etcd pods
2022-06-30 21:53:22 -07:00
Kubernetes Prow Robot
3eb7b7a48f
Merge pull request #110874 from chendave/fix_debug
kubeadm: Force to disable debug mode for `crictl`
2022-06-30 10:42:20 -07:00
Lubomir I. Ivanov
2829fc03e3 kubeadm: use non-serializable startup probe for etcd pods
As per the etcd maintainers' recommendation - startup probes
shouldn't be serialized, while the liveness probes should be.
2022-06-30 20:26:32 +03:00
SataQiu
2fb1941ae3 kubeadm: improve the error message of getClusterNodeMask func 2022-06-30 20:28:45 +08:00
Dave Chen
c5b22b535b kubeadm: Force to disable debug mode for crictl
Signed-off-by: Dave Chen <dave.chen@arm.com>
2022-06-30 15:08:45 +08:00
SataQiu
5b2d6ca5df kubeadm: fix the bug that configurable KubernetesVersion not respected during kubeadm join 2022-06-30 14:47:33 +08:00
Kubernetes Prow Robot
dafa55be10
Merge pull request #110837 from SataQiu/fix-kubeadm-20220628
kubeadm: support retry mechanism for removing container in reset phase
2022-06-29 05:12:05 -07:00
SataQiu
3889a6cac8 kubeadm: support retry mechanism for removing container in reset phase 2022-06-29 17:54:56 +08:00
Kubernetes Prow Robot
4cd7394252
Merge pull request #110819 from pacoxu/kubeadm-join-doc
kubeadm: update join --discovery-file docs
2022-06-28 19:58:03 -07:00
Paco Xu
0b44750ab9 kubeadm: update join --discovery-file docs(support tokenfile authProvider and exec) 2022-06-28 12:12:29 +08:00
Kubernetes Prow Robot
c7eb5a49ba
Merge pull request #109407 from yxxhero/remove_unused_code_in_kubelet
Clean up unused code in kubelet
2022-06-27 19:16:08 -07:00
John Howard
c6b0652b89
kubelet: silence flag output on errors (#110728)
* kubelet: silence flag output on errors

Currently, the `--help` text is output on kubelet errors. Currently on
my machine this is 280 lines. Typically kubelet is run by systemd or
similar, starting it a loop. This means when an issue is encountered, we
are spammed by 100s of logs per second, masking the real error.

With this PR, the list of all flags is silenced. Users can still access
them by `kubelet --help` as normal. This same `SilenceUsage` is already
set in the api-server command.

* Update cmd/kubelet/app/server.go

Co-authored-by: Paco Xu <paco.xu@daocloud.io>

Co-authored-by: Paco Xu <paco.xu@daocloud.io>
2022-06-27 11:34:59 -07:00
Kubernetes Prow Robot
34b4125351
Merge pull request #110656 from pacoxu/kubeadm-dup-unix
kubeadm: handle dup unix:// prefix in node annotation
2022-06-24 00:21:21 -07:00
Paco Xu
8555f401a0 kubeadm: handle dup unix:// prefix in node annotaiton 2022-06-24 11:16:34 +08:00
Kubernetes Prow Robot
07dfdf0859
Merge pull request #110709 from chendave/fix_renew
kubeadm: Honor `cert-dir` for cert operations
2022-06-23 19:51:19 -07:00
Kubernetes Prow Robot
035f22d781
Merge pull request #110712 from chendave/ignore_args
kubeadm: certs renew doesn't support positional args
2022-06-23 09:09:43 -07:00
Dave Chen
e8e804deaa kubeadm: certs renew doesn't support positional args
Signed-off-by: Dave Chen <dave.chen@arm.com>
2022-06-23 19:52:22 +08:00
Kubernetes Prow Robot
df0af6f7b8
Merge pull request #110736 from Octopusjust/k8s-pr3
Incomplete coverage of test scenarios
2022-06-23 04:33:44 -07:00
Dave Chen
57646c941f kubeadm: Honor cert-dir for cert operations
- `cert-dir` could be specified to a value other than the default value
- we have tests that should be executed successfully on the working cluster

Signed-off-by: Dave Chen <dave.chen@arm.com>
2022-06-23 19:32:20 +08:00
ZhangYu
9f4562c7b6 Incomplete coverage of test scenarios 2022-06-23 11:41:23 +08:00
Kubernetes Prow Robot
e9702cfc1b
Merge pull request #110593 from SataQiu/kubeadm-coredns-20220615
kubeadm: add the preferred pod anti-affinity for CoreDNS Deployment
2022-06-22 09:29:56 -07:00
Kubernetes Prow Robot
fd20191212
Merge pull request #110684 from chymy/fix-typo-for-kubeadm
fix several typo
2022-06-22 08:23:45 -07:00
Kubernetes Prow Robot
4720f0725c
Merge pull request #110531 from Iceber/fix-run-controller-manager
fix the running of the kube-controller-manager
2022-06-21 13:15:55 -07:00
chymy
c8aa25e472 fix several typo
Signed-off-by: chymy <chang.min1@zte.com.cn>
2022-06-21 09:11:41 +00:00
Kubernetes Prow Robot
609db7ed0b
Merge pull request #110635 from chendave/kubeadm_fix
kubeadm: fail faster when the version is not provided
2022-06-19 10:06:03 -07:00
ialidzhikov
0a83f72214 kubelet: Update deprecation messages from 1.24 to 1.25
Signed-off-by: ialidzhikov <i.alidjikov@gmail.com>
2022-06-18 19:45:50 +03:00
yxxhero
7a5af811e7 remove unused code in kubelet
Signed-off-by: yxxhero <aiopsclub@163.com>
2022-06-18 15:03:27 +08:00
Iceber Gu
cac919bca4 fix the running of the kube-controller-manager
Signed-off-by: Iceber Gu <wei.cai-nat@daocloud.io>
2022-06-18 09:24:04 +08:00
Patrick Ohly
4c6338ac0f logs: replace config methods with functions
API types are only supposed to have methods related to serialization.
2022-06-17 20:22:13 +02:00
Patrick Ohly
ea3f25f49b logs: add alpha+beta feature gates
It is useful to have the ability to control whether alpha or beta features are
enabled. We can group features under LoggingAlphaOptions and LoggingBetaOptions
because the configuration is designed so that each feature individually must be
enabled via its own option.

Currently, the JSON format itself is beta (graduated in 1.23) but additional
options for it were only added in 1.23 and thus are still alpha:

  $ go run ./staging/src/k8s.io/component-base/logs/example/cmd/logger.go --logging-format=json --log-json-split-stream --log-json-info-buffer-size 1M --feature-gates LoggingBetaOptions=false
  [format: Forbidden: Log format json is BETA and disabled, see LoggingBetaOptions feature, options.json.splitStream: Forbidden: Feature LoggingAlphaOptions is disabled, options.json.infoBufferSize: Forbidden: Feature LoggingAlphaOptions is disabled]

  $ go run ./staging/src/k8s.io/component-base/logs/example/cmd/logger.go --logging-format=json --log-json-split-stream --log-json-info-buffer-size 1M
  [options.json.splitStream: Forbidden: Feature LoggingAlphaOptions is disabled, options.json.infoBufferSize: Forbidden: Feature LoggingAlphaOptions is disabled]

This is the same approach that was taken for CPUManagerPolicyAlphaOptions and
CPUManagerPolicyBetaOptions.

In order to test this without modifying the global feature gate in a test file,
ValidateKubeletConfiguration must take a feature gate as argument.
2022-06-17 20:22:13 +02:00
Patrick Ohly
1aceac797d logs: make LoggingConfiguration an unversioned API
Making the LoggingConfiguration part of the versioned component-base/config API
had the theoretic advantage that components could have offered different
configuration APIs with experimental features limited to alpha versions (for
example, sanitization offered only in a v1alpha1.KubeletConfiguration). Some
components could have decided to only use stable logging options.

In practice, this wasn't done. Furthermore, we don't want different components
to make different choices regarding which logging features they offer to
users. It should always be the same everywhere, for the sake of consistency.

This can be achieved with a saner Go API by dropping the distinction between
internal and external LoggingConfiguration types. Different stability levels of
indidividual fields have to be covered by documentation (done) and potentially
feature gates (not currently done).

Advantages:

- everything related to logging is under component-base/logs;
  previously this was scattered across different packages and
  different files under "logs" (why some code was in logs/config.go
  vs. logs/options.go vs. logs/logs.go always confused me again
  and again when coming back to the code):

  - long-term config and command line API are clearly separated
    into the "api" package underneath that

  - logs/logs.go itself only deals with legacy global flags and
    logging configuration

- removal of separate Go APIs like logs.BindLoggingFlags and
  logs.Options

- LogRegistry becomes an implementation detail, with less code
  and less exported functionality (only registration needs to
  be exported, querying is internal)
2022-06-17 20:22:13 +02:00
Patrick Ohly
4033e64bf1 kubelet: initialize logging even sooner, return error
After the removal of the dynamic kubelet configuration feature it became
possible to initialize logging directly after configuration parsing. The
advantage is that logs emitted by
kubeletconfigvalidation.ValidateKubeletConfiguration and
`klog.InfoS("unsupported configuration ...` already use the intended log
output.

After the code was originally added, Run was replaced by RunE. Taking advantage
of that and returning an error is cleaner.
2022-06-17 20:06:14 +02:00
Dave Chen
aa5dfd8b28 kubeadm: fail faster when the version is not provided
Signed-off-by: Dave Chen <dave.chen@arm.com>
2022-06-17 16:42:56 +08:00
Kubernetes Prow Robot
4e17f88b7e
Merge pull request #110506 from yangjunmyfm192085/removedockershim-des
Remove the description of the docker shim from the kubelet
2022-06-16 08:54:48 -07:00
JUN YANG
8567f2bd53
Update cmd/kubelet/app/server.go
Co-authored-by: Danielle <dani@builds.terrible.systems>
2022-06-16 08:29:14 +08:00
JunYang
8bfea65f69 Remove the description of the docker shim from the kubelet 2022-06-16 00:01:34 +08:00
Lubomir I. Ivanov
81b3540206 kubeadm: ensure kubelet patch results are in YAML
Once we patch a kubelet configuration file, the patched output
is in JSON. Make sure it's converted back to YAML, given
the kubelet config in the cluster and on disk is always in YAML.

Add unit test for the new function applyKubeletConfigPatches()
2022-06-15 13:38:04 +03:00
SataQiu
299e745127 kubeadm: add the preferred pod anti-affinity for CoreDNS Deployment 2022-06-15 14:38:12 +08:00
tallaxes
4a542609aa
Support more auth strategies in kubeadm join with discovery file (#110553)
* Add support for client-go credential plugins

* Add support for authprovider authentication

* Add support for TokenFile authentication
2022-06-14 08:03:45 -07:00
Kubernetes Prow Robot
4407a02aef
Merge pull request #110560 from lunhuijie/fixTestpki
Incomplete coverage of test scenarios and optimize bad code
2022-06-14 04:53:32 -07:00
10284789刁浩
696d537239 Incomplete coverage of test scenarios and bad code 2022-06-14 07:48:43 +00:00
Kubernetes Prow Robot
f15b0d1bd7
Merge pull request #110489 from pacoxu/kubeadm-coredns-v1.9.3
kubeadm: upgrade coredns to v1.9.3
2022-06-13 12:16:12 -07:00
Kubernetes Prow Robot
48efb361f3
Merge pull request #110323 from Thearas/docs-ephemeral-storage
docs: add `ephemeral-storage` to `SystemReserved`/`KubeReserved` comment
2022-06-10 13:19:44 -07:00
Paco Xu
178dc11b75 kubeadm: upgrade coredns to v1.9.3 2022-06-09 18:45:26 +08:00
Paco Xu
31922c7794 kubeadm: use staticpod known tags for upgrade/init phases 2022-06-09 14:21:48 +08:00
Kubernetes Prow Robot
cfda5bc1d8
Merge pull request #110457 from aojea/class_e_range
unit tests for Class E IP addresses
2022-06-08 10:10:22 -07:00
Kubernetes Prow Robot
0985c476e3
Merge pull request #109995 from wangyysde/fix_issue_2681
add print-manifest flag to print addon manifests to STDOUT
2022-06-08 09:00:22 -07:00
Antonio Ojea
2124f17c72 unit tests for Class E IP addresses 2022-06-08 15:29:48 +02:00
Paco Xu
29aca9692c overwrite known targets in patch manager cache in case it changes 2022-06-08 16:10:41 +08:00
wangyysde
e863ebb6b5 add print-manifest flag to print addon manifests to STDOUT
Signed-off-by: wangyysde <net_use@bzhy.com>
2022-06-08 13:45:37 +08:00
Kubernetes Prow Robot
cd4b8ed070
Merge pull request #110405 from neolit123/1.25-kubelet-config-patches
kubeadm: add support for patching a "kubeletconfiguration" target
2022-06-07 07:05:07 -07:00
Kubernetes Prow Robot
9fad5c981a
Merge pull request #110327 from neolit123/1.25-ga-unversioned-kubelet-config
kubeadm: graduate the UnversionedKubeletConfigMap FG to GA
2022-06-07 07:04:56 -07:00
Lubomir I. Ivanov
2134026e3b kubeadm: allow passing the --patches flag to init/join/node phases
Allow passing the --patches flag to init/join/node phases
relevant to the kubelet writing the config file on disk.
2022-06-06 20:37:27 +03:00
Lubomir I. Ivanov
428c3fe954 kubeadm: document "kubeletconfiguration" as a patch target
Document the "kubeletconfiguration" as a patch target in the
v1beta3 API Init/JoinConfiguration.Patches struct
and also for the --patches flag.
2022-06-06 20:37:26 +03:00
Lubomir I. Ivanov
c3c9fb8608 kubeadm: add unit tests for patching a "kubeletconfiguration" target 2022-06-06 20:37:26 +03:00
Lubomir I. Ivanov
85fb6b01f8 kubeadm: apply patches to the kubelet config before writing it to disk
In phases/kubelet/WriteConfigToDisk() create a patch
manager for the root patches directory and apply
the user patches with a target "kubeletconfiguration".
2022-06-06 20:37:26 +03:00
Lubomir I. Ivanov
665f66d2bc kubeadm: pass io.Writer and "patches dir" to WriteConfigToDisk()
With phases/kubelet/WriteConfigToDisk() about to support patches
it is required that the function accepts an io.Writer
where the PatchManager can output to and also a patch directory.

Modify all call sites of the function WriteConfigToDisk()
to properly prepare an pass an io.Writer and patches dir to it.
This results in command phases for init/join/upgrade to pass
the root io.Writer (usually stdout) and the patchesDir populated
either via the config file or --patches flag.
2022-06-06 20:37:26 +03:00
Kubernetes Prow Robot
70dca66271
Merge pull request #109388 from ialidzhikov/cleanup/experimental-kernel-memcg-notification
kubelet: Remove the deprecated `--experimental-kernel-memcg-notification` flag
2022-06-03 09:30:33 -07:00
Kubernetes Prow Robot
b7b824bb9e
Merge pull request #110033 from mk46/etcd_update_v3.5.4
etcd: Updated to v3.5.4
2022-06-02 13:26:31 -07:00
Lubomir I. Ivanov
1c46686f09 kubeadm: mutate ClusterConfiguration.imageRepository to "registry.k8s.io"
If the user runs "kubeadm upgrade apply", kubeadm can download
a configuration from the cluster. If the configuration contains
the legacy default imageRepository of "k8s.gcr.io", mutate it
to the new default of "registry.k8s.io" and update the
configuration in the config map.

During "upgrade node/diff" download the configuration, mutate the
image repository locally, but do not mutate the in-cluster value.
That is done only on "apply".

This ensures that users are migrated from the old default registry
domain.
2022-06-02 17:37:30 +03:00