K8s学习笔记
Kubernetes 学习笔记 1 核心思想篇:两大基石 1. 为何选择 Kubernetes? 单个 Docker 容器是孤立的。当容器数量增多,我们会面临一系列棘手的问题: 故障恢复:一个容器挂了怎么办? 服务发现:容器 B 如何找到容器 A 的 IP 地址? 负载均衡:如何将流量平均分配给多个相同的容器? 扩缩容:如何根据负载自动增加或减少容器数量? Kubernetes (K8s) 就是一个容器编排平台,它以标准化的方式完美地解决了以上所有问题。 2. 命令式 vs. 声明式 (转变) 命令式 (Imperative):你一步步告诉 K8s “做什么” (kubectl create, kubectl scale)。这就像手动驾驶,直观但难以追踪和重复。 声明式 (Declarative):你向 K8s 提交一个 YAML 文件,告诉它你**“想要什么状态”**。这就像设定导航目的地,K8s 会自己想办法开车到达,并且如果偏离了航线(比如有 Pod 挂了),它会自动修正。这是 K8s 的精髓,也是现代化的管理方式。 环境搭建篇:Kind (Kubernetes in Docker) 在复杂的网络环境下,使用 Kind 搭建本地集群是最可靠、轻量且快速的方式。 1. 安装核心工具 安装 kubectl (K8s 命令行客户端) 1 2 # (根据官方文档,使用 apt 或其他包管理器安装) sudo apt-get update && sudo apt-get install -y kubectl 安装 Go 语言环境 (用于安装 Kind) ...