在Kubernetes(简称K8s)中,静态Pod、自主式Pod和动态Pod是不同管理方式下的Pod类型,它们的区别主要体现在创建和管理方式上:

  1. 静态Pod

    • 静态Pod是由kubelet直接管理的,其配置文件存储在节点本地而非通过API Server创建。
    • kubelet会根据指定路径下的静态Pod配置文件来创建和管理Pod,这些Pod不会被其他控制器如Deployment、ReplicaSet等控制。
    • 当kubelet重启时,它会自动重新创建静态Pod,并且由于静态Pod的元数据不存储在etcd中,因此不能通过kubectl命令进行直接操作。
  2. 自主式Pod(Ad-Hoc Pod或Non-Controller Managed Pod)

    • 自主式Pod是指那些由用户直接创建但不受任何控制器管理的Pod。它们通常通过kubectl run命令或直接向API Server提交YAML/JSON配置文件的方式来创建。
    • 自主式Pod一旦创建,除非手动删除,否则不会自动消失或者被重建。
    • 这类Pod没有与之关联的控制器,所以如果Pod出现故障,不会像受控制器管理的Pod那样自动恢复到期望状态。
  3. 动态Pod

    • 动态Pod一般指的是由控制器(如Deployment、StatefulSet、DaemonSet等)管理的Pod。
    • 控制器负责监视集群的状态并确保实际运行的Pod数量符合预期(例如保持一定数量的副本),当Pod因各种原因终止时,控制器会自动创建新的Pod以替代。
    • 动态Pod的生命周期受到控制器策略的严格管理和维护,包括健康检查、滚动更新、扩展缩容等功能。

综上所述,静态Pod适用于需要在特定节点上始终运行且无需集群级别管理的应用场景;自主式Pod用于临时性的或一次性任务,不依赖于控制器自动恢复机制;而动态Pod则是Kubernetes中常态化的应用部署方式,具有高度自动化和弹性伸缩能力。

在K8S中,静态、动态、自主式Pod有何区别?的更多相关文章

  1. k8s 中的 Pod 细节了解

    k8s中Pod的理解 基本概念 k8s 为什么使用 Pod 作为最小的管理单元 如何使用 Pod 1.自主式 Pod 2.控制器管理的 Pod 静态 Pod Pod的生命周期 Pod 如何直接暴露服务 ...

  2. k8s 中的 service 如何找到绑定的 Pod 以及如何实现 Pod 负载均衡

    k8s 中的 service 如何找到绑定的 Pod 以及如何实现 Pod 负载均衡 前言 endpoint kube-proxy userspace 模式 iptables ipvs kernels ...

  3. K8S中pod和container的资源管理:CPU和Memory

    K8S中创建pod时,可以显示地指明包含的container的资源需求(resouce request和resource limit),通常是CPU和Memory(RAM). kube-schedul ...

  4. K8s中的网络

    Kubernetes的网络通信问题: 1. 容器间通信: 即同一个Pod内多个容器间通信,通常使用loopback来实现. 2. Pod间通信: K8s要求,Pod和Pod之间通信必须使用Pod-IP ...

  5. 在k8s中的基本概念

    在k8s中的基本概念 一.Pod1. podk8s下最重要也最基本的概念,由一个根容器Pause和许多用户业务容器组成,是容器的载体. 2. pod的yaml定义格式及字段 apiVersion: v ...

  6. Docker & k8s 系列三:在k8s中部署单个服务实例

    本章将会讲解: pod的概念,以及如何向k8s中部署一个单体应用实例. 在上面的篇幅中,我们了解了docker,并制作.运行了docker镜像,然后将镜像发布至中央仓库了.然后又搭建了本机的k8s环境 ...

  7. k8s核心资源之namespace与pod污点容忍度生命周期进阶篇(四)

    目录 1.命名空间namespace 1.1 什么是命名空间? 1.2 namespace应用场景 1.3 namespacs常用指令 1.4 namespace资源限额 2.标签 2.1 什么是标签 ...

  8. iOS 静态:动态 Pod

    一.静态和动态 在项目中使用 pod 实现模块化,对于子模块和第三类库的导入方式存在两种:静态库.动态库. 当在 podfile 中指定 use_frameworks! 时,子模块和第三方类库将被打包 ...

  9. k8s 中 Pod 的控制器

    k8s 中 Pod 的控制器 前言 Replication Controller ReplicaSet Deployment 更新 Deployment 回滚 deployment StatefulS ...

  10. 【JVM故障问题排查心得】「内存诊断系列」Docker容器经常被kill掉,k8s中该节点的pod也被驱赶,怎么分析?

    背景介绍 最近的docker容器经常被kill掉,k8s中该节点的pod也被驱赶. 我有一个在主机中运行的Docker容器(也有在同一主机中运行的其他容器).该Docker容器中的应用程序将会计算数据 ...

随机推荐

  1. 数据分析引擎百花齐放,为什么要大力投入ClickHouse?

    更多技术交流.求职机会.试用福利,欢迎关注字节跳动数据平台微信公众号,回复[1]进入官方交流群 近年来,OLAP产品的竞争日渐激烈,目前企业间流行的既有Impala.Greenplum等上一代较为成熟 ...

  2. python 升级后 yum 无法使用 File "/usr/bin/yum", line 30 except KeyboardInterrupt, e: `/usr/libexec/urlgrabber-ext-down`

    原因为升级python后新建了软连接指向了新版本,除非同时升级yum不然无法使用.需要手动更改报错文件指向新版本后即可解决. [root@localhost pdserving]# yum insta ...

  3. PPT 难吗

    多看 http://www.zcool.com.cn/ http://www.huaban.com

  4. 简洁好用的python-pip包更新工具

    今天推荐一个github的开源工具 pkgu,支持以表格形式展示当前python环境下的有新版本的package的版本信息,并支持全部或部分更新这些已经过期或者有新版的库. 该工具目前还提供了 cac ...

  5. Netty 框架学习 —— 初识 Netty

    Netty 是一款异步的事件驱动的网络应用程序框架,支持快速地开发可维护的高性能的面向协议的服务器和客户端 Java 网络编程 早期的 Java API 只支持由本地系统套接字库提供的所谓的阻塞函数, ...

  6. Codeforce:208A. Dubstep (字符串处理,正则表达式)

    Vasya works as a DJ in the best Berland nightclub, and he often uses dubstep music in his performanc ...

  7. 【换模型更简单】如何用 Serverless 一键部署 Stable Diffusion?

    作者|寒斜(阿里云智能技术专家) 前文回顾 AI 作画火了,如何用 Serverless 函数计算部署 Stable Diffusion? [自己更换模型]如何用 Serverless 一键部署 St ...

  8. shell脚本(8)-流程控制if

    一.单if语法 1.语法格式: if [ condition ] #condition值为 then commands fi 2.举例: [root@localhost test20210725]# ...

  9. macOX常用快捷键(结尾有彩蛋)

    macOX的快捷键与windows10有所不同,了解了以后会更加提高我们的工作效率. Mac中主要有四个修饰键,分别是Command,Control,Option和Shift. 一.基本的快捷键: C ...

  10. 玩转 Helm 之 upgrade

    0. 前言 在 玩转 Helm 一文中,简略提到了 Helm upgrade 的策略. 在实际项目开发上,upgrade 多是调研的重点.基于此,这里对 upgrade 继续展开. 1. basic ...