Kubernetes_APIServer_APIServer
全部标签问题起因近段时间,在工作中,遇到了一个问题:有一套K8S集群在做可靠性验证,在重启上下电之后,发现这个节点上的Pod状态异常。通过kubectldescribe查看Pod情况,都是挂卷出错,而kubelet日志中也报了某个CSI插件没有找到。但问题是CSI插件对应的Pod是正常Running状态。那么为什么CSI会找不到呢?于是带着这个问题,研究起了k8s的代码。代码分析CSI没有找到,那意味着肯定是有地方储存CSI的数据,相应的有地方去创建/更新CSI的数据。这个咨询CSI业务的开发了解到,CSI注册后会更新csiNode资源,同时node资源上也会有csi的拓扑信息。另外根据kubelet
Kubernetes集群安装完毕后随带许多(Namespace)命名空间。一些命名空间很重要,事关你的Kubernetes使用是否正常!搞坏其中一个命名空间即会损坏Kubernetes系统。这些命名空间包括如下:default:默认的命名空间。kube-system:系统为对象创建的命名空间。kube-public:该命名空间是自动创建的,所有用户(包括未验证身份的用户)都可以读取。该命名空间主要留给集群使用,以防某些资源在整个集群中应该可见、公开可读。这对于提供引导组件所需的集群信息都很有用。它主要由Kubernetes本身来管理。kube-node-lease:该命名空间含有与每个节点关
【现象】k8s的mster-01一直显示NotReady【报错】[root@DoM01kubernetes]#journalctl-ukubelet.service-f--Logsbeginat二2022-10-1817:57:42CST.--10月2515:53:15DoM01kubelet[142829]:Flag--cgroup-driverhasbeendeprecated,ThisparametershouldbesetviatheconfigfilespecifiedbytheKubelet's--configflag.Seehttps://kubernetes.io/docs/t
一、基础环境配置(所有主机操作)主机名规划序号 主机ip 主机名规划1 192.168.1.30 kubernetes-master.openlab.cn kubernetes-master2 192.168.1.31 kubernetes-node1.openlab.cn kubernetes-node13 192.168.1.32 kubernetes-node2.openlab.cn kubernetes-node24 192.168.1.33 kubernetes-node3.openlab.cn kubernetes-node35 192.16
1.Kubernetes容器概述容器能够有效地虚拟化主机操作系统(或内核)并将应用程序的依赖项与同一台机器上运行的其他容器隔离开。在容器出现之前,在同一个虚拟机(VM)上部署了多个应用程序,共享依赖项的任何更改都可能导致奇怪的事情发生,从而导致排障较为困难。容器主要通过两个部分解决这个问题:容器引擎和容器镜像,容器镜像是应用程序及其依赖项的包。容器引擎在容器中运行应用程序,将其与主机上运行的其他应用程序隔离开来。这样就无需为每个应用程序运行单独的操作系统,从而提高资源利用率并降低成本。 当我们开始学习Kubernetes时,我们并不完全清楚每个Pod是如何分配IP地址以及微服务容器化后是如何正
引言Kubernetes出现的报错如下:Failedtocreatepodsandbox:rpcerror:code=Unknowndesc=failedtogetsandboximage"k8s.gcr.io/pause:3.5":failedtopullimage"k8s.gcr.io/pause:3.5":failedtopullandunpackimage"k8s.gcr.io/pause:3.5":failedtoresolvereference"k8s.gcr.io/pause:3.5":failedtodorequest:Head"https://k8s.gcr.io/v2/pa
Kubernetes,也称为K8s,是一款开源的容器编排平台,可自动化应用程序的部署、扩展和管理。虽然K8s提供了广泛的功能,但对于新手来说,Kubernetes仍会显得比较复杂。本文旨在通过分享您应该知道的前10个快捷方式来简化Kubernetes的使用。1kubectl自动完成(快捷方式:source为了简化命令行界面中冗长的命令和繁多的选项,Kubernetes提供了kubectl命令的自动补全功能,适用于Bash(也适用于Zsh)。通过运行命令source2利用jsonpath进行特定和自定义输出为了从Kubernetes资源中提取特定细节或自定义输出,Kubernetes提供了多功能
目录一、YAML概述二、YAML基本语法三、YAML数据结构四、k8s资源清单描述方法五、YAML快速编写1、使用kubectlcreate命令2、使用kubectlget命令导出yaml文件一、YAML概述k8s集群中对资源管理和资源对象编排部署都可以通过声明YAML文件来解决,也就是可以把需要对资源对象操作编辑到YAML格式文件中,我们把这种文件叫做资源清单文件,通过kubectl命令直接使用资源清单文件就可以实现对大量的资源对象进行编排部署了。YAML文件:就是资源清单文件,用于资源编排。二、YAML基本语法通过缩进表示层级关系;使用空格做为缩进,缩进的空格数目不重要,只要相同层级的元素
目录1.前言1.2检查证书是否过期2.!!!备份原有集群配置文件 3.官方更新方式,更新证书(有效期一年) 3.2测试集群是否正常 4.使用开源组件将证书有效期设置为99年(建议初始化集群时)1.前言配置信息:ubuntu18.04 k8s集群1.22.0。更新证书后:会导致contexts丢失(上下文) kubectlconfigget-contexts 更新证书今天使用k8s集群发现报错。root@k8s-master:~#kubectlgetnodesTheconnectiontotheserver:6443wasrefused-didyouspecifytherighthostorp
基础版本与环境信息:MacBook ProAppleM2MaxVMwareFusionPlayer版本13.0.2(21581413)ubuntu-22.04.2-live-server-arm64k8s-v1.27.3docker24.0.2MacBook上安装VMwareFusion,再虚拟化出6个ubuntu节点,采用kubeadm来安装k8s+containerd,组成一个非高可用的k8s集群,网络采用flannel插件。vmware和ubuntu的安装已这里不回介绍,网上参考的文章很多。本次的实验k8s集群,共有6个ubuntu节点,1个作为master,5个作为worker。接下来