K8s新手入门:从“Pod创建”到“服务暴露”,3个案例理解容器编排

一、案例1:单Pod部署(Nginx应用)

目标:用命令行创建并验证Pod
  1. 创建Pod

    复制代码
    bash

    kubectl run nginx-pod --image=nginx:1.14 --port=80

    注:镜像选择参考智优达Docker容器化部署指南 ,优先使用指定版本标签(如1.14)而非latest,避免版本波动。

  2. 查看Pod状态

    复制代码
    bash

    kubectl get pods # 输出示例:NAME READY STATUS RESTARTS AGE # nginx-pod 1/1 Running 0 30s

  3. 集群内访问

    复制代码
    bash

    # 获取Pod IP kubectl get pods -o wide | grep nginx-pod # 访问Pod(集群节点内执行) curl 10.244.1.5:80 # 替换为实际Pod IP

---

二、案例2:多副本管理(Deployment)

目标:用Deployment实现Pod自愈与扩缩容
  1. 创建Deployment

    复制代码
    bash

    kubectl create deployment nginx-deploy --image=nginx:1.14 --replicas=3

    --replicas=3:指定3个Pod副本,Deployment会自动维护数量(删除后自动重建)。

  2. 查看资源状态

    复制代码
    bash

    kubectl get deployments # 查看Deployment kubectl get pods # 输出3个Pod,名称格式:nginx-deploy-xxxx-yyyy

  3. 验证自愈能力

    复制代码
    bash

    # 删除一个Pod kubectl delete pod nginx-deploy-xxxx-yyyy # 几秒后重新查看,Pod总数仍为3(Deployment自动重建) kubectl get pods

---

三、案例3:服务暴露(NodePort Service)

目标:通过Service让外部访问Pod
  1. 创建NodePort Service

    复制代码
    bash

    kubectl expose deployment nginx-deploy --type=NodePort --port=80 --target-port=80 --name=nginx-svc

    • --type=NodePort:在集群节点开放端口(范围30000-32767);
    • --port=80:Service集群内端口;
    • --target-port=80:Pod容器端口。
  2. 查看Service信息

    复制代码
    bash

    kubectl get svc nginx-svc # 输出示例:NAME TYPE CLUSTER-IP PORT(S) AGE # nginx-svc NodePort 10.96.xx.xx 80:30080/TCP 1m

    30080为节点暴露端口,外部通过节点IP:30080访问。

  3. 外部访问验证

    浏览器访问 http://节点IP:30080(如http://192.168.1.100:30080),能看到Nginx默认页面即成功。

---

核心概念速查表

资源 作用 关键命令
Pod 最小部署单元(封装容器) kubectl run / kubectl get pods
Deployment 管理Pod副本(自愈/扩缩容) kubectl create deployment / kubectl scale
Service 暴露Pod网络访问(固定入口) kubectl expose / kubectl get svc
相关推荐
2601_949925183 分钟前
AI Agent如何重构跨境物流的决策?
大数据·人工智能·重构·ai agent·geo优化·物流科技
AI木马人11 分钟前
1.人工智能实战:大模型推理接口响应慢?从模型加载到 FastAPI 部署的完整优化方案
人工智能·python·fastapi
Black蜡笔小新22 分钟前
私有化本地化AI模型训推工作站DLTM训推一体工作站赋能多行业智能化落地
人工智能
qq_4112624224 分钟前
四博 AI 智能音箱 + ESPC3 Tasmota 计量通断器方案
人工智能·智能音箱
dllmayday31 分钟前
Milvus在LangChain中使用方法
人工智能·ai·langchain·milvus
xiaoduo AI39 分钟前
客服机器人问题解决率怎么统计?Agent系统自动判断是否解决,比人工回访准?
大数据·人工智能·机器人
AI周红伟43 分钟前
周红伟:GPT-Image-2深度解析:从技术原理到实战教程,为什么它能让整个AI圈炸锅?
人工智能·gpt·深度学习·机器学习·语言模型·openclaw
red_redemption43 分钟前
自由学习记录(175)
学习
hecgaoyuan44 分钟前
浅谈个人在人工智能方面的应用情况
人工智能
*Lisen1 小时前
从零手写 FlashAttention(PyTorch实现 + 原理推导)
人工智能·pytorch·python