pod控制器-Deployment的使用
在kubernetes中,Pod是最小的控制单元,但是kubernetes很少直接控制Pod,一般都是通过Pod控制器来完成的。Pod控制器用于pod的管理,确保pod资源符合预期的状态,当pod的资源出现故障时,会尝试进行重启或重建pod。
在kubernetes中Pod控制器的种类有很多,这里只介绍一种:Deployment。
命令操作
kubectl默认底层有个deployment控制器
创建pod
# 命令格式: kubectl create deployment 名称 [参数]
# --image 指定pod的镜像
# --port 指定端口
# --replicas 指定创建pod数量,默认一个
# --namespace 指定namespace
kubectl run nginx --image=nginx:1.17.1 --port=80 --replicas=3 -n dev
查看创建的Pod
# 查看创建的Pod
kubectl get pods -n dev
查看deployment的信息
# 查看deployment的信息
kubectl get deployment -n dev
# UP-TO-DATE:成功升级的副本数量
# AVAILABLE:可用副本的数量
kubectl get deployment -n dev -o wide
查看deployment的详细信息
# 查看deployment的详细信息
kubectl describe deployment nginx -n dev
删除
# 删除 deployment/deploy 是一样的
kubectl delete deploy nginx -n dev
配置操作
创建一个deploy-nginx.yaml
vi deploy-nginx.yaml
内容如下:
apiVersion: apps/v1
kind: Deployment
metadata:
name: nginx
namespace: dev
spec:
# 副本数
replicas: 3
selector:
# 选择器匹配
matchLabels:
run: nginx
template:
# pod 模板
metadata:
labels:
# 标签
run: nginx
spec:
containers:
- image: nginx:1.17.1
name: nginx
ports:
- containerPort: 80
protocol: TCP
然后就可以执行对应的创建和删除命令了:
创建
kubectl create -f deploy-nginx.yaml
删除
kubectl delete -f deploy-nginx.yaml
本文作者:makalo
本文链接:https://www.cnblogs.com/makalochen/p/16277663.html
版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行许可。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· 什么是nginx的强缓存和协商缓存
· 一文读懂知识蒸馏
· Manus爆火,是硬核还是营销?