1、部署k8s的两种方式:kubeadm和二进制源码安装#本次实验采用的部署Kubernetes方式:kubeadmKubeadm是一个K8s部署工具,提供kubeadminit和kubeadmjoin,用于快速部署Kubernetes集群。2、环境准备#服务器要求:建议最小硬件配置:2核CPU、2G内存、20G硬盘服务器最好可以访问外网,会有从网上拉取镜像需求,如果服务器不能上网,需要提前下载对应镜像并导入节点#软件环境:操作系统:CentOSLinuxrelease7.8.2003(Core)Docker:20.10.16K8s:1.23名称IPmaster192.168.32.128no
这一篇能节省你在 kubeadminit时遇到问题的排错时间⌚️。整合了网上大佬的方案🧍♂️和官方建议⚠️。个人被这个问题折磨了好久😭,希望总结出来能帮助到大家~目录自定义配置文件初始化的建议关注配置: advertiseAddressimageRepositorynodeRegistration.criSocket 解决:thisversionofkubeadmonlysupportsdeployingclusterswiththecontrolplaneversion>=1.26.3.Currentversion:v1.22解决:failedtopullimageregi
按说,使用kubeadm搭建k8s集群最权威的方法、步骤,应该是直接参考kubeadm官网,里边描述了从OS基础配置到containerd,再到kubeadm安装、init&join的全过程。只是,kubernetes的官网对整个过程的描述并不是一种stepbystep的方式,而是把相关的步骤分散于各个富含上下文知识的页面中,它在描述操作方法的同时,讲了很多原理、注意事项及异常处理之类的内容。如果我们想弄清楚整个过程的操作步骤,需要不断地在各个网页中穿梭,浏览遍历。我们在顺利完成环境搭建的的同时,也知道了它的许多运维技巧和运行原理。对学习来说,这可能是正统的方式,因为这样可以让我们深谙操作步骤
文章目录一、背景二、创建Token三、管理Token四、获取CA证书Hash值五、Node节点加入K8s集群一、背景Token是Node节点用来连接Master节点的令牌字串,它和CA证书的Hash值是把一台Node节点加入到K8s集群时使用的凭证。如下图所示:在K8s1.8之后,默认生成的Token有效期只有24小时,过期后Token将不可用,如果想新的Node节点加入K8s集群,则需重新生成新的Token。生产环境中我们一般都会采用默认的有效期即可(目的是为了K8s集群的安全),当然你也可以生成永久有效的Token(但不建议)。二、创建Token1、生成默认24小时Tokenkubeadm
目录一、集群规划二、系统初始化准备(所有节点同步操作)三、安装并配置cri-docker插件四、安装kubeadm(所有节点同步操作)五、初始化集群六、Node节点添加到集群七、安装网络组件Calico八、测试codedns解析可用性一、集群规划环境规划:pod网段:10.244.0.0/16service网段:10.10.0.0/16注意:pod和service网段不可冲突,如果冲突会导致K8S集群安装失败。容器运行时本次使用containerd。主机名IP地址操作系统master-1192.168.1.2CentOS7.8node-1192.168.1.3CentOS7.8node-219
运行kubeadminit--configkubeadm.yaml完整报错如下:[root@m1~]#kubeadminit--configkubeadm.yaml[init]UsingKubernetesversion:v1.25.0[preflight]Runningpre-flightchecks[WARNINGHostname]:hostname"node"couldnotbereached[WARNINGHostname]:hostname"node":lookupnodeon114.114.114.114:53:nosuchhosterrorexecutionphaseprefli
目录常见问题一,error:failedtorunKubelet:failedtocreatekubelet:misconfiguration:kubeletcgroupdriver:“systemd”isdifferentfromdockercgroupdriver:“cgroupfs” 常见问题二、error:“Failedtoloadkubeletconfigfile”err=“failedtoloadKubeletconfigfile/var/lib/kubelet/config.yaml”常见问题一,error:failedtorunKubelet:failedtocreatekub
k8s-kubernetes证书过期替换之kubeadm命令certsrenewall方式大纲基础概念证书替换测试使用kubeadmalphacertsrenewall更新证书重启所有组件和kubelet.service生成kubelet-client-current.pem证书测试替换后集群是否正常工作基础概念本次测试使用的k8s集群使用kubeadm创建单master节点并且版本为17操作系统ubuntu18k8s集群之间的访问会使用到证书,如果使用kubeadm搭建的集群,默认CA证书的有效期为10年,其他组件访问证书的有效期为1年。如果过期后没有更新证书可能会引起k8s集群的不可用例如
问题:[root@master:~]kubeadminit--image-repositoryregistry.aliyuncs.com/google_containers--pod-network-cidr=10.244.0.0/16-[init]UsingKubernetesversion:v1.24.1[preflight]Runningpre-flightcheckserrorexecutionphasepreflight:[preflight]Somefatalerrorsoccurred: [ERRORCRI]:containerruntimeisnotrunning:out
在进行k8s部署时,kubeadm初始化出现如下报错原因是:安装docker或者containerd之后,默认在/etc/containerd/config.toml禁用了CRI,需要注释掉disabled_plugins=[“cri”],否则执行kubeadm进行部署时会报错注释完成后,重启containerd,并重新初始化#重启containerd[root@k8s-master~]#systemctlrestartcontainerd#重置节点[root@k8s-master~]#kubeadmreset#重新初始化[root@k8s-master~]#kubeadminit--conf