- 博客(16)
- 收藏
- 关注
原创 K8s 四层代理 Service 全解
✅ 集群节点、Pod 可访问❌ 集群外物理机/浏览器 无法访问类型访问范围核心用途适用场景限制ClusterIP仅集群内部内部服务互通、四层负载微服务内部调用外网无法访问NodePort集群内外均可节点端口暴露服务测试环境、临时对外端口30000-32767,节点单点故障全网(公网IP)云厂商负载均衡公有云生产业务仅云K8s支持集群内部域名别名、跨命名/外网对接跨NS访问、对接外部域名无负载均衡,仅域名转发。
2026-06-15 09:35:06
199
原创 matchexpression和matchlabels的区别
你问到了K8s标签选择器最核心的设计细节!。matchLabels只能处理最简单的等值匹配场景,而matchExpression提供了K8s所有的标签匹配能力,是实现复杂调度、资源筛选的基础。我用最直白的方式给你讲清楚它们的区别、各自的适用场景,以及为什么K8s要设计两个看起来功能相似的东西。
2026-06-08 15:30:50
363
原创 ReplicaSet控制器终极详解
ReplicaSet是K8s的基础副本控制器,它的核心作用是确保指定数量的Pod副本始终在运行ReplicaSet由三个核心部分组成:期望副本数、标签选择器、Pod模板ReplicaSet不会自动更新已经存在的Pod,这是它最大的缺点官方推荐使用Deployment而不是直接使用ReplicaSet,Deployment提供了滚动更新、版本回滚等生产环境必需的功能Deployment管理ReplicaSet,ReplicaSet管理Pod,这是K8s中最核心的分层架构。
2026-06-08 15:30:07
352
原创 Pod健康探测终极详解
默认健康检查完全不够用,生产环境必须配置自定义健康探测三种探针各司其职startupProbe:解决慢启动问题livenessProbe:检测应用是否需要重启readinessProbe:检测应用是否可以接收流量三种探测方式各有优劣HTTPGet:最准确,优先使用exec:最灵活,适合自定义逻辑TCPSocket:最简单,但准确性最低合理设置参数:根据应用的实际情况调整探测间隔、超时时间和重试次数避免常见坑点。
2026-06-07 18:19:37
255
原创 Pod生命周期终极详解(Init容器+钩子+完整流程+生产实践)
大白话解释Init容器就是Pod的**“前置任务”。它在所有主容器启动之前执行,只有当所有Init容器都成功执行完成**后,主容器才会启动。你可以把它想象成:你要开一家餐厅,在开门营业(主容器启动)之前,需要先完成装修、采购食材、招聘员工这些准备工作(Init容器)。1. 用户提交Pod创建请求 → API Server验证并存储到etcd2. Scheduler调度Pod到合适的节点3. Kubelet在节点上创建Pod↓4. 创建pause容器,初始化网络和存储命名空间↓。
2026-06-07 18:17:40
181
原创 K8s 调度策略完整实验详解K8s 调度策略完整实验详解(标签 + 节点选择器 + 亲和性 + 污点容忍度 + Pod 状态)
大白话解释标签就是给K8s资源(Pod、Node、Service等)打上的**“便签”**,是一个键值对(key=value)。你可以给任何资源打任意数量的标签,然后通过标签来筛选和管理这些资源。典型应用场景app=tomcatenv=prodversion=v1disk=ssdgpu=true然后通过标签选择器,把Pod调度到符合条件的节点上大白话解释污点(Taint):给节点打上的一个"标记",表示这个节点有一些"特殊情况",会排斥那些不能容忍这些情况的Pod容忍度(Toleration)
2026-06-04 15:54:36
277
原创 K8s命名空间与资源配额实验完整详解
大白话解释把K8s集群想象成一个大型办公楼,命名空间就是楼里的不同楼层。每个楼层(命名空间)都有自己的办公室(Pod)、会议室(Service)、储物间(ConfigMap)不同楼层的房间号可以重复(比如3楼301和5楼301是不同的房间)不同楼层之间默认是隔离的,不能直接互相访问但是整栋楼的电梯(节点)、水电(持久卷)是公共资源,所有楼层共享官方定义命名空间是K8s提供的一种集群级别的资源隔离机制,它将一个物理集群划分为多个逻辑上的虚拟集群。每个虚拟集群都有自己的资源范围和访问控制。
2026-06-04 15:53:48
226
原创 Pod核心实验完整详解
Pod是K8s的最小调度单元,一个Pod可以包含一个或多个容器自主式Pod没有自愈能力,不适合生产环境控制器管理的Pod有自愈能力,生产环境必须使用控制器管理PodPod中的容器共享网络和存储,这是多容器Pod协作的基础pause容器是Pod网络的核心,它保证了Pod网络的稳定性一个Pod从创建到运行,需要kube-apiserver、etcd、kube-scheduler、kubelet和容器运行时的协作这个实验是所有后续K8s实验的基础,一定要亲手操作一遍,把每个步骤都搞懂。
2026-06-03 09:36:39
240
原创 Linux内核网络+iptables四链五表全解
链就是数据包在传输过程中必须经过的"检查站"。上面流程中提到的PREROUTINGINPUTFORWARDOUTPUT,就是Linux内核预设的5个基本检查站,也就是我们常说的五链。每个数据包在传输过程中,至少会经过2个链PREROUTING→INPUTPREROUTING→FORWARD→OUTPUT→表就是每个检查站里的"不同功能的安检窗口"。同一个检查站(链)里,可能有多个不同功能的安检窗口(表),每个窗口负责检查不同的内容。Linux内核预设了4个主要的表,也就是我们常说的四表表名功能。
2026-06-03 09:35:01
453
原创 K8s实验专有名词与核心原理全解
来实现Pod之间的通信,不需要额外的封包和解包,性能非常高。安装Calico后,所有节点上的Calico组件会自动配置网络路由,让整个集群的Pod网络连通起来。这一步的原理就是:安装containerd,配置好镜像加速,让它能够快速拉取和运行容器镜像。安装完成后,kubelet会被设置为开机自启,但此时它还没有加入集群,处于等待状态。这就是K8s集群的核心工作原理,所有的操作都是围绕这个流程展开的。,如果不安装网络插件,K8s集群是无法正常工作的。命令,这个命令就是工作节点加入集群的"入场券"。
2026-06-02 18:44:20
403
原创 关闭Windows11 25H2版本的虚拟化安全性(解决虚拟机虚拟化嵌套无法使用、解决平台不支持虚拟化Intelvt-x、解决ensp设备无法启动)
使用方法:右键批处理文件,选择以管理员权限运行即可。运行完毕后,会自动进行设备重启。重启后,可按win+r,输入msinfo32,查看虚拟化安全性是否关闭。,让电脑回到 “纯净无虚拟化干扰” 的状态,方便用 VMware、Ensp等使用到虚拟化技术的实验软件。
2026-04-07 16:26:31
1481
原创 因套接字(socket)路径不匹配导致 MariaDB 无法连接问题的排查与解决
遇到数据库错误时,不必优先怀疑安装失败或服务异常,优先检查服务端套接字生成路径与客户端查找路径是否一致。绝大多数情况下,路径不匹配是根本原因,使用软链接或统一配置文件即可快速解决,不涉及复杂的权限或数据问题。同时建议在生产环境中避免将套接字放在/tmp目录,防止被系统定时清理导致连接异常。
2026-04-02 23:05:35
239
关闭Windows11 25H2版本的虚拟化安全性(解决虚拟机虚拟化嵌套无法使用、解决平台不支持虚拟化Intelvt-x)
2026-04-07
YOLO的train遇到这个报错
2024-05-13
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅
3