Docker 容器编排、Kubernetes 集群部署、微服务容器化改造与生产级运维
某互联网创业公司计划将 12 个微服务迁移到 K8s,需在 10 台物理服务器上搭建高可用 K8s 集群(3 Master + 7 Worker),使用 containerd 作为容器运行时,Calico 作为网络插件。
使用 kubeadm 搭建高可用集群,3 台 Master 通过 HAProxy + Keepalived 实现 API Server 负载均衡。提前编写 Ansible Playbook 完成所有节点的系统初始化(内核参数、containerd 安装、kubeadm 配置)。
某金融科技公司有一套运行了 3 年的 Spring Boot 单体应用,部署在 4 台虚拟机通过 Nginx 负载。每次发版需手动上传 JAR、逐个重启,耗时 2 小时且容易出错。客户希望容器化并接入 CI/CD。
编写多阶段 Dockerfile 构建镜像,推送到私有 Harbor 仓库。部署至 K8s 集群使用 Deployment 管理,配合 ConfigMap/Secret 管理配置。Jenkins Pipeline 实现代码提交 → 自动构建 → 滚动更新。
某电商大促期间,K8s 集群突然出现大量 Pod 被驱逐(Evicted),核心交易服务中断。排查发现节点内存压力导致 kubelet 触发驱逐阈值,而 HPA 扩容的新 Pod 调度到已满载节点。
紧急扩容 3 台 Worker 节点加入集群。调整 kubelet 驱逐阈值参数(--eviction-hard),为系统预留内存。配置 PodDisruptionBudget 防止批量驱逐。优化资源 Request/Limit 配置。
某企业因合规要求,所有容器镜像必须存储在内部私有仓库,且需要对镜像进行 CVE 漏洞扫描。公网环境无法直接拉取 Docker Hub 镜像。
部署 Harbor v2.9 私有仓库,配置 HTTPS + LDAP 认证。启用 Trivy 漏洞扫描器,设置阻止高危漏洞镜像拉取的策略。配置 Docker 代理缓存加速外部镜像拉取。