首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

在ReplicaSet中编辑nodeSelector不会重新排列pods

在Kubernetes中,ReplicaSet是用于管理Pod副本数量和健康状态的控制器。它确保指定数量的Pod副本在任何时候都在运行,并且可以自动进行水平扩展或收缩。

当我们在ReplicaSet中编辑nodeSelector时,不会重新排列Pods。nodeSelector是用于选择在哪些节点上运行Pod的标签选择器。它允许我们将Pod调度到具有特定标签的节点上。

编辑nodeSelector只会影响新创建的Pods,对于已经运行的Pods没有影响。这意味着,如果我们在ReplicaSet中编辑nodeSelector,已经在运行的Pods将继续在它们当前所在的节点上运行,而新创建的Pods将根据更新后的nodeSelector选择新的节点。

这种行为是由Kubernetes的设计决策所决定的,它确保了在编辑nodeSelector时不会中断正在运行的Pods。如果我们希望将已经运行的Pods重新调度到新的节点上,我们可以使用其他方法,如使用Deployment来管理Pods,然后通过更新Deployment的模板来实现Pod的重新调度。

腾讯云相关产品和产品介绍链接地址:

  • 腾讯云容器服务(Tencent Kubernetes Engine,TKE):https://cloud.tencent.com/product/tke
  • 腾讯云云服务器(CVM):https://cloud.tencent.com/product/cvm
  • 腾讯云云原生应用平台(Tencent Cloud Native Application Platform,TCAP):https://cloud.tencent.com/product/tcap
页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

Kubernetes之Pod、 Replicaset、 Service、Deployment和Label

作为一个逻辑概念,pod本身没有资源,pod的容器具有资源,创建pod,可以通过定义pod模块。...RCselector设置一个label,去关联pod的label,selector的label与pod的label相同,那么该pod就是该rc的一个实例;RCReplicas设置副本数大小,系统根据该值维护...Replicaset继承Pod的所有特性的同时, 它可以利用预先创建好的模板定义副本数量并自动控制, 通过改变Pod副本数量实现Pod的扩容和缩容 缺点: 无法修改template模板, 也就无法发布新的镜像版本...传统部署方式,实例所在的主机ip(或者dns名字)一般是不会改变的,但是pod的运行状态可动态变化(比如容器重启、切换机器了、缩容过程中被终止了等),所以访问端不能以写死IP的方式去访问该pod提供的服务...8d 10.244.0.37 kube-master # kubectl describe deployment 更新deployment 通过此命令可以呼出vi编辑器对模板进行编辑

1K10

浅入Kubernetes(10):控制节点的部署,选择器、亲和性、污点

目录 标签和nodeSelector 标签选择 亲和性和反亲和性 污点和容忍度 系统默认污点 容忍度 DaemonSet 在前面的学习,我们学到了 Deployment 部署,以及副本数(ReplicaSet... metadata 添加的 Label,可以命令查询时做筛选。...前面我们提到 Deployment 的 metadata 中加上 Label,即 pod 加上 Label,我们也 kubectl get pods 中使用 Label 选择过滤 pod。...前面已经介绍过 Deployments ,而 kind: ReplicaSet 一般是没必要的,可以 kind: Deployment 加上 replicas: 。...DaemonSet 的一些典型用法: 每个节点上运行集群守护进程 每个节点上运行日志收集守护进程 每个节点上运行监控守护进程 yaml ,要配置 Daemont,可以使用 tolerations

79020
  • Kubernetes Pod资源调度之全自动调度和定向调度

    # kubectl get pods -o wide NAME READY STATUS RESTARTS AGE...实际情况下,也可能需要将Pod调度到指定的一些Node上,可以通过Node的标签(Label)和Pod的nodeSelector属性相匹配,来达到上述目的。...首先通过kubectl label命令给目标Node打上一些标签 # kubectl label nodes k8s-node-1 zone=north 然后,Pod的定义中加上nodeSelector...通过基于Node标签的调度方式,我们可以把集群具有不同特点的Node都贴上不同的标签,例 如role=frontend、role=backend``、role=database等标签,部署应用时就可以根据应用的需求设置...如果我们指定了Pod的nodeSelector条件,且集群不存在包含相应标签的Node,则即使集群还有其他可供使用的Node,这个Pod也无法被成功调度。

    1.6K10

    KUbernets实践之pod控制器

    ReplicaSet: 代用户创建指定数量的 pod 副本数量,确保 pod 副本数量符合预期状态,并且支持滚动式自动扩容和缩容功能 Deployment:工作 ReplicaSet 之上,用于管理无状态应用...策略控制: maxSurge:最大激增数, 指更新过程, 最多可以比 replicas 预先设定值多出的 pod 数量, 可以为固定值或百分比,默认为 desired Pods 数的 25%。...计算时向下取整(比如 3.6,取 3) Deployment rollout 时,需要保证 Available(Ready) Pods 数不低于 desired pods number - maxUnavailable...,只需要在 spec 字段添加 nodeSelector 字段,里面是我们需要被调度的节点的 label。...这里的匹配逻辑是 label 的值某个列表,现在 Kubernetes 提供的操作符有下面的几种: In:label 的值某个列表 NotIn:label 的值不在某个列表 Gt:label

    68420

    Kubernetes 资源清单(文章有点长)

    Job、CronJob:为了(批)处理、kubernetes v1.11被废弃的 ReplicationController 服务发现及负载均衡资源(Service Discovery And LoadBalance...简单来说,标签就是“键值”类型的数据,可以资源创建时直接指定,也可以随时按需添加到活动对象。而后即可由标签选择器进行匹配度检查从而完成资源挑选。...实际环境,尽量做到见名知意,且尽可能保持简单 [root@k8s-master ~]# kubectl get pods --show-labels #查看pod信息时,并显示对象的标签信息...类型的资源等,它们spec字段嵌套使用嵌套的“selector”字段,通过“matchlabels”来指定标签选择器,有的甚至还支持使用“matchExpressions”构建复杂的标签选择器机制。...#定义pod资源清单时,可以通过nodeName来指定pod运行的节点,或者通过nodeSelector来挑选倾向的节点 [root@k8s-master ~]# kubectl explain pods.spec

    71710

    Kubernetes 资源控制器使用指南

    咳咳咳, Kubernetes 内建控制器有如下几种,它们的功能和特点各不相同。...然后,它继续向上和向下扩展新的和旧的 ReplicaSet ,具有相同的滚动更新策略。最后,将有 3 个可用的副本新的 ReplicaSet ,旧 ReplicaSet 将缩小到 0。...假设启用水平自动缩放 Pod 集群,可以为 Deployment 设置自动缩放器,并选择最小和最大 要基于现有 Pods 的 CPU 利用率运行的 Pods。... k8s ReplicaSet 和 Deployment 主要是用于处理无状态的服务,无状态服务的需求往往非常简单并且轻量,每一个无状态节点存储的数据重启之后就会被删除。...然而,运行的 Job 将不会被终止,不会删除 Job 或它们的 Pod。为了清理那些 Job 和 Pod,需要列出该 Cron Job 创建的全部 Job,然后删除它们。

    1.6K20

    kubernetes入门-概念篇

    状态为“terminating”; 跟第三步同时,当kubelet发现pod被标记为“terminating”状态时,开始停止pod进程: 如果在pod定义了preStop hook,停止pod前会被调用...Kublete会在API server完成Pod的的删除,通过将优雅周期设置为0(立即删除)。PodAPI消失,并且客户端也不可见。...How Disruption Budgets Work Kubernetes,为了保证业务不中断或业务SLA不降级,需要将应用进行集群化部署。...通过PodDisruptionBudget控制器可以设置应用POD集群处于运行状态最低个数,也可以设置应用POD集群处于运行状态的最低百分比,这样可以保证主动销毁应用POD的时候,不会一次性销毁太多的应用...The ReplicaSet creates Pods in the background.

    2.4K21

    深入掌握K8S Pod

    详细使用可参考:K8S configmap使用 生命周期和重启策略 创建pod出错了,通常会看到pending状态,而你使用 kubectl get pods 时,也偶尔会看到重启这个字段,那么pod...running 运行。所有容器已被创建,至少有一个是运行状态,可通过kubectl logs -f ** 查看日志 succeeded 成功。所有容器执行成功并终止,不会再次重启。...官方建议:不应该使用底层的ReplicaSet来控制Pod副本,推荐直接使用管理ReplicaSet的Deployment对象来控制Pod副本。...定向调度 实际应用,经常会需要将Pod调度到指定的一些Node节点上,这时候可配置NodeSelector或者NodeAffinity来进行定向调度。...NodeSelector 具体的使用: 通过kubectl label命令给目标Node打上标签,可通过kubectl label nodes命令查看所有节点的标签; Pod的定义中加上NodeSelector

    1.3K21

    pod还能这么玩?终于不再担心我的业务了

    日常使用 kubernetes 的过程,很多时候我们并没有过多的关心 pod 的到底调度在哪里,只是通过多副本的测试,来提高的我们的业务的可用性,但是当多个相同业务 pod 分布相同节点时,一旦节点意外宕机...在这种情况下,可以按如下方式编写 yaml, 以便将 "mypod" 放置 "zoneB" 上,而不是 "zoneC" 上。同样,spec.nodeSelector 也要一样处理。...默认拓扑分布约束且仅在以下条件满足 时才会应用到 Pod 上: Pod 没有在其 .spec.topologySpreadConstraints 设置任何约束; Pod 隶属于某个服务、副本控制器、ReplicaSet...高阶用法 结合NodeSelector/NodeAffinity一起使用 pod的拓扑分布约束配置,可以看到我们只有topologyKey的配置选项,并没有任何关于topologyValues的配置字段...您可以利用NodeSelector或NodeAffinity API规范。幕后,PodTopologySpread功能将兑现这一点,并计算满足选择器的节点之间的传播约束。

    56410

    kubernetes核心概念

    # 四、Service Service是对一组提供相同功能的Pods的抽象,并为他们提供一个统一的入口,借助 Service 应用可以方便的实现服务发现与负载均衡,并实现应用的零宕机升级。...all-namespaces 查找Deployment kubectl describe deployment www 查看某个Deployment kubectl edit deployment www 编辑...Recreate 重建策略,创建出新的Pod之前会先杀掉所有已存在的Pod。 Deployment和ReplicaSet两者之间的关系: 使用Deployment来创建ReplicaSet。...当执行更新操作时,会创建一个新的ReplicaSet,Deployment会按照控制的速率将pod从旧的ReplicaSet移 动到新的ReplicaSet # 八、StatefulSet 有状态应用...glusterd, ceph,ingress-controller等 指定Node节点: DaemonSet会忽略Node的unschedulable状态,有两种方式来指定Pod只运行在指定的Node节点上: nodeSelector

    19611
    领券