Kubernetes Kubenetes从1.8.7升级到1.13.0 上下文
我们目前在kubernetes(v1.8.7)上有3个稳定的集群。这些集群是由一个外部团队创建的,该团队不再可用,我们的文档也有限。我们正在尝试升级到更高的稳定版本(v1.13.0)。我们知道我们需要一次升级一个版本,所以1.8->1.9->1.10等等 解决问题Kubernetes Kubenetes从1.8.7升级到1.13.0 上下文,kubernetes,upgrade,kubeadm,Kubernetes,Upgrade,Kubeadm,我们目前在kubernetes(v1.8.7)上有3个稳定的集群。这些集群是由一个外部团队创建的,该团队不再可用,我们的文档也有限。我们正在尝试升级到更高的稳定版本(v1.13.0)。我们知道我们需要一次升级一个版本,所以1.8->1.9->1.10等等 解决问题 有关于如何从1.8升级到1.9的建议吗 我们尝试安装kubeadmv1.8.7并运行kubeadm升级计划,但输出失败- [飞行前]运行飞行前检查 无法从文件“/etc/Kubernetes/admin.conf”创建Kubernet
kubeadm升级计划
,但输出失败-
[飞行前]运行飞行前检查
无法从文件“/etc/Kubernetes/admin.conf”创建Kubernetes客户端:未能加载管理员kubeconfig[打开/etc/Kubernetes/admin.conf:没有这样的文件或目录]我们找不到admin.conf文件。关于我们如何重新生成此文件或它需要什么信息,有什么建议吗
apt get install kubelet=1.9.0-00 kubeadm=1.9.0-00 kubectl=1.9.0-00
当我运行kubeadm升级计划v1.9.0时
我明白了
root@k8s-master-dev-0:/home/azureuser#kubeadm升级计划v1.9.0
[飞行前]运行飞行前检查。
[升级]确保群集正常运行:
[升级/运行状况]致命:[飞行前]出现一些致命错误:
[错误APIServerHealth]:API服务器不正常/healthz没有返回“ok”
[ERROR MasterNodesReady]:无法列出群集中的主机:获取https://:6443/api/v1/nodes?labelSelector=节点角色。kubernetes.io%2Fmaster%3D:拨号tcp:6443:getsockopt:连接被拒绝
[飞行前]如果你知道你在做什么,你可以用--ignore preflight errors=。。。
root@k8s-master-dev-0:/home/azureuser#kubectl获取吊舱-n kube系统
名称就绪状态重新启动
heapster-75f8df9884-nxn2z 2/2运行0 42d
kube-addon-manager-k8s-master-dev-0 1/1正在运行2 1d
kube-addon-manager-k8s-master-dev-1 1/1运行4 123d
kube-addon-manager-k8s-master-dev-2 1/1运行2 169d
kube-apiserver-k8s-master-dev-0 1/1运行100 1d
kube-apiserver-k8s-master-dev-1 1/1运行4 123d
kube-apiserver-k8s-master-dev-2 1/1运行2 169d
kube-controller-manager-k8s-master-dev-0 1/1运行3 1d
kube-controller-manager-k8s-master-dev-1 1/1运行4 123d
kube-controller-manager-k8s-master-dev-2 1/1运行4 169d
kube-dns-v20-5d9fdc7448-smf9s 3/3运行0 42d
kube-dns-v20-5d9fdc7448-vtjh4 3/3运行0 42d
kube代理cklcx 1/1运行123d
kube代理dldnd 1/1运行4 169d
kube-proxy-gg89s 1/1运行0 169d
kube代理mrkqf 1/1运行4 149d
kube-proxy-s95mm 1/1运行10 169d
kube-proxy-zxnb7 1/1运行2 169d
kube-scheduler-k8s-master-dev-0 1/1正在运行2 1d
kube-scheduler-k8s-master-dev-1 1/1运行6 123d
kube-scheduler-k8s-master-dev-2 1/1运行4 169d
kubernetes-dashboard-8555bd85db-4txtm 1/1运行0 42d
tiller-deploy-6677dc8d46-5n5cp 1/1运行0 42d
让我们分步进行,首先在集群中生成admin.conf文件:
您可以使用以下命令生成admin.conf文件:
kubeadm alpha phase kubeconfig admin --cert-dir /etc/kubernetes/pki --kubeconfig-dir /etc/kubernetes/
现在,您可以查看以下关于如何通过kubeadm升级kubernetes cluster的答案(答案适用于1.10.0到1.10.11,但也适用于1.8到1.9,您只需要更改下载包的版本)
希望这有帮助
有关于如何从1.8升级到1.9的建议吗
绝对kubeadm
我们试图安装kubeadmv1.8.7并运行kubeadm升级计划,但它失败了
输出失败-
[飞行前]运行飞行前检查无法创建Kubernetes
文件“/etc/kubernetes/admin.conf”中的客户端:未能加载管理员
kubeconfig[open/etc/kubernetes/admin.conf:没有这样的文件或
目录]我们找不到admin.conf文件。有什么建议吗
我们可以重新生成它,或者它需要什么信息
kubeadm
需要几件事:
kube系统
名称空间中的kubeadm配置
ConfigMap。如果存在这种情况,你应该能够相对无痛地继续下去
如果这不存在,您需要继续创建它
kubeadm配置从标志上传将是一个很好的起点。您可以从您的systemd
单位文件中指定kubelet
标志,它会使您保持良好状态
其次,kubeadm
需要一个带有凭证的conf文件。我想在你的/etc/kubernetes
目录的某个地方有一个这样的东西;所以四处看看吧
此文件将类似于您的本地kubeconfigs,从以下内容开始:
apiVersion: v1
clusters:
- cluster:
certificate-authority-data:
谢谢它确实生成了文件。但是现在,当我们运行升级命令时,就会发生这种情况-root@k8s-master-dev-0:/home/azureuser#kubeadm升级计划v1.9.0[飞行前]运行飞行前检查[升级]确保群集正常:[升级/运行状况]检查API服务器运行状况:不正常[升级/运行状况]致命:群集未处于可升级状态,原因是:API服务器不正常/healthz没有返回“ok”
Als
apiVersion: v1
clusters:
- cluster:
certificate-authority-data: