Commit Graph

254 Commits

Author SHA1 Message Date
navist2020
2a7e85bfdb Return preflightError if an error occurs when running the preflight 2022-04-20 11:39:35 +08:00
SataQiu
6c57e2fced kubeadm: fix the bug that windows node failed to join IPv6 cluster due to preflight failures
Signed-off-by: SataQiu <shidaqiu2018@gmail.com>
2022-03-17 22:07:08 +08:00
ahrtr
972dc46a1f replace deprecated io/ioutil with os and io for cmd 2022-02-01 13:59:41 +08:00
Kubernetes Prow Robot
8a25964153 Merge pull request #107317 from neolit123/1.24-change-kubeadm-cr-auto-detection
kubeadm: adapt CRI detection and defaults after the dockershim removal
2022-01-17 11:00:50 -08:00
SataQiu
218b4dea9f kubeadm: print warnings to stderr 2022-01-11 23:08:59 +08:00
Lubomir I. Ivanov
936e12c930 kubeadm: do not special case Docker as a container runtime
crictl already works with the current state of dockershim.
Using the docker CLI is not required and the DockerRuntime
can be removed from kubeadm. This means that crictl
can connect at the dockershim (or cri-dockerd) socket and
be used to list containers, pull images, remove containers, and
all actions that the kubelet can otherwise perform with the socket.

Ensure that crictl is now required for all supported container runtimes
in checks.go. In the help text in waitcontrolplane.go show only
the crictl example.

Remove the check for the docker service from checks.go.
Remove the DockerValidor check from checks.go.
These two checks were special casing Docker as CR and compensating
for the lack of the same checks in dockershim. With the
extraction of dockershim to cri-dockerd, ideally cri-dockerd
should perform the required checks whether it can support
a given Docker config / version running on a host.
2022-01-05 21:27:24 +02:00
Hanna Lee
c862d7c0e9 Fix last remaining SA5011 error by removing unnecessary r != nil check 2021-11-17 08:56:01 +01:00
Kubernetes Prow Robot
91f820eee4 Merge pull request #104854 from pacoxu/kubeadm-swap-check
kubeadm: move swap on check error to warning since NodeSwap is beta
2021-09-17 04:57:13 -07:00
SataQiu
d57e442c62 kubeadm: do not check if the /etc/kubernetes/manifests folder is empty on joining worker nodes during preflight
Signed-off-by: SataQiu <shidaqiu2018@gmail.com>
2021-09-14 20:26:04 +08:00
Paco Xu
d57bad5fa9 Update cmd/kubeadm/app/preflight/checks.go
Co-authored-by: Lubomir I. Ivanov <neolit123@gmail.com>
2021-09-14 09:33:12 +08:00
Paco Xu
7007b417e5 kubeadm: move swap on check error to warning since NodeSwap is beta in 1.23 2021-09-14 09:33:12 +08:00
Antonio Ojea
0cd75e8fec run hack/update-netparse-cve.sh 2021-08-20 10:42:09 +02:00
XinYang
72fd01095d re-order imports for kubeadm
Signed-off-by: XinYang <xinydev@gmail.com>
2021-08-17 22:40:46 +08:00
Lubomir I. Ivanov
096c3e8f2d kubeadm: further improve the dynamic version population
Panicing if not running in a test and if the component-base/version
variables are empty is not ideal. At some point sections
of kubeadm could be exposed as a library and if these sections
import the constants package, they would panic on the library
users unless they set the version information in component-base
with ldflags.

Instead:
- If the component-base version is empty, return a placeholder version
that should indicate to users that build kubeadm that something is not
right (e.g. they did not use 'make'). During library usage or unit
tests this version should not be relevant.
- Update unit tests to use hardcoded versions instead of the versions
from the constants package. Using the constants package for testing
is good but during unit tests these versions are already placeholders
since unit tests do not populate the actual component-base versions
(e.g. 1.23).
2021-08-12 19:54:06 +03:00
gkarthiks
019e8f71b6 refactor: normalizing URL string locally and move out from purell package
The purell package at github.com/PuerkitoBio/purell is no longer maintained and in k/k repo under kubeadm package its been used for normalizing the URL. This commit removes the dependency on this package and creates a local function for normalizing the URL within the preflight package under cmd/kubeadm.

Signed-off-by: gkarthiks <github.gkarthiks@gmail.com>

chore: add new line at end of the file

Signed-off-by: gkarthiks <github.gkarthiks@gmail.com>

fix: remove unused mod from vendor modules file

Signed-off-by: gkarthiks <github.gkarthiks@gmail.com>
2021-07-20 21:56:08 +05:30
Lubomir I. Ivanov
f01d251e38 kubeadm: statically default ImagePullPolicy in v1beta3
Instead of dynamically defaulting NodeRegistration.ImagePullPolicy,
which is common when doing defaulting depending on host state - e.g.
hostname, statically default it in v1beta3/defaults.go.

- Remove defaulting in checks.go
- Add one more unit test in checks_test.go
- Adapt v1beta2 conversion and fuzzer / round tripping tests

This also results in the default being visible when calling:
"kubeadm config print ...".
2021-07-05 21:48:06 +03:00
XinYang
c2a8cd359f re-order the imports in kubeadm
Signed-off-by: XinYang <xinydev@gmail.com>

Update cmd/kubeadm/app/cmd/join.go

Co-authored-by: Lubomir I. Ivanov <neolit123@gmail.com>
2021-07-04 16:41:27 +08:00
Lubomir I. Ivanov
3b36e6bcea kubeadm: fix image pull policy integration
If the user has not specified a pull policy we must assume a default of
v1.PullIfNotPresent.

Add some extra verbose output to help users monitor what policy is
used and what images are skipped / pulled.

Use "fallthrough" and case handle "v1.PullAlways".

Update unit test.
2021-06-23 00:52:35 +03:00
wangyysde
459fe7d08a add support of imagePullPolicy to kubeadm
Signed-off-by: wangyysde <net_use@bzhy.com>
2021-06-22 07:13:25 +08:00
Lubomir I. Ivanov
8e5a982442 kubeadm: remove the cgroup driver detection code for Docker
Ideally this should be part of dockershim/CRI and not on the
side of kubeadm.

Remove the detection during:
- During preflight
- During kubelet config defaulting
2021-05-25 22:05:42 +03:00
pacoxu
2c89fa4a59 add hostname check in kubeadm join: warning log only
Co-authored-by: Lubomir I. Ivanov <neolit123@gmail.com>
2021-02-20 09:50:25 +08:00
Xianglin Gao
c6975a7750 add test case for kubeadm memory check
Signed-off-by: Xianglin Gao <xianglin.gxl@alibaba-inc.com>
2020-07-24 10:57:22 +08:00
Xianglin Gao
e5bb66f899 Add a preflight check that the control-plane node has at least 2GB RAM
Signed-off-by: Xianglin Gao <xianglin.gxl@alibaba-inc.com>
2020-07-20 23:58:31 +08:00
Davanum Srinivas
442a69c3bd switch over k/k to use klog v2
Signed-off-by: Davanum Srinivas <davanum@gmail.com>
2020-05-16 07:54:27 -04:00
Prasad Katti
b4e026a1ea kubeadm: update service check log to include service name 2020-04-23 16:51:39 -07:00
tangcong
90481a9596 fix kubeadm staticcheck err 2020-04-21 06:54:42 +08:00
Kubernetes Prow Robot
2fbe432d23 Merge pull request #85857 from hnanni/patch-1
Update checks.go
2019-12-08 09:41:08 -08:00
Lubomir I. Ivanov
bc22d70e2b Revert "kubeadm: don't check if image exists before pulling" 2019-12-05 21:42:12 +02:00
Humberto Nanni
82206578cc Update checks.go
match https://github.com/kubernetes/release/pull/653 add
2019-12-03 11:17:11 -06:00
Ed Bartosh
f6f3738a00 kubeadm: don't check if image exists before pulling
Removed image existence as kubeadm may miss
image tags if they're updated.
2019-11-25 13:00:50 +02:00
Yassine TIJANI
b9fe59c93e remove system validators package from kubeadm and use k8s.io/system-validators instead
Signed-off-by: Yassine TIJANI <ytijani@vmware.com>
2019-11-12 01:09:56 +01:00
Lubomir I. Ivanov
23ba857b50 kubeadm: use the secure ports for kube-scheduler and kcm health checks
The insecure ports were deprecated in 1.12 and 1.13.
2019-11-09 23:21:39 +02:00
Kubernetes Prow Robot
9fa1bc8003 Merge pull request #83422 from yastij/remove-ipallocator
remove ipallocator in favor of k/utils net package
2019-10-22 12:52:13 -07:00
Yassine TIJANI
f984b4c7a2 remove ipallocator in favor of k/utils net package
Signed-off-by: Yassine TIJANI <ytijani@vmware.com>
2019-10-22 18:37:13 +02:00
Kubernetes Prow Robot
c4108c9b4a Merge pull request #83090 from Klaven/rm_validator_errors
Removal of kubernetes error dependencies
2019-10-07 23:35:25 -07:00
Kubernetes Prow Robot
f3981710db Merge pull request #82473 from Nordix/kubeadm-dualstack-service-ip
Kubeadm DualStack Support for List of Service IPs
2019-10-02 11:26:08 -07:00
Marek Counts
114d7855f3 Removal of kubernetes error dependancies
removed kubernetes error deps
2019-09-28 15:09:48 +00:00
Han Kang
866ea74326 remove pkg/version and some of redundant copies of it
Change-Id: Ia58367c1b1274bfb49c8a4784051463abaf795de
2019-09-16 16:24:35 -07:00
Arvinderpal Wander
bacc06d8fc kubeadm --service-cluster-ip-range supports a comma seperated list
of service subnets.

Update DNS, Cert, dry-run logic to support list of Service CIDRs.
Added unit tests for GetKubernetesServiceCIDR and updated
GetDNSIP() unit test to inclue dual-sack cases.
2019-09-16 09:33:43 -07:00
Alexander Kanevskiy
7fb4a2be41 kubeadm: Form correct URL for IPv6 in HTTPProxy check
Force correct syntax on host/port in URL of HTTPProxy check
if the host argument is a raw IPv6 address string
2019-09-03 16:04:04 +03:00
Kubernetes Prow Robot
90cf189152 Merge pull request #81791 from yastij/remove-ipvs-checks
remove the ipvs checks from the preflight checks
2019-08-26 20:55:22 -07:00
Kubernetes Prow Robot
39d5fc7501 Merge pull request #81656 from SataQiu/fix-kubeadm-static-20190820
kubeadm: fix static check failures
2019-08-22 23:27:28 -07:00
SataQiu
7a4cf591ea kubeadm: fix static check failures 2019-08-23 10:51:12 +08:00
Yassine TIJANI
05326f8489 remove the ipvs checks from the preflight checks
Signed-off-by: Yassine TIJANI <ytijani@vmware.com>
2019-08-22 17:10:22 +01:00
Ted Yu
4639ced630 Remove check for addIPv6Checks which evaluates to true 2019-08-20 19:02:29 -07:00
Kubernetes Prow Robot
f17b608157 Merge pull request #81622 from neolit123/kubeadm-remove-blang
kubeadm: do not use github.com/blang/semver in app/preflight
2019-08-20 10:47:28 -07:00
Lubomir I. Ivanov
0a0f6f8eec kubeadm: do not use github.com/blang/semver in app/preflight
Usage of github.com/blang/semver is not needed and
k8s.io/apimachinery/pkg/util/version should be used instead
for semantic version parsing and version comparison.
2019-08-20 14:06:52 +03:00
Ted Yu
158cf5d61a Check the error return from listener close 2019-08-19 09:26:35 -07:00
Kubernetes Prow Robot
e6d4273395 Merge pull request #79033 from Nordix/kubeadm-ds-pod-network-cidr
Dual-Stack Integration with Kubeadm
2019-08-16 05:06:31 -07:00
SataQiu
36bb0b9a53 kubeadm: cleanup unnecessary slice initialization statements 2019-08-12 23:42:56 +08:00