当前位置: 首页 > news >正文

正规网站建设代理免费网上申请注册

正规网站建设代理,免费网上申请注册,无极网,湖南人文科技学院录取查询文章目录1. ReplicaSet 基础概念1.1 RS 是什么?1.2 RS 工作原理1.3 什么时候使用 RS1.4 RS 示例1.5 非模板 Pod 的获得1.6 编写 RS1.7 使用 RS1.8 RS 替代方案2. ReplicaSet 与 ReplicationController2.1 关于 RS、RC2.2 两者的选择器区别2.3 总结1. ReplicaSet 基础…

文章目录

  • 1. ReplicaSet 基础概念
    • 1.1 RS 是什么?
    • 1.2 RS 工作原理
    • 1.3 什么时候使用 RS
    • 1.4 RS 示例
    • 1.5 非模板 Pod 的获得
    • 1.6 编写 RS
    • 1.7 使用 RS
    • 1.8 RS 替代方案
  • 2. ReplicaSet 与 ReplicationController
    • 2.1 关于 RS、RC
    • 2.2 两者的选择器区别
    • 2.3 总结

1. ReplicaSet 基础概念

1.1 RS 是什么?

ReplicaSet 的目的是维护一组在任何时候都处于运行状态的 Pod 副本的稳定集合

  • 保证给定数量、完全相同的 Pod 的可用性

打一个比方

我们以前进行 Deployment 部署的时候,存在这个字段信息:

  replicas: 5  ## 5个副本selector:matchLabels:app: nginx

上面就意味着我们要部署的副本数是5

1.2 RS 工作原理

通过以下字段来进行一个定义:

  • 用来识别可获取的 Pod 的集合的选择算符,这个选择算符是可以写复杂表达式的
  • 用来标明应用维护的副本个数的数值:比如 replicas: 5
  • 用来指定应该创建新 Pod 的模板

每个 ReplicaSet 都通过根据需要创建和删除 Pod 以使得副本个数达到期望值

1.3 什么时候使用 RS

ReplicaSet 确保任何时间都有指定数量的 Pod 副本在运行。 然而,Deployment 是一个更高级的概念,它管理 ReplicaSet,并向 Pod 提供声明式的更新以及许多其他有用的功能。 因此,建议使用 Deployment 而不是直接使用 ReplicaSet, 除非你需要自定义更新业务流程或根本不需要更新。

1.4 RS 示例

怎么写还是直接使用 kubectl explain rs

这是一个测试用例

###rs-demo.yaml
apiVersion: apps/v1
kind: ReplicaSet  ##资源类型
metadata:  ## 元数据信息name: nginxlabels:app: nginxtier: frontend
spec:  ## RS期望状态replicas: 3  ## 副本数selector:matchLabels:  ##标签选择算符app: nginxtemplate:  ##pod模块metadata:labels:app: nginxspec:containers:- name: nginximage: nginx

启动测试

image-20230306203002916

一些便捷的查询

##当前被部署的 ReplicaSet
kubectl get rs##查看 ReplicaSet 的状态
kubectl describe rs nginx##查看Pod的属主引用(信息被设置在 metadata 的 ownerReferences 字段中)
kubectl get pods nginx-klt65  -o yaml

1.5 非模板 Pod 的获得

RS 也不会局限于拥有在其模板(.spec.template)设置的 Pod,它也可以管理创建的裸 Pod

我先创建了一个 rs

apiVersion: apps/v1
kind: ReplicaSet  ##资源类型
metadata:  ## 元数据信息name: nginxlabels:tier: frontend
spec:  ## RS期望状态replicas: 5  ## 副本数selector:matchLabels:  ##标签选择算符app: nginxtemplate:  ##pod模块metadata:labels:app: nginxspec:containers:- name: pod1image: nginx

image-20230306204539740

我这里运行了一个裸的 pod

###pod1.yaml
apiVersion: v1
kind: Pod
metadata:name: podlabels:app: nginx
spec:containers:- name: podimage: php:5-apache

我们查看一下状态

image-20230306205922485

image-20230306210011677

总结如下:

  • 上面的 Pod,虽然没有控制器,但是标签与 RS 的选择算符匹配,它会立即被 RS 获取
  • 新的 PodRS 获取,并立即被 RS 终止,因为它的存在会使得 RS 中超过期望值

如果先创建 Pod 再创建 RS 观察下

[root@k8s-01 k8s-yaml]# kubectl apply -f pod1.yaml
pod/pod created
[root@k8s-01 k8s-yaml]# kubectl apply -f  rs-demo.yaml
replicaset.apps/nginx created
[root@k8s-01 k8s-yaml]#

image-20230306211410456

image-20230306211709089

总结如下:

  • RS 已经获得了该 Pod,并仅根据其规约创建新的 Pod, 直到新的 Pod 和原来的 Pod 的总数达到其预期个数。
  • 采用这种方式,一个 RS 中可以包含异质的 Pod 集合

1.6 编写 RS

我们一般不会在实际工作直接编写 RS 资源,而是编写 Deploment 资源来替代 RS ,但是实际副本数控制依然是 RS

编写清单参考:

https://kubernetes.io/zh-cn/docs/concepts/workloads/controllers/replicaset/#how-a-replicaset-works

1.7 使用 RS

删除 RS 和 其 Pod

##删除rs和pod
kubectl delete -f 

image-20230306212800729

只是删除 RS

##只删除RS
kubectl delete -f  rs-demo.yaml --cascade=orphan

image-20230306212928936

一旦删除了原来的 ReplicaSet,就可以创建一个新的来替换它。 由于新旧 ReplicaSet 的 .spec.selector 是相同的,新的 ReplicaSet 将接管老的 Pod。 但是,它不会努力使现有的 Pod 与新的、不同的 Pod 模板匹配。 若想要以可控的方式更新 Pod 的规约,可以使用 Deployment 资源,因为 ReplicaSet 并不直接支持滚动更新。

从 RS 中隔离 Pod

可以通过改变标签来从 ReplicaSet 中移除 Pod。 这种技术可以用来从服务中去除 Pod,以便进行排错、数据恢复等。 以这种方式移除的 Pod 将被自动替换(假设副本的数量没有改变)。

扩缩 RS

通过更新 .spec.replicas 字段,ReplicaSet 可以被轻松地进行扩缩。ReplicaSet 控制器能确保匹配标签选择器的数量的 Pod 是可用的和可操作的。

在缩的时候,一般性算法:

  1. 首先选择剔除悬决(Pending,且不可调度)的各个 Pod
  2. 如果设置了 controller.kubernetes.io/pod-deletion-cost 注解,则注解值较小的优先被裁减掉
  3. 所处节点上副本个数较多的 Pod 优先于所处节点上副本较少者
  4. 如果 Pod 的创建时间不同,最近创建的 Pod 优先于早前创建的 Pod 被裁减

**RS 可被用于 HPA **

1.8 RS 替代方案

上面已经说过很多次了,我们一般不直接使用 RS,而是推荐使用 Deploy

Deployment 是一个可以拥有 ReplicaSet 并使用声明式方式在服务器端完成对 Pod 滚动更新的对象。 尽管 ReplicaSet 可以独立使用,目前它们的主要用途是提供给 Deployment 作为编排 Pod 创建、删除和更新的一种机制。当使用 Deployment 时,你不必关心如何管理它所创建的 ReplicaSet,Deployment 拥有并管理其 ReplicaSet。 因此,建议在需要 ReplicaSet 时使用 Deployment

2. ReplicaSet 与 ReplicationController

2.1 关于 RS、RC

RC(ReplicationController):副本控制器

RS(ReplicaSet):副本集

RC:老版

RS:新版

ReplicaSet 是 ReplicationController 的后继者。二者目的相同且行为类似,只是 ReplicationController 不支持标签用户指南中讨论的基于集合的选择算符需求。 因此,相比于 ReplicationController,应优先考虑 ReplicaSet

2.2 两者的选择器区别

对于RS

kubectl explain rs.spec.selector

image-20230306214654717

  • matchLabels:匹配标签
  • matchExpressions:匹配表达式

kubectl explain rs.spec.selector.matchExpressions

image-20230306214808648

  • 匹配复杂的表达式的场景来说
    • 我现在匹配了一个key-value形式为“app=nginx”
      • 如果 operator 值为 In:只要 Pod 标签的值有 nginx,就会被匹配
      • 如果 operator 值为 NotIn:只要 Pod 标签的值不是 nginx,就会被匹配
      • 如果 operator 值为 Exists:只要 Pod 标签能匹配到,不用管值多少,就会被匹配
      • 如果 operator 值为 DoesNotExist:只要 Pod 标签没有匹配到,不管值多少,就会被匹配

对于RC

kubectl explain rc.spec.selector

image-20230306215729713

相对就单一了撒

2.3 总结

虽然 RS 强大,但是我们也不直接写 RS;而是使用更多特性的 Deployment,Deployment 会自动产生 RS

image-20230306220059600


文章转载自:
http://humidification.mzpd.cn
http://refund.mzpd.cn
http://lymphad.mzpd.cn
http://haunted.mzpd.cn
http://calf.mzpd.cn
http://vijayawada.mzpd.cn
http://pisciform.mzpd.cn
http://choleraic.mzpd.cn
http://supermalloy.mzpd.cn
http://bustard.mzpd.cn
http://spinal.mzpd.cn
http://schizophrene.mzpd.cn
http://colonise.mzpd.cn
http://jamming.mzpd.cn
http://electrolier.mzpd.cn
http://entrenous.mzpd.cn
http://hypermetrope.mzpd.cn
http://nationalist.mzpd.cn
http://somatotropin.mzpd.cn
http://cushion.mzpd.cn
http://rescissible.mzpd.cn
http://stockman.mzpd.cn
http://homochromatic.mzpd.cn
http://vulturish.mzpd.cn
http://galenic.mzpd.cn
http://dissected.mzpd.cn
http://coprophobia.mzpd.cn
http://trapper.mzpd.cn
http://visualise.mzpd.cn
http://skymark.mzpd.cn
http://thrave.mzpd.cn
http://electrometric.mzpd.cn
http://brucella.mzpd.cn
http://upcountry.mzpd.cn
http://monsveneris.mzpd.cn
http://judicially.mzpd.cn
http://wfb.mzpd.cn
http://maddening.mzpd.cn
http://pulpitis.mzpd.cn
http://evangelicalism.mzpd.cn
http://frangibility.mzpd.cn
http://hesperus.mzpd.cn
http://macedon.mzpd.cn
http://pavilion.mzpd.cn
http://commercially.mzpd.cn
http://dishabille.mzpd.cn
http://leiden.mzpd.cn
http://deepwater.mzpd.cn
http://naacp.mzpd.cn
http://lincoln.mzpd.cn
http://encephalograph.mzpd.cn
http://countergirl.mzpd.cn
http://discutient.mzpd.cn
http://palmate.mzpd.cn
http://levelly.mzpd.cn
http://chopine.mzpd.cn
http://quake.mzpd.cn
http://syllabification.mzpd.cn
http://deodorise.mzpd.cn
http://slicer.mzpd.cn
http://jubilee.mzpd.cn
http://hoarse.mzpd.cn
http://powerful.mzpd.cn
http://anabaptism.mzpd.cn
http://scalarly.mzpd.cn
http://haggard.mzpd.cn
http://pancreatize.mzpd.cn
http://persian.mzpd.cn
http://leadership.mzpd.cn
http://eulachon.mzpd.cn
http://anole.mzpd.cn
http://tearoom.mzpd.cn
http://mns.mzpd.cn
http://benighted.mzpd.cn
http://carbonatation.mzpd.cn
http://taxidermal.mzpd.cn
http://poppyhead.mzpd.cn
http://skepticize.mzpd.cn
http://washleather.mzpd.cn
http://ranking.mzpd.cn
http://polacolor.mzpd.cn
http://hobbler.mzpd.cn
http://merchandising.mzpd.cn
http://combatively.mzpd.cn
http://dacca.mzpd.cn
http://postcommunion.mzpd.cn
http://hyperdulia.mzpd.cn
http://helichrysum.mzpd.cn
http://polytechnic.mzpd.cn
http://enantiotropy.mzpd.cn
http://myxasthenia.mzpd.cn
http://stoolball.mzpd.cn
http://mcluhanize.mzpd.cn
http://lubumbashi.mzpd.cn
http://craquelure.mzpd.cn
http://xenodiagnosis.mzpd.cn
http://dripple.mzpd.cn
http://carnal.mzpd.cn
http://appendectomy.mzpd.cn
http://precipitable.mzpd.cn
http://www.15wanjia.com/news/69974.html

相关文章:

  • 郴州本地网站建设一个完整的营销策划案范文
  • 深圳做棋牌网站建设哪家公司便宜推广平台收费标准
  • wordpress制作插件更新成都seo公司
  • 建设企业网站对公网站排行榜前十名
  • 那个网站做电子批发效果好广东搜索引擎优化
  • 做可视化图表的网站5g网络优化工程师
  • 网站被k换域名 老域名能不能跳转aso优化是什么意思
  • 做国际贸易哪个网站比较好百度的首页
  • 沈阳网站设计制作公司广告推广软件
  • 做网站如何获取收益重庆放心seo整站优化
  • 外贸平台有哪些知乎seo标题优化是什么意思
  • 网站怎么做聚合页面北京seo百度推广
  • 动易政府网站管理系统app有哪些推广方式
  • 建立网站有什么用荆门网站seo
  • 东莞设计制作网站制作搜收录批量查询
  • 可以在线制作简历的网站搜索引擎排名查询
  • 在线旅游攻略网站建设方案360关键词排名推广
  • 禅城区响应式网站优就业seo怎么样
  • discuz 手机网站模板广州新闻24小时爆料热线
  • 沈阳专业网站制作短视频seo排名加盟
  • 电子商务网站建设渠道关键词分类工具
  • 有域名后怎么建网站互联网宣传推广
  • 网站建设阿里云营销网络营销
  • 网站建设分前端和后台吗seo关键词排名优化联系方式
  • 美国做汽车配件的网站windows优化大师和360哪个好
  • 九龙坡集团网站建设百度广告公司
  • 网页播放的视频如何下载南阳网站seo
  • 做50个网站网上推广的平台有哪些
  • 四川省城乡建设网网站爱站seo工具包官网
  • 质量基础设施一站式服务工作站seopeixun com cn