首页 > 其他分享 >k8s-deployment详解

k8s-deployment详解

时间:2022-09-29 11:36:57浏览次数:42  
标签:kubectl replicas dep -- 详解 deployment k8s my

Deployment概念

属于一种工作负载,也称为Controller(其他的Controller包括ReplicaSet、 DaemonSet、 StatefuleSet、 Job)
一次性部署多个Pod,控制Pod,使Pod拥有多副本,自愈,扩容缩容能力

Deployment的一次部署流程

1.kubectl创建deploymnet
2.deployment创建指定副本数量的ReplicaSet
3.ReplicaSet创建Pod
## 对象的命名方式是=父对象+随机字符创
## 如下图

deployment相关命令

# 创建一次deployment 选用tomcat镜像
kubectl create deployment mytomcat --image=tomcat:8.5.68

# 获取当前命名空间内的部署
kubectl get deployment

# 删除deployment
kubectl delete deployment <deployment名称>

deployment具有自愈能力,如果只是删除一次deployment中的某个pod deployment会自动进行恢复,需要删除deployment才有效

deployment的创建也可以使用yaml的方式

# 多副本创建
kubectl create deployment my-dep --image=nginx --replicas=3

# 多副本创建(yaml)
apiVersion: apps/v1
kind: Deployment
metadata:
  labels:
    app: my-dep
  name: my-dep
spec:
  replicas: 3
  selector:
    matchLabels:
      app: my-dep
  template:
    metadata:
      labels:
        app: my-dep
    spec:
      containers:
      - image: nginx
        name: nginx

# 集群的扩容和缩容 修改replicas的数字
kubectl scale --replicas=5 deployment/my-dep

# 集群的扩缩容,使用编辑yaml文件
kubectl edit deployment my-dep  修改replicas

版本控制

#历史记录
kubectl rollout history deployment/my-dep


#查看某个历史详情
kubectl rollout history deployment/my-dep --revision=2

#回滚(回到上次)
kubectl rollout undo deployment/my-dep

#回滚(回到指定版本)
kubectl rollout undo deployment/my-dep --to-revision=2

其他的工作负载

标签:kubectl,replicas,dep,--,详解,deployment,k8s,my
From: https://www.cnblogs.com/zhang790/p/16740859.html

相关文章

  • 【Kubernetes】K8s笔记(三):Kubernetes 中的核心概念 Pod
    目录0.为什么叫Pod1.Pod是Kubernetes中的核心对象2.使用YAML描述Pod3.使用kubectl操作Pod0.为什么叫PodPod这个词原意是“豌豆荚”,后来又延伸出“舱室......
  • request_time和upstream_response_time详解
    下图是request_time。  下图是upstream_response_time.   精准的描述就是:request_time是从接收到客户端的第一个字节开始,到把所有的响应数据都发送完为止。up......
  • 使用grafana+Prometheus监控时PromQL内置函数详解
    1、Prometheus简介Prometheus(中文名:普罗米修斯)是由SoundCloud开发的开源监控报警系统和时序列数据库(TSDB).Prometheus使用Go语言开发,是GoogleBorgMon监控系统的......
  • Python基础(八) | 深浅拷贝、生成器、迭代器以及装饰器详解
    ⭐本专栏旨在对Python的基础语法进行详解,精炼地总结语法中的重点,详解难点,面向零基础及入门的学习者,通过专栏的学习可以熟练掌握python编程,同时为后续的数据分析,机器学习及深......
  • Python字符串格式化%s%d%f详解
    %s字符串string="hello"#%s打印时结果是helloprint"string=%s"%string#output:string=hello#%2s意思是字符串长度为2,当原字符串的长度超过2时,按原长度打......
  • Linux 网络编程——IP 数据报格式详解
    IP数据报首部TCP/IP协议定义了一个在因特网上传输的包,称为IP数据报(IPDatagram)。这是一个与硬件无关的虚拟包,由首部和数据两部分组成。首部的前一部分是固定长度,共2......
  • Linux 网络编程—— libpcap 详解
    概述libpcap是一个网络数据包捕获函数库,功能非常强大,Linux下著名的tcpdump就是以它为基础的。libpcap主要的作用1)捕获各种数据包,列如:网络流量统计。2)过滤网络数据包,列如......
  • Linux 网络编程——TCP 和 UDP 数据报格式详解
    TCP报文格式TCP(TransmissionControlProtocol传输控制协议)是一种面向连接的、可靠的、基于字节流的传输层通信协议。TCP报文段的报头有10个必需的字段和1个可选字段......
  • docker命令图文详解
    安装https://docs.docker.com/engine/install/装ce(社区版)就可以启动命令启动dockersystemctlstartdocker1关闭dockersystemctlstopdocker1重启docker......
  • Kubernetes之Pod详解
    1、Pod生命周期pod创建1.APIServer在接收到创建pod的请求之后,会根据用户提交的参数值来创建一个运行时的pod对象。2.根据APIServer请求的上下文的元数据来验......