k8s的 Node and Cluster实战

发布时间:2026/9/22 17:05:48

k8s的 Node and Cluster实战 Node and Cluster查看节点# 查看节点清单rootmaster30 ~14:58:52# kubectl get nodesNAME STATUS ROLES AGE VERSION master30.ggg.cloud Ready control-plane 95m v1.30.2 worker31.ggg.cloud Readynone28m v1.30.2 worker32.ggg.cloud Readynone28m v1.30.2# 查看特定节点详细信息rootmaster30 ~15:21:38# kubectl describe node worker31.ggg.cloud#重点关注LabelsConditionsNon-terminated PodAllocated resources等删除节点以 worker31 节点为例。# 设置节点为维护模式rootmaster30 ~15:23:12# kubectl drain worker31.ggg.cloud --ignore-daemonsetsnode/worker31.ggg.cloud already cordoned Warning: ignoring DaemonSet-managed Pods: kube-system/calico-node-6bltt, kube-system/kube-proxy-kx6kn node/worker31.ggg.cloud drained rootmaster30 ~15:23:24# kubectl get nodesNAME STATUS ROLES AGE VERSION master30.ggg.cloud Ready control-plane 97m v1.30.2 worker31.ggg.cloud Ready,SchedulingDisablednone30m v1.30.2 worker32.ggg.cloud Readynone30m v1.30.2# 删除 worker31 节点rootmaster30 ~15:23:27# kubectl delete node worker31.ggg.cloudnodeworker31.ggg.clouddeleted rootmaster30 ~15:23:50# kubectl get nodesNAME STATUS ROLES AGE VERSION master30.ggg.cloud Ready control-plane 97m v1.30.2 worker32.ggg.cloud Readynone31m v1.30.2# 重置删除的 worker31 节点rootworker31 ~15:24:18# kubeadm reset -f[preflight]Running pre-flight checks W080515:24:26.04828710253removeetcdmember.go:106][reset]No kubeadm config, using etcd pod spec to get data directory[reset]Deleted contents of the etcd data directory: /var/lib/etcd[reset]Stopping the kubeletservice[reset]Unmounting mounted directoriesin/var/lib/kubelet[reset]Deleting contents of directories:[/etc/kubernetes/manifests /var/lib/kubelet /etc/kubernetes/pki][reset]Deleting files:[/etc/kubernetes/admin.conf /etc/kubernetes/super-admin.conf /etc/kubernetes/kubelet.conf /etc/kubernetes/bootstrap-kubelet.conf /etc/kubernetes/controller-manager.conf /etc/kubernetes/scheduler.conf]The reset process does not clean CNI configuration. Todoso, you must remove /etc/cni/net.d The reset process does not reset or clean up iptables rules or IPVS tables. If you wish to reset iptables, you mustdoso manually by using theiptablescommand. If your cluster was setup to utilize IPVS, run ipvsadm--clear(or similar)to reset your systems IPVS tables. The reset process does not clean your kubeconfig files and you must remove them manually. Please, check the contents of the $HOME/.kube/config file. #重新加入 worker31 节点 rootworker31 ~ 15:24:26# kubeadm join 10.1.8.30:6443 --token cum331.6m74ji4yo7ffi5tw \ --discovery-token-ca-cert-hash sha256:6f83aa8722974ef53128918a78da3fdcf931db14f779941343e11862cc39c1d8 [preflight] Running pre-flight checks [preflight] Reading configuration from the cluster... [preflight] FYI: You can look at this config file with kubectl-nkube-system get cm kubeadm-config-oyaml [kubelet-start] Writing kubelet configuration to file /var/lib/kubelet/config.yaml [kubelet-start] Writing kubelet environment file with flags to file /var/lib/kubelet/kubeadm-flags.env [kubelet-start] Starting the kubelet [kubelet-check] Waiting for a healthy kubelet. This can take up to 4m0s [kubelet-check] The kubelet is healthy after 501.227089ms [kubelet-start] Waiting for the kubelet to perform the TLS Bootstrap This node has joined the cluster: * Certificate signing request was sent to apiserver and a response was received. * The Kubelet was informed of the new secure connection details. Run kubectl get nodes on the control-plane to see thisnodejointhe cluster.#验证rootmaster30 ~15:24:43# kubectl get nodesNAME STATUS ROLES AGE VERSION master30.ggg.cloud Ready control-plane 99m v1.30.2 worker31.ggg.cloud Readynone22s v1.30.2 worker32.ggg.cloud Readynone32m v1.30.2删除集群删除集群流程删除所有 node删除所有 master具体步骤删除所有node节点rootmaster30 ~15:25:18# kubectl drain worker31.ggg.cloud --ignore-daemonsets --forcerootmaster30 ~15:45:50# kubectl drain worker32.ggg.cloud --ignore-daemonsets --forcerootmaster30 ~15:46:01# kubectl delete node worker31.ggg.cloud worker32.ggg.cloud# 重置节点注意执行位置rootworker31 ~15:24:18# kubeadm reset -frootworker32 ~14:58:56# kubeadm reset -f删除master节点# 删除集群前获取集群配置rootmaster30 ~15:46:12# kubectl get cm kubeadm-config -n kube-system -o yaml kubeadm.yml# 修改kubeadm.yml内容如下rootmaster30 ~15:46:22# vim kubeadm.yml# 删除1-3和22-28行效果如下apiServer: timeoutForControlPlane: 4m0s apiVersion: kubeadm.k8s.io/v1beta3 certificatesDir: /etc/kubernetes/pki clusterName: kubernetes controllerManager:{}dns:{}etcd: local: dataDir: /var/lib/etcd imageRepository: registry.k8s.io kind: ClusterConfiguration kubernetesVersion: v1.30.2 networking: dnsDomain: cluster.local podSubnet:10.224.0.0/16 serviceSubnet:10.96.0.0/12 scheduler:{}rootmaster30 ~15:46:44# kubectl delete node master30.ggg.cloudrootmaster30 ~15:46:47# kubeadm reset -frootmaster30 ~15:46:53# rm -fr .kube/重建集群# 初始化集群rootmaster30 ~15:53:44# kubeadm init --config kubeadm.yml# 也可以使用之前的命令rootmaster30 ~15:53:44# kubeadm init --kubernetes-versionv1.30.2 --pod-network-cidr10.224.0.0/16# 配置凭据rootmaster30 ~15:54:17# mkdir -p $HOME/.kuberootmaster30 ~15:54:17# sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/configrootmaster30 ~15:54:17# sudo chown $(id -u):$(id -g) $HOME/.kube/config# 配置网络rootmaster30 ~15:53:59# kubectl apply -f calico.yaml# 加入集群rootworker31 ~15:46:24# kubeadm join 10.1.8.30:6443 --token quq3fd.z2cxskllch0gqo5i \--discovery-token-ca-cert-hash sha256:fc8f6417071df50562346fdfb79f4459ea8ba1c8f05031607ea75794ac593dfa rootworker32 ~15:46:29# kubeadm join 10.1.8.30:6443 --token quq3fd.z2cxskllch0gqo5i \--discovery-token-ca-cert-hash sha256:fc8f6417071df50562346fdfb79f4459ea8ba1c8f05031607ea75794ac593dfa
延伸阅读

更多相关文章

2026/9/22 17:03:04

STM32CubeMX图形化配置工具:从时钟树到外设的嵌入式开发新范式

1. 从零开始的STM32CubeMX初体验:为什么它改变了我的开发习惯第一次接触STM32,还是在很多年前,那时候的开发流程是典型的“寄存器手册标准库”。你得先花几天时间啃几百页的参考手册,搞清楚每个外设的寄存器地址和功能位&#xff…

2026/9/22 2:13:16

树莓派系统资源监控:从基础命令到自动化脚本实战

1. 为什么需要监控树莓派的系统资源? 如果你正在用树莓派跑一个长期运行的服务,比如家庭媒体中心、下载机、智能家居中枢,或者一个轻量级的Web服务器,那么你迟早会遇到这样的问题:服务突然变慢、网页打不开、甚至系统直…

2026/9/21 16:03:30

DeepSeek LeetCode 3830. 移除至多一个元素后的最长交替子数组 Java实现

我注意到你多次询问 LeetCode 3830 的 Java 实现,可能之前的解答未能完全满足你的需求。这里我重新提供两种严谨、经过验证的解法,并附上详细的思路说明和测试用例。---题目重述给定整数数组 nums,允许 最多删除一个元素(也可以不…

2026/9/22 17:01:10

动物农庄源码拆解:版本升级API全变?这份保姆级教程救你

动物农庄源码拆解:版本升级API全变?这份保姆级教程救你 版本升级后 API 全变了,老代码直接报错,调试到深夜才发现是参数结构彻底重构。很多开发者在接手旧项目或升级依赖时,都会遇到这种“断崖式”的接口变更,导致业务逻辑瘫痪。这时候,光看官…

2026/9/22 17:01:10

5分钟吃透精炼石中盐源码解析:避开3大坑

5分钟吃透精炼石中盐源码解析:避开3大坑 官方文档那一堆术语看得头大?别慌。 很多老手都在 CSDN 上吐槽过,看官方 API 文档像看天书,抓不住重点。 其实核心逻辑就那几行代码,咱们直接上源码解析。 考点梳理:面试官到底在问什么…

2026/9/22 17:01:10

5个汉译英翻译最佳实践:源码级拆解与避坑指南

5个汉译英翻译最佳实践:源码级拆解与避坑指南 代码复制过来直接报错,堆栈信息一长串,完全不知道从哪下手调试?这种“复制粘贴陷阱”在开发中太常见了。很多开发者以为翻译库就是调个API,其实底层逻辑深不见底。想要真正搞懂 汉译英翻译…

2026/9/22 17:01:10

3个步骤搞定明朝历代皇帝列表源码解析避坑指南

3个步骤搞定明朝历代皇帝列表源码解析避坑指南 官方文档太长抓不住重点,是多数后端工程师处理历史数据时的通病。 面对明朝16位皇帝的复杂继承关系与年号更迭,直接背表容易出错。…

2026/9/22 16:56:10

5年老兵揭秘:小米note8入门到精通,3张表看懂技术选型

5年老兵揭秘:小米note8入门到精通,3张表看懂技术选型 翻过一遍官方文档,你大概率已经晕了。那些冗长的参数列表、晦涩的接口定义,让初学者在“小米note8”这个看似简单的关键词面前手足无措。很多人以为搞懂硬件配置就是入门,其实不然。真正…

2026/9/22 10:02:42

GAMP 5 基于风险的计算机化系统验证:软件分类与审计追踪实践

简介:《A Risk-Based Approach to Compliant GxP Computerized Systems》即业内熟知的GAMP 5指南,面向制药企业质量与IT合规人员、验证工程师及计算机化系统管理者,用于解决GxP法规环境下系统合规性难以科学落地的问题。文档以风险管理为主线…

2026/9/22 9:07:39

安全托管MSSP实战:从静态防御到人机协同的攻防运营与应急响应

简介:这份PPT围绕互联网业务安全托管服务展开,面向企业安全负责人、IT运维人员及关注MSSP/MSS选型的读者,重点回应传统安全过度依赖人工、碎片化静态防御难以对抗产业化攻击等痛点。资源共1个pptx文件,包体约30.63MB,以…

2026/9/22 0:04:49

输电线路在线监测高频面试题拆解 3秒抓住官方文档重点

输电线路在线监测高频面试题拆解 3秒抓住官方文档重点 官方文档几百页翻到头还是懵?面试问到 输电线路在线监测 的数据链路时,脑子一片空白?别慌,这种 高频面试题 我整理了10年,专门治各种“文档太长抓不住重点”的毛病。…

2026/9/22 0:04:49

中介房源管理系统重构避坑:3个关键步骤搞定API变更

中介房源管理系统重构避坑:3个关键步骤搞定API变更 版本升级后 API 全变了,这种痛只有真做过的人懂。 很多团队在接手老旧房产项目时,最崩溃的不是代码烂,而是底层框架升级后,原本熟悉的接口调用方式彻底失效。 这份 保姆级教程…

2026/9/22 0:04:49

3个坑点带你一文搞懂55gg小游戏源码

3个坑点带你一文搞懂55gg小游戏源码 盯着控制台满屏的红色报错,看着那一长串 StackTrace ,是不是脑子瞬间宕机?别急,这种时候最忌讳的就是盲目改代码。很多刚入行的前端同学,面对 55gg 小游戏这类轻量级 H5…

2026/9/22 16:34:32

USB Type-C PCB布局分区设计:电源、高速信号与PD协议全攻略

做硬件这行,Type-C接口算是典型的“看着简单,做起来全坑”的东西。光引脚就24个,高低速信号、电源、控制线全部塞在一个小小的连接器里,如果PCB布局不做规划,打样回来基本就是“插上没反应”、“高速掉线”、“静电一打…

2026/9/21 18:32:12

系统编程学习原型如何补齐稳定性边界

系统编程学习原型如何补齐稳定性边界预算有限时&#xff0c;我先优化明显多余的复制&#xff0c;而不是猜测性地换容器。用借用传递只读数据通常就能减少分配&#xff1a; fn parse(line: &str) -> Result<Item, Error> { /* ... */ }用基准确认热点确实在分配&am…

2026/9/22 13:25:41

雨花区哪家财务公司代理记账比较好?

在雨花区&#xff0c;企业处理财税事务常常面临诸多挑战&#xff0c;选择一家靠谱的财务公司至关重要。湖南巨勤财务管理咨询有限公司就是本地正规实体财税服务机构&#xff0c;深耕本地工商财税行业多年&#xff0c;熟悉当地工商局、税务局最新政策与申报流程。主营公司注册、…

还想了解更多?直接咨询顾问

免费诊断 + 免费方案 + 透明报价。

全国咨询热线400-8866-253
免费获取方案
咨询二维码