适用场景
容器化能提高交付效率,但也带来新的运维面:镜像与仓库、网络与存储、资源限制、日志与证书。管好这五块,集群才稳。
配置步骤(Kubernetes 集群基础运维)
kubectl get nodes -o wide
kubectl get pods -A --field-selector status.phase!=Running
kubectl top nodes
kubectl describe pod 名称 -n 命名空间 | tail -20
kubectl logs 名称 -n 命名空间 --previous | tail -50
关键参数与建议
- 镜像:固定版本标签(不要用 latest)、私有仓库、扫描漏洞
- 资源:为每个工作负载设置 requests/limits,避免相互抢占
- 网络:明确 CNI 方案,Service 暴露方式(NodePort/Ingress)要收敛
- 日志与监控:容器日志集中采集,指标接入 Prometheus
- 证书与令牌:kubeconfig、Ingress 证书、ServiceAccount 权限最小化
容易踩的坑
- 控制面单点(etcd 单节点),故障即全集群不可用
- 未配置资源限制,单个 Pod 打满节点
- 证书到期(kubelet/etcd)未监控,集群突然不可用
验证与巡检
kubectl get componentstatuses
kubectl get nodes
- 巡检:节点 Ready、控制面健康、证书到期时间 >30 天
小结
K8s 排障从四层看:节点(NotReady?)→ 调度(Pending?)→ 容器(CrashLoopBackOff?)→ 服务(网络/证书)。先把层定下来,再看日志。
> 说明:文中命令为通用写法,不同型号/版本可能略有差异,落地前请对照设备实际版本的官方文档;带外管理与安全设备变更建议先在测试设备验证。