Commit Graph

10849 Commits

Author SHA1 Message Date
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
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