首页 > 其他分享 >在k8S中,DaemonSet类型的资源特性有哪些?

在k8S中,DaemonSet类型的资源特性有哪些?

时间:2024-02-09 18:33:04浏览次数:27  
标签:哪些 实例 集群 DaemonSet Pod k8S 节点 运行

Kubernetes (k8S) 中的 DaemonSet 是一种控制器资源,它具有以下关键特性:

  1. 每个节点运行一个实例

    • DaemonSet 确保集群中的每个节点(满足特定条件的节点)上都运行一个Pod副本。这意味着无论何时创建或加入新的节点到集群中,DaemonSet都会自动为新节点调度和管理一个Pod。
  2. 目标节点选择

    • 通过使用NodeSelector、NodeAffinity 或其他节点标签,可以精确地控制DaemonSet中的Pod部署在哪些节点上。例如,可以选择仅在具有特定硬件或功能的节点上运行DaemonSet。
  3. 自适应性

    • 当节点加入或离开集群时,DaemonSet会自动添加或删除相应的Pod。如果一个节点被删除或者由于某种原因变得不可用,那么该节点上的DaemonSet Pod也会被清理;反之,如果有新节点加入,DaemonSet将确保在新节点上启动一个Pod实例。
  4. 单一实例约束

    • 默认情况下,DaemonSet保证在每个节点上只运行一个Pod实例。这可以通过PodDisruptionBudget等机制来进一步强化,并且可以通过PodAntiAffinity规则来避免同一个节点上运行多个相同的DaemonSet Pod。
  5. 全局覆盖与本地守护进程

    • DaemonSet通常用于部署那些提供集群层面功能的服务,如日志收集代理(如Fluentd或Filebeat)、监控代理(如Prometheus Node Exporter或cAdvisor)、网络插件以及其他需要在每个工作节点上都有一个实例运行的基础服务。
  6. 更新策略

    • DaemonSet也支持版本升级和回滚操作,允许用户控制Pod的更新方式,类似于Deployment的滚动更新策略,但更侧重于节点级别的更新而不是基于副本数量。
  7. 生命周期管理

    • DaemonSet能够管理其Pod的生命周期,包括初始化容器、健康检查以及重启策略等。

综上所述,DaemonSet的主要作用是确保集群中的所有(或符合条件的部分)节点上都能按需运行指定的系统守护进程或其他基础组件,以提供集群范围内的基础设施支持。

标签:哪些,实例,集群,DaemonSet,Pod,k8S,节点,运行
From: https://www.cnblogs.com/huangjiabobk/p/18012574

相关文章

  • 在k8S中,初始化容器(init container)概念原理是什么?
    在Kubernetes(k8S)中,初始化容器(InitContainer)是一个特殊类型的容器,它会在应用程序容器启动之前运行。它的主要目的是执行一些必要的先决条件任务,这些任务必须在主应用容器开始服务前完成。初始化容器的概念原理如下:顺序执行:Pod中可以定义多个初始化容器,它们按照配置文件......
  • 在k8S中,deployment升级过程是什么?
    在Kubernetes(k8s)中,Deployment升级过程是一个受控且平滑的过程,用于将应用的新版本无缝地替换旧版本。以下是Deployment进行滚动升级的基本步骤:更新Deployment配置:首先,你需要更新Deployment的yaml配置文件,例如更改镜像标签到新版本的应用程序镜像。提交变更:应用这些更......
  • 在k8S中,Pod的常见调度方式有哪些?
    在Kubernetes(k8s)中,Pod的调度可以通过多种方式来实现其在集群中的节点分配。以下是Pod常见的调度方式:默认调度:默认情况下,Kubernetes调度器会自动根据资源需求(CPU、内存等)、节点标签选择器、污点和容忍度(TaintsandTolerations)、亲和性和反亲和性规则等因素为Pod分......
  • k8s 常用命令
    pod:1、查看所有工作空间的podkubectlgetpods-A2、查看所有pod的标签kubectlgetpods--show-labels3、查看pod的详细信息(如ip)kubectlgetpods-owide4、查看某个pod的报错和详细信息(如查看pod为什么Pending)kubectldescribepoddb-mysql-f7fbfdd68-nf2jk......
  • 【当一次恶人】对不起大家,扫描黄色网站并举报它!我不想哪些污秽的声音出现在它不该出现
    因为工作和定居地不在一个地方,租公寓时间比较长,换了些地方,同一发现总是到某个时间点,网络就容易卡,刚开始没有觉得,单纯的觉得就是下班了,用网的人多;直到最近换了个装修不错的地方,结果隔音很差,经常听到某个邻居看羞羞的小电影;自己看就算了,你还不带耳机,不带耳机就算了,还尼玛说不听,那就......
  • 解决kubeadm部署的k8s 集群证书过期
    目录一、查看证书过期时间1.1方式一1.2方式二二、通过命令续期2.1修改集群内所有机器的时间,模拟证书在过期的边缘2.2查看证书有效期2.3备份原有数据2.4备份证书2.5更新证书2.6确认证书有效期2.7更新kubeconfig文件2.8更新客户端证书2.9重启相关的po......
  • 在K8S中,Pod可能位于的状态有什么?
    在Kubernetes(K8s)中,Pod可能处于以下几种状态:Pending:Pod已经被集群接受,但至少有一个容器镜像尚未创建。这个阶段包括调度Pod到节点的时间、下载容器镜像时间以及等待其他初始化条件满足的过程。ContainerCreating:这是一个过渡状态,表示kubelet正在为Pod创建容器,这包括从镜......
  • 在K8S中,创建一个Pod的主要流程是什么?
    在Kubernetes(简称K8s)中创建一个Pod的主要流程如下:用户请求:用户通过kubectl命令行工具或API接口提交一个Pod的定义,通常是通过YAML或JSON格式的配置文件来描述Pod的详细信息,包括容器镜像、环境变量、资源需求、卷挂载等。APIServer接收入口:用户的请求首先到达Kubernetes......
  • 在K8S中,Pod的重启策略是什么?
    在Kubernetes(K8S)中,Pod的重启策略是通过restartPolicy字段指定的,用于定义当Pod中的容器终止时kubelet应如何处理这些容器。以下是三种主要的重启策略:Always:这是默认的重启策略。如果一个容器终止(无论退出码是什么),kubelet都会自动重启该容器。这意味着只要Pod没有被删除或者节......
  • 在K8S中,Pod的健康检查方式有哪些?
    在Kubernetes(K8s)中,Pod的健康检查主要通过两种类型的探针实现:LivenessProbe和ReadinessProbe。LivenessProbe(存活探针):用于检测容器是否处于正常运行状态。如果LivenessProbe失败,则表明容器已不再健康,并且kubelet会采取相应行动,通常是重启容器。LivenessProbe可......