问小白 wenxiaobai
资讯
历史
科技
环境与自然
成长
游戏
财经
文学与艺术
美食
健康
家居
文化
情感
汽车
三农
军事
旅行
运动
教育
生活
星座命理

K8S核心控制器之Deployment控制器

创作时间:
作者:
@小白创作中心

K8S核心控制器之Deployment控制器

引用
CSDN
1.
https://m.blog.csdn.net/jonas80029735/article/details/145643437

Kubernetes(K8S)中的Deployment控制器是管理无状态服务的重要组件。本文将详细介绍Deployment控制器的基本概念、配置方法以及如何在集群中进行操作和监控。

1. Deployment

  • 通过控制ReplicaSet来控制Pod,并支持滚动升级、回退版本,适合无状态的服务部署
  • 当某个应用有新版本发布时,Deployment会同时操作两个版本的ReplicaSet
  • 其内置多种滚动升级策略,会按照既定策略降低老版本的Pod数量,同时也创建新版本的Pod
  • Deployment控制器不直接管理Pod对象,而是 Deployment 管理ReplicaSet, 再由ReplicaSet管理Pod对象
  • 总结:Deployment、ReplicaSet、Pod三者之间是一种阶梯控制的关系

2. 配置文件 deploy-nginx-pod.yaml

apiVersion: apps/v1
kind: Deployment
metadata:
  name: xdclass-deploy
  namespace: dev
spec:
  replicas: 5
  selector: 
    matchLabels:
      app: xdclass-nginx-pod
  template:
    metadata:
      labels:
        app: xdclass-nginx-pod
    spec:
      containers:
- name: xdclass-nginx
        image: nginx:1.23.0  

3. 执行

#创建
kubectl apply -f deploy-nginx-pod.yaml
# 查看deployment
kubectl get deployment -n dev
#查看
kubectl get pods,deploy,replicaset -o wide -n dev
# 删除,通过yaml删除
kubectl delete -f deploy-nginx-pod.yaml  

4. 检查集群中的 Deployment 时,所显示的字段有:

  • NAME:列出了集群中 Deployment 的名称。
  • READY:显示应用程序的可用的“副本”数,格式是“就绪个数/期望个数”。
  • UP-TO-DATE:显示为了达到期望状态已经更新的副本数。
  • AVAILABLE:显示可用的副本数。
  • AGE:应用程序运行的时间。

© 2023 北京元石科技有限公司 ◎ 京公网安备 11010802042949号