K8S项目生命周期管理

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档

文章目录


一、 Kubernetes 操作管理概述

Kubernetes 的管理操作分为两大类:

  • 陈述式(命令式)管理方法
  • 声明式(配置清单式)管理方法

1.1基础信息查看命令

bash 复制代码
 # 查看版本信息
kubectl version
 # 创建命名空间
kubectl create ns app
#删除命名空间
kubectl delete namespace app 
创建副本控制器(kube-public是一个命名空间 )
kubectl create deployment nginx-wl --image=nginx -n kube-public
//描述某个资源的详细信息
kubectl describe deployment nginx-wl -n kube-public
//扩缩容器数量
kubectl scale deployment nginx-wl --replicas=2 -n kube-public
kubectl scale deployment nginx-wl --replicas=1 -n kube-public
//删除资源
//kubectl delete deployment nginx-wl

二、项目生命周期

1、创建容器镜像设置副本数

  • 查看节点详细信息,
bash 复制代码
kubectl describe pod nginx1-bf9487845-5c899 
  • Kubernetes 集群中 Pod 的事件(Events)日志截图,记录的是名为nginx1-6d6b9fd454-6b2sl的 Pod 在启动阶段的生命周期事件,用于展示该 Pod 在集群中的调度、容器创建与启动。

    2、创建并查看Service详情,找到NodePort端口,--target-port必须写容器端口。--port可以写其他端口。
  • 查看网络状态信息,节点分布和内部暴露的端口,如果是像删除deployment管理下的pod,先删除deployment资源管理器,他所管理的pods就会自动删除。

    3、3、更新阶段
    查看版本信息
  • 更改nginx版本信息##将nginx 版本更新为 1.15 版本
bash 复制代码
kubectl set image deployment/nginx nginx=nginx:1.15
  • kubectl get pods -w 处于动态监听 pod 状态,由于使用的是滚动更新方式,所以会先生成一个新的pod,然后删除一个旧的pod,往后依次类推
  • 查看podIP: kubectl get pods -o wide

    4、回滚阶段
  • 执行回滚到上一个版本 kubectl rollout undo deployment/nginx
  • 检查回滚状态
    kubectl rollout status deployment/nginx

总结

Kubernetes 提供了两种管理方式:陈述式管理和声明式管理。其中,陈述式适用于简单的命令执行,声明式则更加灵活和可扩展。无论是通过命令行的方式还是通过配置文件管理,Kubernetes 都能帮助管理员有效地管理集群资源,支持滚动更新、回滚、金丝雀发布等多种发布策略,确保应用的稳定性和高可用性。

相关推荐
虎头金猫2 天前
4K 视频总卡在公网带宽?用 N1 + OpenList 把网盘播放链路重新理顺
运维·服务器·网络·python·容器·beautifulsoup·pandas
分布式存储与RustFS2 天前
MinIO 官方 Docker 镜像被移除:依赖它的项目该怎么办
docker·云原生·devops·对象存储·minio·分布式存储
codeejun2 天前
每日一Go·MySQL-5、锁机制全解析
云原生·golang
赵文宇(温玉)2 天前
CoreDNS的hosts插件的缺行配置导致k8s集群异常
容器·kubernetes·rancher
guo_wen_qiang2 天前
上传本地镜像到harbor中
docker·容器·持续部署
张洛闻Eren2 天前
k8s云原生【第十课】:水平 Pod 自动扩缩容
运维·数据库·云原生·kubernetes·github
忆~遂愿3 天前
本地片库怎么在外面打开?Plex + cpolar 搭一套可远程访问的私人影音库
docker·容器
Thneonl3 天前
你的 Pod 为什么 Pending:调度器两阶段
后端·kubernetes
不吃香菜kkk、3 天前
CI/CD(GitOps)学习与部署手册
运维·云原生·容器·kubernetes·云计算·jenkins·argocd
ChaITSimpleLove3 天前
云原生性能对决:JDK21虚拟线程+GraalVM vs .NET10/11 技术栈深度对比
微服务·云原生·serverless·graalvm native·native aot·runtime async·.net11/java21