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]# 
相关推荐
Rabitebla1 小时前
【Linux】进程控制(十二) 自定义 Shell(二):内建命令与进程工作目录管理
linux·c++·笔记·学习·bash
威嵌神州2 小时前
嵌入式排故实录:高并发下串口数据“超时丢包”的根因剖析与架构优化
运维·服务器·嵌入式硬件·缓存
Decay__2 小时前
SQLServer 索引与 SQL 优化 —— 聚集索引、非聚集索引、覆盖索引、碎片维护与执行计划
运维·数据库·sql·mysql·架构
罗小爬EX2 小时前
Helm 从概念到实战:以一个普通 Web 应用为例
云原生·helm
java_logo3 小时前
Docker 部署 DeepSeek Harness(moelin):轻松搭建带登录的本地 AI Agent 平台
运维·docker·容器·ai agent·deepseek·harness·轩辕镜像
xbzb4 小时前
容器 IP 每次重建都变?docker network 五种模式与自定义网桥固定地址
网络·docker·容器·ip·network·固定
坤坤子吖5 小时前
Linux网络编程:TCP 粘包与半包问题,如何正确处理 TCP 流式数据?
linux·服务器·网络·笔记·网络协议·学习
AI_Gump5 小时前
Harness篇|DeepSeek Harness 上手机:五条安卓移植路线与 App 内 Linux 拆解
android·linux·人工智能·智能手机·deepseek
星恒随风7 小时前
MySQL 从零入门(六):复合查询详解——多表查询、自连接、子查询与 UNION
linux·服务器·数据库·mysql
7177777 小时前
支持混合云的 DevOps 平台有哪些:Gitee、Azure DevOps、GitLab、Jenkins、JFrog 横向对比
gitee·azure·devops