【发布时间】:2020-01-14 22:09:42
【问题描述】:
我已经尝试安装 minikube 两天了。我遇到了一个又一个问题。这个让我难过。
- 在 Windows 10 上安装 minikube
- Docker 已经使用 hyperv 运行数月了
- 使用 choco 关注 windows,忽略 hyperv 安装的所有内容。
W0107 08:23:27.485052 3337 common.go:77] 您的配置文件使用了已弃用的 API 规范:“kubeadm.k8s.io/v1beta1”。请使用 'kubeadm config migrate --old-config old.yaml --new-config new.yaml',它将使用更新的 API 版本编写新的、类似的规范。
据我了解,有一个新配置。我需要迁移到。为此,我需要使用 kubeadm,但我无法找到有关在何处找到这些文件或如何进行迁移的任何信息。这是我尝试过的。
我从提升的命令提示符运行:
- minikube ssh
然后我在以下目录中找到了kubeadm。
- cd /var/lib/minikube/binaries/v1.17.0
我从哪里开始向它抛出一些随机命令以希望得到一些帮助
$ ./kubeadm version
kubeadm version: &version.Info{Major:"1", Minor:"17", GitVersion:"v1.17.0", GitCommit:"70132b0f130acc0bed193d9ba59dd186f0e634cf", GitTreeState:"clean", BuildDate:"2019-12-07T21:17:50Z", GoVersion:"go1.13.4", Compiler:"gc", Platform:"linux/amd64"}
$ ./kubeadm config view
failed to load admin kubeconfig: open /home/docker/.kube/config: no such file or directory
To see the stack trace of this error execute with --v=5 or higher
$ ./kubeadm init --config defaults
unable to read config from "defaults" : open defaults: no such file or directory
To see the stack trace of this error execute with --v=5 or higher
正如错误消息所说的那样,我试了一下。那也没用
$ ./kubeadm config migrate --old-config old.yaml --new-config new.yaml
open old.yaml: no such file or directory
To see the stack trace of this error execute with --v=5 or higher
在翻阅日志后,我发现它正在尝试加载以下配置文件,因此我尝试将其加载为旧配置文件,希望它足够聪明,可以制作自己的新配置文件。
./kubeadm config migrate --old-config /var/tmp/minikube/kubeadm.yaml --new-config new.yaml
open /var/tmp/minikube/kubeadm.yaml: permission denied
To see the stack trace of this error execute with --v=5 or higher
好的,然后让我们检查文件的权限
$ ls -la /var/tmp/minikube/kubeadm.yaml
-rw-r----- 1 root root 1156 Jan 1 0001 /var/tmp/minikube/kubeadm.yaml
那不好,让我们尝试更新它
$ chmod u=r /var/tmp/minikube/kubeadm.yaml
chmod: changing permissions of '/var/tmp/minikube/kubeadm.yaml': Operation not
permitted
好的
$ sudu chmod u=r /var/tmp/minikube/kubeadm.yaml
-bash: sudu: command not found
编辑 sudo
$ sudo chmod u=r /var/tmp/minikube/kubeadm.yaml
$ ls -la /var/tmp/minikube/kubeadm.yaml
-r--r----- 1 root root 1156 Jan 1 0001 /var/tmp/minikube/kubeadm.yaml
更新 777
$ sudo chmod 777 /var/tmp/minikube/kubeadm.yaml
$ ls -la /var/tmp/minikube/kubeadm.yaml
-rwxrwxrwx 1 root root 1156 Jan 1 0001 /var/tmp/minikube/kubeadm.yaml
fig new.yamlconfig migrate --old-config /var/tmp/minikube/kubeadm.yaml --new-conf
W0107 13:19:23.298409 4361 validation.go:28] Cannot validate kube-proxy config - no validator is available
W0107 13:19:23.298437 4361 validation.go:28] Cannot validate kubelet config - no validator is available
failed to write the new configuration to the file "new.yaml": open new.yaml: permission denied
To see the stack trace of this error execute with --v=5 or higher
仍然没有骰子。这似乎是一个非常有限的 bash shell。
有一个文件
好的,感谢一些 chmod 777,我知道有一个文件,但我该怎么处理它?
./kubeadm config migrate --old-config /var/tmp/minikube/kubeadm.yaml --new-config /home/docker/new.yaml
W0107 13:22:21.615314 6352 validation.go:28] Cannot validate kube-proxy config - no validator is available
W0107 13:22:21.615375 6352 validation.go:28] Cannot validate kubelet config - no validator is available
似乎很少或没有关于如何处理这个问题的文档我已经在论坛上交叉发布了这个问题。 #6227 任何帮助将不胜感激。我尝试删除 minikube 并再次添加它,结果相同。
当前状态
sudo chmod 777 /var/tmp/minikube/kubeadm.yaml
ls -la /var/tmp/minikube/kubeadm.yaml
cd /var/lib/minikube/binaries/v1.17.0
./kubeadm config migrate --old-config /var/tmp/minikube/kubeadm.yaml --new-config /home/docker/new.yaml
sudo chmod 777 /var/tmp/minikube
mv /var/tmp/minikube/kubeadm.yaml /var/tmp/minikube/kubeadmold.yaml
mv /home/docker/new.yaml /var/tmp/minikube/kubeadm.yaml
minikube start --vm-driver=hyperv --v=7 --alsologtostderr
没有改变同样的错误信息。
1.16.0
C:\Windows\system32>minikube start --vm-driver=hyperv --kubernetes-version=1.16.0
* minikube v1.6.0 on Microsoft Windows 10 Pro 10.0.18363 Build 18363
* Selecting 'hyperv' driver from user configuration (alternates: [])
* Creating hyperv VM (CPUs=2, Memory=2000MB, Disk=20000MB) ...
! Unable to verify SSH connectivity: dial tcp: address fe80::215:5dff:fe37:c505:22: too many colons in address. Will retry...
! Unable to verify SSH connectivity: dial tcp: address fe80::215:5dff:fe37:c505:22: too many colons in address. Will retry...
! Unable to verify SSH connectivity: dial tcp: address fe80::215:5dff:fe37:c505:22: too many colons in address. Will retry...
! Unable to verify SSH connectivity: dial tcp: address fe80::215:5dff:fe37:c505:22: too many colons in address. Will retry...
! Unable to verify SSH connectivity: dial tcp: address fe80::215:5dff:fe37:c505:22: too many colons in address. Will retry...
! Unable to verify SSH connectivity: dial tcp: address fe80::215:5dff:fe37:c505:22: too many colons in address. Will retry...
X minikube is unable to connect to the VM: dial tcp: address fe80::215:5dff:fe37:c505:22: too many colons in address
This is likely due to one of two reasons:
- VPN or firewall interference
- hyperv network configuration issue
Suggested workarounds:
- Disable your local VPN or firewall software
- Configure your local VPN or firewall to allow access to fe80::215:5dff:fe37:c505
- Restart or reinstall hyperv
- Use an alternative --vm-driver
【问题讨论】:
-
1.您想将 kubeconfig 从 Linux Minikube 迁移到 Windows Minikube? 2. 你在使用 Docker for Windows 吗? 3.您是否根据此文档安装了
Minikube:minikube.sigs.k8s.io/docs/start/windows? 4. 你用的是 Ubuntu / Debian / CentOS 还是其他的? 5. 你可能打错了sudu而不是sudo。 -
1.我想在 Windows 10 上安装 minikube。 2. 是的,我已经使用 docker for windows 很长时间了。 3.是的,完全符合。 - 与 hyperv 相关的一切,因为它已经安装了。 4. 不知道这些是我在 Windows 10 上的 Linux 发行版。 5. 使用 sudo 检查编辑没有骰子
-
根据kubernetes.io/docs/setup/release/notes/…,此 apiVersion 在 1.17 中已删除。你可以在 K8s 1.16 上运行它吗?
-
@PjoterS 这是我第一次自己使用 k8s,我不知道你在问什么。我只是按照说明进行操作。我只想让 k8s 在我的机器上运行,这样我就可以学习如何使用它,而无需支付谷歌云时间。是不是有一个命令可以安装它并让它运行?听起来你说如果你想让我去旧版本的话,它在 Windows 上根本不起作用。我做了一个复数课程,说要使用 minikube。
-
我的意思是尝试安装 Kubernetes v.1.16,因为 v.1.17 于 2019 年 12 月 9 日发布,一些更改可能不包含在课程中。我确信你可以在 Windows 上运行 Minikube。我需要在 Windows 上尝试一下。
标签: kubernetes windows-10 minikube