获课:weiranit.fun/14335/
获取ZY↑↑方打开链接↑↑
以下是Kubernetes核心概念的详解,掌握这些是理解Kubernetes架构和运维的基础:
一、基础架构核心
1.Cluster(集群)
核心作用:由一组物理机或虚拟机(Node)组成的资源池
组成:
Master节点:集群控制平面(API Server、Scheduler、Controller Manager、etcd)
Worker节点:运行容器的工作节点(kubelet、kube-proxy、容器运行时)
2.Node(节点)
角色:工作负载的实际承载者
关键组件:
kubelet:与Master通信的节点代理
kube-proxy:管理网络规则(Service流量的核心)
容器运行时:如Docker、containerd
二、资源对象核心
1.Pod
最小调度单元:1个或多个容器的组合(共享网络/存储空间)
特性:
临时性(生命周期由控制器管理)
通过Label进行标识
示例场景:主容器+Sidecar容器(日志收集)
2.Deployment
核心控制器:管理无状态应用的副本集(ReplicaSet)
关键能力:
滚动更新(Rolling Update)
版本回滚(Rollback)
副本扩缩(Scale)
3.Service
服务发现与负载均衡:为一组Pod提供稳定访问入口
类型:
ClusterIP(默认,集群内部访问)
NodePort(节点端口暴露)
LoadBalancer(云厂商负载均衡器)
ExternalName(外部服务别名)
4.ConfigMap & Secret
配置管理:
ConfigMap:存储非敏感配置(环境变量、配置文件)
Secret:加密存储敏感数据(Base64编码)
5.Volume
数据持久化:解决容器临时存储的问题
类型:
emptyDir(临时目录)
hostPath(节点目录挂载)
PersistentVolume(PV):集群级存储资源
PersistentVolumeClaim(PVC):用户存储请求
三、高级概念
1.Namespace(命名空间)
资源隔离:虚拟集群划分(如dev/prod环境隔离)
系统命名空间:kube-system(系统组件)、default
2.Ingress
七层流量管理:HTTP/HTTPS路由规则(替代NodePort暴露服务)
配合Ingress Controller(如Nginx、Traefik)
3.StatefulSet
有状态应用:管理需要稳定标识/持久存储的应用(如数据库)
特性:
固定网络标识(Pod名称+序号)
按顺序部署/扩展
4.DaemonSet
节点级部署:每个Node运行一个Pod副本(如日志采集Agent)
5.Job & CronJob
批处理任务:
Job:单次执行任务
CronJob:定时任务(类似Linux Crontab)
四、扩展机制
1.CRD(Custom Resource Definition)
自定义资源:扩展Kubernetes API(如定义MySQLCluster资源)
2.Operator
自动化运维:通过CRD+控制器实现应用生命周期管理(如etcd Operator)
有疑问加站长微信联系(非本文作者)
