k8s高级_调度器Deployment

一: 简介

为啥需要deployment:

  • 目的是让Kubernetes去管理一组无状态Pod的副本,也就是副本集 , 这样就能够保证一定数量的副本一直可用 , 不会因为某一个Pod挂掉导致整个服务挂掉。避免单点故障和支撑更高的访问量

概念:

  • Deployment是一个定义及管理多副本应用(即多个副本 Pod)的新一代对象,与Replication Controller相比,它提供了更加完善的功能,使用起来更加简单方便

二: 示例

1.0 定义deployment

  • 准备工作目录
bash 复制代码
 mkdir 11deployment ;  cd 11deployment
  • 定义deployment
bash 复制代码
 vim  deployment.yaml
 
 
apiVersion: apps/v1
kind: Deployment    
metadata:
 name: nginx-deployment
spec:
 selector:           #选择器匹配要管理的Pod
   matchLabels:      
     app: nginx    
     
 replicas: 2         #Pod 副本数如果 Pod 少于 2 个(比如一个挂了),会自动创建新的补足;如果多于 2 个,会终止多余的。
 template:           #POD模板。以前定义Pod配置
   metadata:
     labels:
       app: nginx
   spec:
     containers:     #容器配置
     - name: nginx
       image: nginx
       ports:
       - containerPort: 80

2.0 创建deployment

  • 创建deployment
bash 复制代码
[root@k8s-master 11deployment]#  kubectl apply -f deployment.yaml
deployment.apps/nginx-deployment created
[root@k8s-master 11deployment]# 

3.0 查看

  • 查看deployment
bash 复制代码
[root@k8s-master 11deployment]# kubectl get deployments
NAME               READY   UP-TO-DATE   AVAILABLE   AGE
nginx-deployment   2/2     2            2           13s
[root@k8s-master 11deployment]# 
  • 查看pod
bash 复制代码
[root@k8s-master 11deployment]# kubectl get pods -l app=nginx
NAME                                READY   STATUS    RESTARTS   AGE
nginx-deployment-7848d4b86f-j2867   1/1     Running   0          31s
nginx-deployment-7848d4b86f-r8rww   1/1     Running   0          31s
[root@k8s-master 11deployment]# 

4.0 删除

bash 复制代码
[root@k8s-master 11deployment]# kubectl delete -f deployment.yaml 
deployment.apps "nginx-deployment" deleted
[root@k8s-master 11deployment]# kubectl get deployments
No resources found in default namespace.
[root@k8s-master 11deployment]# 
相关推荐
Tangyuewei1 小时前
388 个 PR:AI 自主运维实测
运维·人工智能
阿里云云原生1 小时前
云效 AI 助手深度解析:如何贯穿需求、代码、测试与发布的全链路闭环?
云原生
H_oRIZoN_1 小时前
Linux入门DAY27(文件IO(系统调用)详解|open/read/write/lseek)
java·linux·服务器
xiamo@moment1 小时前
kafka学习笔记-概念总集
运维·kafka
海兰2 小时前
【插件】Logbook 插件完全指南(适配 Ubuntu 24.04)
linux·运维·人工智能·ubuntu·agent·openclaw
好评1242 小时前
【Linux】Socket编程TCP
linux·网络·tcp/ip
浪兎兎2 小时前
Nginx 笔记
运维·笔记·nginx
前进吧-程序员2 小时前
从零入门:eBPF 是什么、解决什么问题以及它的历史
linux
Lyy2 小时前
DevOps平台 — 第六篇:成员管理与工作台
devops