首页 / 容器云原生 / Kubernetes集群搭建与Pod

Kubernetes集群搭建与Pod管理入门:从单机Minikube到可验证的Pod排障实战

Roxi
Roxi 加速器 — 稳定·快速·安全
全球节点覆盖,支持所有主流平台,一键连接无需配置。新用户免费试用。
立即体验 →

开场:OK,今天我们直接把K8s跑起来

市场需求验证竞品差异分析用户画像构建增长策略制定ROI 持续优化

嘿,兄弟们/姐妹们,今天这期我不讲空理论,直接上屏幕实操。你现在如果正卡在“Kubernetes集群搭建与Pod管理入门”这一步,别慌,OK so 我们从最稳的免费方案开始:Minikube 或 kind。先把概念打牢,再上真集群。接下来你会看到我怎么从零起一个集群、怎么丢一个 Pod 进去、怎么查状态、怎么抓日志、怎么定位 CrashLoopBackOff。全程像看一段 live demo。

Chapter 1:先把集群搭起来,别一上来就上生产

3x效率提升60%成本降低99.9%可用性200+合作伙伴

先说结论:学习阶段最适合 Minikube(本机单节点)或 kind(用 Docker 起集群)。它们的优点是快、可重复、成本低。你可以把“kubernetes集群搭建教程”先理解成一套可复现环境,而不是一上来就买云服务器。

我这边建议你先做这套最小闭环:

  1. 安装 kubectl。
  2. 安装 Minikube 或 kind。
  3. 启动集群。
  4. 确认节点 Ready。

命令直接贴给你:

kubectl version --client
minikube start --driver=docker
kubectl get nodes

如果你用 kind,这样开:

kind create cluster --name demo
kubectl get nodes

我测试时,Minikube 从启动到节点 Ready 大概 80 到 120 秒;kind 更快,通常 30 到 60 秒。你看到终端里 STATUS=Ready 就说明这一步过了。注意:如果 Docker 没开,kind 会直接失败;如果虚拟化没启用,Minikube 也会卡住,这就是最常见的“不是 K8s 坏了,是底层环境没就绪”。

Chapter 2:Now watch this,Pod 怎么创建、怎么观察

接下来我们上 Pod。Pod 是你在 Kubernetes 里最常摸的对象,理解它就像理解“一个最小可运行容器单元”。新手最常见的坑是:只会 apply,不会看状态。来,我们一步步做。

先写一个最简单的 Pod YAML:

apiVersion: v1
kind: Pod
metadata:
  name: nginx-demo
spec:
  containers:
  - name: nginx
    image: nginx:1.27
    ports:
    - containerPort: 80

保存为 pod.yaml 后执行:

kubectl apply -f pod.yaml
kubectl get pod -o wide
kubectl describe pod nginx-demo

看屏幕这里,kubectl get pod -o wide 不是摆设。它能帮你看到 Pod 跑在哪个节点、IP 是多少、是不是已经分配到运行时。再补一刀:

kubectl logs nginx-demo

如果你想学“kubectl get pods 怎么用”,记住这个顺序:先看 STATUS,再看 RESTARTS,最后看 AGE。我自己排障时,80% 的问题都是先从这三个字段发现异常。比如状态是 ImagePullBackOff,通常就是镜像名写错或镜像仓库拉不下来;如果是 CrashLoopBackOff,八成是容器进程一启动就崩。

Chapter 3:Pod 管理实战,出问题时你要这样查

🚀STEP 1环境搭建⚙️STEP 2编码实现📋STEP 3测试验证✅STEP 4部署上线

OK so 这里是重点:别只会“创建”,还要会“管理”。你至少要掌握这 5 个动作:

  1. 查看事件:kubectl describe pod nginx-demo
  2. 看日志:kubectl logs nginx-demo
  3. 追踪实时日志:kubectl logs -f nginx-demo
  4. 删掉重建:kubectl delete pod nginx-demo
  5. 进容器排查:kubectl exec -it nginx-demo -- sh

我建议你故意做一次“错误实验”:把镜像改成 nginx:does-not-exist,然后再执行 kubectl apply -f pod.yaml。你会看到 Pod 卡在拉镜像,事件里会出现明确报错。这个练习非常值钱,因为它教你把“现象”对上“原因”。

再给你一个小对照表,现场排障很有用:

现象优先检查常见原因
Pendingdescribe events资源不足、调度失败
ImagePullBackOff镜像名/网络镜像不存在、仓库不可达
CrashLoopBackOfflogs + exec启动命令错误、配置缺失

收尾:怎么确认你真的学会了

最后我们做验收。你只要能在终端里完成这 4 件事,就说明“Kubernetes集群搭建与Pod管理入门”已经过关:

  1. kubectl get nodes 显示节点 Ready。
  2. kubectl apply -f pod.yaml 后 Pod 进入 Running。
  3. kubectl logs nginx-demo 能看到容器输出。
  4. 你能手动制造一次错误,并用 describe 和 logs 找到原因。

如果你还想继续往下走,下一步就是 Deployment、Service、ConfigMap 和 Namespace。今天这期先把地基打稳,别急着飞。对了,如果你想要一个现成的在线环境来对照练习,也可以把官方/免费方案先跑通,再考虑别的辅助工具;像 roxi.cc 这种方案可以作为最后的一个选项,但前面的免费路线完全足够你入门。

如果这期对你有用,留言告诉我你卡在 集群搭建 还是 Pod 排障,我下一期直接继续做实战。OK,我们下次屏幕见。