首页 > 其他分享 >部署Kubernetes遇到的问题与解决方法(初始化等)

部署Kubernetes遇到的问题与解决方法(初始化等)

时间:2023-05-05 10:37:15浏览次数:36  
标签:初始化 Kubernetes kubernetes kubelet 部署 etc coredns kube 节点

Kubelet和control plane版本不对应:

[ERROR KubeletVersion]: the kubelet version is higher than the control plane version. This is not a supported version skew and may lead to a malfunctional cluster. Kubelet version: "1.19.4" Control plane version: "1.18.6"
解决:
#卸载重装对应的低版本
yum -y remove kubelet
yum -y install kubelet-1.18.6 kubeadm-1.18.6

 

master节点初始化之后执行 kubectl cluster-info 显示Unable to connect to the server:

Unable to connect to the server: x509: certificate signed by unknown authority (possibly because of "crypto/rsa: verification error" while trying to verify candidate authority certificate "kubernetes")

原因:

Kebeadm init之后不删除元来文件并又新生成$HOME/.kube,重复了。要删干净文件后重新初始化。
解决:
#master节点执行:
rm -rf $HOME/.kube   #删掉所有文件
#重新执行生成文档:
mkdir -p $HOME/.kube
sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
sudo chown $(id -u):$(id -g) $HOME/.kube/config
kubectl cluster-info

 

master节点:执行 kubectl get cs 显示unhealthy。变成healthy

步骤:
kubectl get cs
解决:

#改配置文件
#Master节点修改:
#vi /etc/kubernetes/manifests/kube-controller-manager.yaml
/etc/kubernetes/manifests/kube-scheduler.yaml
#两个文件都注释掉--port=0这个设置

 worker节点:The connection to the server localhost:8080 was refused - did you specify the right host or port?

[root@localhost kubelet.service.d]# kubectl get nodes
W1116 20:29:22.881159 20594 loader.go:223] Config not found: /etc/kubernetes/admin.conf
The connection to the server localhost:8080 was refused - did you specify the right host or port?

解决:

#Master节点执行:
scp /etc/kubernetes/admin.conf [email protected]:/etc/kubernetes/admin.conf
#Node节点执行:
echo "export KUBECONFIG=/etc/kubernetes/admin.conf" >> ~/.bash_profile
source ~/.bash_profile

 

worker节点:不显示节点名称;两个节点名称一样只显示一个

解决:

hostnamectl set-hostname node2
hostname

 

重置kubeadm初始化/配置

Kubeadm reset
rm -rf /var/lib/cni/ /var/lib/etcd/
rm -rf /var/lib/kubelet /etc/kubernetes/
重新kubeadm init 和kubeadm join

worker节点执行 kubectl get nodes显示Not ready。变成ready:解决:

#Master和worker节点执行:
vi /var/lib/kubelet/kubeadm-flags.env:将“--network-plugin=cni”删掉
#重启:
systemctl daemon-reload
systemctl restart kubelet

 

kubeadm init初始化报错,无法拉取镜像:[ERROR ImagePull]: failed to pull image registry.aliyuncs.com/google_containers/coredns/coredns:v1.8.0
解决:

docker pull registry.aliyuncs.com/google_containers/coredns:1.8.0
docker tag registry.aliyuncs.com/google_containers/coredns:v1.8.0 registry.aliyuncs.com/google_containers/coredns/coredns:v1.8.0
docker rmi registry.aliyuncs.com/google_containers/coredns:1.8.0

 


原文链接:http://www.shanhubei.com/archives/2596.html

标签:初始化,Kubernetes,kubernetes,kubelet,部署,etc,coredns,kube,节点
From: https://www.cnblogs.com/shanhubei/p/17373379.html

相关文章

  • gitlab的主分支由master改为main后,怎么初始化项目
    1.如果从来没有在当前电脑添加git账户,则gitconfig--globaluser.name'用户名'gitconfig--globaluser.email'邮箱'2.初始化gitinit3.与远程仓库建立联系gitremoteaddorigin你的代码地址4.先拉一下代码gitpull--rebase originmain5.修改分支名称(如果先修改,......
  • Kubernetes资源对象管理
    API对象:也就是K8S的资源对象,是K8S集群中的管理操作单元。K8S集群系统每支持一项新功能,引入一项新技术,一定会新引入对应的API对象,支持对该功能的管理操作。一、Kubernetes资源对象查询1.1查询资源类型#列出当前集群中所有的资源类型kubectlapi-resources   字段说明NAME:资......
  • Linux部署Oracle 12c
    需求描述如何从Oracle官网上下载Oracle数据库之前的版本,例如Oracle12c?目前官网上进去只找到了21和18,那其他的版本呢?如何找到并下载?解决方法1在OracleSoftwareDeliveryCloud里搜索oracledatabase12c注:链接地址为:/*https://edelivery.oracle.com/osdc/faces/SoftwareDel......
  • java基础-数组的定义,静动态初始化,数组元素的相关操作、数组的内存图
    一、什么是数组数组指的是一种容器,可以用来存储同种数据类型的多个值。数组容器在存储数据的时候,需要结合隐式转换考虑。例如:int类型的数组容器,只能存储byte、short、int类型的数据。(byte<short<int<long<float<double)例如:double类型的数组容器,可以存储byte、short、int、long......
  • docker部署
    使用Docker在CentOSLinuxrelease7.9.2009服务器上部署MySQL和Redis是一个非常好的选择,因为它可以让你更轻松地管理和维护服务。以下是如何使用Docker完成这两个数据库服务的安装:安装必要的依赖:kotlinCopycodesudoyuminstall-yyum-utilsdevice-mapper-persi......
  • 4款支持私有部署的国产办公软件,安全又好用
    我们每天工作接触最多的就是电脑,但不少在政府、国企、大企业出于安全性考虑采用内网环境办公,无法使用基于Saas部署的办公软件,影响工作效率。废话不多说,下面分享四款支持私有部署的国产办公软件,支持内网环境使用,安全又实用。 一、石墨文档  石墨文档是一款基于云端的国产......
  • 部署Kubeadm遇到的哪些问题,并且如何解决
    1)设置错误导致kubeadm安装k8s失败提示:ERRORFileContent–proc-sys-net-bridge-bridge-nf-call-iptables[root@node01data]#kubeadmjoinmasterIP地址:6443--tokenabcdef.0123456789abcdef>--discovery-token-ca-cert-hashsha256:e7a08a24b68c738cccfcc3ae56b7a433......
  • k8s-外置ETCD集群部署
    如何把ETCD的数据库备份,以及还原的操作方法(待更新中)地址:Etcd是一个分布式键值存储系统,Kubernetes使用Etcd进行数据存储,所以先准备一个Etcd数据库,为解决Etcd单点故障,应采用集群方式部署,这里使用3台组建集群,可容忍1台机器故障。为了节省机器,这里把3个ETCD实例分别部署在一个Matse......
  • 告别繁冗,走向专业!前后端分离部署的主要内容介绍
    当前,前后端分离已经成为行业发展趋势。那么,什么是前后端分离?前后端分离部署的内容都有哪些?如果想告别繁冗,朝着更专业、更简洁的方向迈进,那么,做好前后端分离也是顺其自然的事。今天,我们就一起来探讨前后端分离部署的相关内容知识,希望能给屏幕前的你一些启发。1、什么是前后端分离?......
  • 【SpringBoot】【一】 加载初始化器、监听器详解
    1 前言本节主要讲下SpringBoot启动的时候,加载初始化器、监听器的过程哈。2 加载时机我们先来看下加载的时机,也就是什么时候加载的呢,就是我们SpringBoot启动的时候,创建SpringApplication的时候就会去加载的,我们看下:@SpringBootApplicationpublicclassDemoApplicati......