zoukankan      html  css  js  c++  java
  • k8s-RC副本机制

    一、libeness probe的三种检测机制

    1. HTTP GET:对容器的IP(指定的端口和路径)执行HTTP GET请求,收到响应并返回状态码不代表错误(2xx/3xx),成功
    2. TCP socket:与容器指定端口建立TCP链接,建立链接成功,表示检测成功
    3. Exec:在容器内执行自定义命令,退出状态码是0,检测成功 

    二、liveness probe探测机制

    1. kubernetes会在容器崩溃或健康检测失败时(默认连续3次检测都失败,则认为检测失败)通过重启容器保持运行 
    2. 当容器被强制终止时,会创建一个新的容器(而不是重启原来的容器)
    3. 探测附加属性:
      delay(延迟):容器启动后延迟多久开始监控检测(务必设置一个合理的延迟时间,否则在容器进程为完全运行前,检测已经失败,导致容器进入重启死循环)
      timeout(超时):容器的响应时间,超过设定值则超时
      period(周期):间隔多久进行下一次检测
      failure(失败):连续失败多少次后判定检测失败
    4. 检测的准确行:仅检测容器自身进程,(web前段正常,后端故障,重启前段无法恢复问题)
    5. 检测的轻量:资源消耗低、运行时间短(保证容器的轻量的同时不影响容器的运行质量)
    6. 健康检测重启pod是通过节点kubectl完成的(若节点故障则无法恢复)


    四、ReplicationController(简称:RC)

    1. RC是一种资源,确保他的pod始终运行在期望的状态(用户指定的pod数量,即:几副本状态)
    2. RC会持续监控正在运行的pod列表
    3. 当RC的pod无论因何种数量发生变化,RC会根据模板新建,或删除一定数量的pod,已确保pod运行在期望的状态
    4. 通过RC可以实现pod的手动/自动伸缩
    五、RC的组成
    1. label selector:标签选择器,用于确定RC作用域中有哪些pod(yml文件可以不指定,默认会根据pod的模板读取)
    2. replica count:副本数量,指定运行的pod数量 
    3. pod template:pod模板,用于创建新的pod副本

    六、RC的作用域 

    1. RC通过作用域管理对应标签的pod
    2. 修改pod的标签后,pod将脱离RC的管控,当pod故障时不会重新被调度
    3. 注意:当修改pod的标签后,对RC本身无影响,他会重新创建出新的pod,直至达到预期状态 

    七、使用ReplicaSet(简称RS)代替RC

    1. ReplicaSet与RC的行为完全相同
    2. ReplicaSet可以仅通过标签的key匹配pod(RC必须匹配完整的标签:keyvalue)
    3. 修改ReplicaSet对现有的pod无影响,若想更新RS,可以删除现有的pod,RS会更具模板创建新的pod 

    八、更具表达力的标签选择器

    1. key:标签的名称
    2. operator:运算符:多个运算符可以一起使用,但是必须所有表达式都为true
      1)In:label的值必须与其中一个指定的values匹配
      2)NotIn:Label的值与指定的所有values都不匹配
      3)Exists:只匹配key部分,使用次运算符时不指定values字段
      4)DoesNotExist:匹配除指定key以外的所有key ,使用次运算符时不指定values字段
    3. values:标签的值

     九、DaemonSet在每个节点运行一个pod

    1. DaemonSet的目的是用来运行系统服务
    2. 确保每个节点上运行一个pod
    3. 若有人在某一节点删除了一个pod,那么DaemonSet会在该节点重建pod
    4. 当新节点加入集群时,DaemonSet会立刻部署一个新的pod
    5. DaemonSet也可以只在集群中指定节点部署pod(由pod模板指定) 
    6. 注意:在集群中可以设置节点的属性为“不可调用”,但是DaemonSet还是会在这些节点部署pod,因为DaemonSet不通过调度器进行调度
  • 相关阅读:
    Chrome开发者工具中Elements(元素)断点的用途
    最简单的SAP云平台开发教程
    Java实现 LeetCode 495 提莫攻击
    Java实现 LeetCode 494 目标和
    Java实现 LeetCode 494 目标和
    Java实现 LeetCode 494 目标和
    Java实现 LeetCode 493 翻转对
    Java实现 LeetCode 493 翻转对
    Java实现 LeetCode 493 翻转对
    Java实现 LeetCode 492 构造矩形
  • 原文地址:https://www.cnblogs.com/jayce9102/p/10616297.html
Copyright © 2011-2022 走看看