Kubernetes中内建了很多controller(控制器),这些相当于一个状态机,用来控制Pod的具体状态和行为

  控制器又被称为工作负载,pod通过控制器实现应用的运维,比如伸缩、升级等

  在这里插入图片描述

  1、控制器的类型

  【Deployment】

  适合部署无状态的应用服务,用来管理pod和replicaset,具有上线部署、副本设定、滚动更新、回滚等功能,还可提供声明式更新

  例如只更新一个新的Image

  1、Deployment的概述

  在这里插入图片描述
telegram官网的最新的下载方法怎么找
  2、Deployment控制器的测试使用

  编写配置清单:Deployment-nginx.yaml
telegram中文版的下载网站是什么
  3、Deployment(查看详细信息)

  查看两种方式:describe或者edit

  4、更新

  一般对应用程序升级或者版本迭代时,会通过 Deployment 对 Pod 进行滚动更新。

  5、回滚

  当新版本不稳定时telegram的官网的最新的下载网站在哪里,可以对其进行回滚操作,默认情况下,所有 Deployment 的 rollout 历史都保留在系统中, 可以随时回滚

  6、扩容

  K8S 中支持横向扩容的方法
telegram 官方下载
  暂停部署与取消暂停部署

  【SatefulSet】

  StatefulSet 是用来管理 有状态服务,telegram中文的下载网址为了解决有状态服务的问题,而 Deployment 和 ReplicaSet 更适用于无状态服务的部署

  1、SatefulSet概述

  1》适合部署有状态应用,解决Pod的独立生命周期,保持Pod启动顺序和唯一性,

  2》稳定,唯一的网络标识符,持久存储(例如:etcd配置文件,节点地址发生变化,将无法使用)

  3》有序,优雅的部署和扩展、删除和终止(例如:mysql主从关系,先启动主,再启动从)

  4》有序,滚动更新

  StatefulSet作为Controller为Pod提供唯一的标识, 它可以保证部署和scale的顺序

  StatefulSet是为了解决有状态服务的问题(对应Deployments和Replica Sets是为无状态服务而设计)

  常规的service服务和无头服务的区别

  2、SatefulSet的应用场景

  【Job】

  Job 负载批处理任务,仅执行一次的任务,它能够保证批处理任务的一个或者多个 Pod 成功执行结束
telegram 官方网站的下载地方怎么找
  1、Job特点

  在这里插入图片描述

  jop的测试使用
telegram 的官网的下载地址是多少
  【CronJob】

  CronJob控制器以Job控制器资源为其管控对象,并借助它管理pod资源对象,Job控制器定义的作业任务在其控制器资源创建之后便会立即执行,但CronJob可以以类似于Linux操作系统的周期性任务作业计划的方式控制其运行时间点及重复运行的方式。也就是说,CronJob可以在特定的时间点(反复的)去运行job任务

  在这里插入图片描述

  1、CronJob的资源清单文件

  2、cronjob的使用

  【DaemonSet】(DS)

  1、简述ds

  在这里插入图片描述

  2、DaemonSet控制器的特点

  3、DaemonSet的资源清单文件

  【Horizontal Pod Autoscaler】(HPA)

  在这里插入图片描述

  1、 HPA的概述

  我们已经可以实现通过手工执行命令实现Pod扩容或缩容,但是这显然不符合Kubernetes的定位目标–自动化、智能化。 Kubernetes期望可以实现通过监测Pod的使用情况,实现pod数量的自动调整,于是就产生了Horizontal Pod Autoscaler(HPA)这种控制器

  2、 HPA测试

  部署HPA

  测试:

seo