zoukankan      html  css  js  c++  java
  • K8S 控制器理解

    控制器:  用来控制Pod的具体状态和行为

    Pod 分类

      自主式Pod : Pod退出, 此类型Pod不会被创建. 

      控制器Pod : 在控制器的生命周期始终维持Pod的副本数量. (就算Pod死亡, 也会自动创建维持Pod的数量)

      

    控制器分类

    ReplicationController (RC), ReplicaSet(RS支持集合式的selector):  副本控制器

    RS和Deploment关系, =>   Deploment通过RS来控制Pod

    Deployment : 

     为Pod和ReplicaSet提供一个声明式方法,用来代替ReplicationController来方便管理应用,典型的场景有:

     1>定义Deployment来创建Pod和ReplicaSet

     2>滚动升级和回滚应用

     3>扩容和缩容

     4>暂停和继续Deploment

    DaemonSet

    确保全部(一些)Node上运行一个Pod副本.  当有Node加入集群,会为他们新增一个Pod,删除DaemonSet将会删除它创建的Pod.

    使用场景:

      运行集群的存储daemon,

      每个Node的日志收集, fluentd ,logtash

      每个Node的监控程序.

      

    Job

    负责批量任务,仅执行一次任务, 保证批处理任务一个或多个Pod成功结束

    CronJob
    定时调度某个时间执行一次或循环多次执行

    StatefulSet

    作为Controller为Pod提供唯一的标识 , 证部署和scale的顺序.

    StatefulSet用来解决有状态服务的问题, 场景如下:

    1>稳定的持久化存储, 即Pod重新调度后能访问持久化数据,基于PCV实现,

    2>稳定的网络标识, 即Pod重新调度后PodName和HostName不变, 基于Headless Services(即没有Cluster IP的Service) 来实现.
    3>有序部署和有序扩展, 0-> N  下一个执行基于前一个已经Running或Ready, 基于InitC实现

    4>有序删除N->0

    Horizontal Pod Autosacling

  • 相关阅读:
    vue.api
    v-resource
    vue.js路由
    computed watch methods
    vue.js生命周期
    flex布局
    字符截取 slice substr substring
    原生Ajax书写
    jq动画
    css 3动画
  • 原文地址:https://www.cnblogs.com/eason-d/p/11758384.html
Copyright © 2011-2022 走看看