Cloud Native Devops

🏠 首页 / Kubernetes / 云原生 DevOps 应知应会

云原生 DevOps 应知应会 #

云原生 DevOps 路线图

1. 容器基础 #

1.1 容器概述 #

1.2 容器运行时 #

在线体验 Docker: Play with Docker

1.3 容器网络 #

1.4 容器存储 #


2. Kubernetes 运行基础 #

Kubernetes 架构: alt text

2.1 核心组件 #

  • API Server
  • Scheduler
  • Controller Manager
  • Kubelet
  • Kube-Proxy

参考博客: kubernetes 核心组件运行机制-原理解析

2.2 资源管理 #

  • Pod、Deployment、StatefulSet、DaemonSet
  • Job / CronJob、ConfigMap、Secret

2.3 存储管理 #

  • PersistentVolume(PV) & PersistentVolumeClaim(PVC)
  • StorageClass & CSI(容器存储接口)

2.4 网络管理 #

  • Service(ClusterIP, NodePort, LoadBalancer, Headless)
  • Ingress & Ingress Controller(Nginx, Traefik, Istio)

3. Kubernetes 运维管理 #

3.1 集群安装与配置 #

  • Kubeadm:快速部署 Kubernetes 集群
  • MiniKube:本地单节点 Kubernetes
  • Kind:在 Docker 容器中运行 Kubernetes
  • K3s:轻量级 Kubernetes 集群
  • Rancher:企业级 Kubernetes 管理平台

在线体验 Kubernetes:

3.2 监控与日志 #

3.3 资源调优 #

  • CPU / 内存 限制(Requests & Limits)
  • HPA 自动扩展
  • 调度优化(亲和性 / 反亲和性 / Taints & Tolerations)

4. Kubernetes 高级运维 #

4.1 Kubernetes 安全 #

  • RBAC 权限管理
  • Pod 安全策略(PSP / SecurityContext)
  • NetworkPolicy 网络隔离
  • Istio / Linkerd(Service Mesh)

4.2 备份与恢复 #

4.3 故障排查 #

  • kubectl describe / logs / exec
  • 网络排查(Service / Ingress / CNI)
  • 存储排查(PV / PVC / CSI)

Kubernetes 故障排查图谱: alt text


5. 进阶工具与实践 #

5.1 Kubernetes CI/CD #

  • GitOps(ArgoCD / FluxCD)
  • Jenkins / Tekton / GitLab CI

5.2 资源管理工具 #

5.3 混沌工程 #


6. 常用工具推荐 #

工具用途官网
KubectlKubernetes CLIhttps://kubernetes.io/docs/reference/kubectl/
K9sKubernetes 终端管理工具https://k9scli.io/
LensKubernetes 可视化管理https://k8slens.dev/
Prometheus监控https://prometheus.io/
Grafana可视化https://grafana.com/
Fluent Bit日志收集https://fluentbit.io/
HelmKubernetes 包管理https://helm.sh/
ArgoCDGitOps 持续交付https://argo-cd.readthedocs.io/
IstioService Meshhttps://istio.io/
Chaos Mesh混沌工程https://chaos-mesh.org/
KustomizeKubernetes 资源管理https://kustomize.io/

7. Kubernetes 运维最佳实践 #

7.1 资源优化 #

  • 合理设置 Requests & Limits
  • 使用 HPA/VPA 进行自动扩展
  • 合理选择 Pod 亲和性和调度策略

7.2 安全管理 #

  • 最小权限 RBAC 配置
  • 启用 NetworkPolicy 进行网络隔离
  • 避免使用 root 用户运行容器

7.3 日志与监控 #

  • EFK/Loki 进行日志采集
  • Prometheus + Grafana 进行监控
  • OpenTelemetry 进行链路追踪

7.4 备份与恢复 #

  • 定期备份 etcd
  • 使用 Velero 备份 PVC 数据
  • 确保 CI/CD 变更可回滚

7.5 高可用 #

  • 多 Master 节点 + Keepalived + HAProxy
  • 使用 StatefulSet 管理有状态应用
  • 存储选型(Ceph, NFS, Longhorn)

8. 推荐学习网站 #

网站内容链接
Kubernetes 官方文档Kubernetes 官方教程https://kubernetes.io/docs
Learn Kubernetes深入 Kuberneteshttps://learnk8s.io/
Prometheus 文档监控系统教程https://prometheus.io/docs/
Istio 官方文档Service Mesh 教程https://istio.io/latest/docs/
ArgoCD 官方文档GitOps 持续交付https://argo-cd.readthedocs.io/

总结 #

文档涵盖了 Kubernetes 运维的方方面面,包括基础知识、运维管理、高级运维、最佳实践和工具推荐。你可以根据需求重点学习某些章节,并结合实践操作。


« 二进制搭建 K8s - 4 部署 Node

» Kubernetes 0-1 尝试理解云原生