zoukankan      html  css  js  c++  java
  • 3.Pod控制器应用进阶

    一、Pod的生命周期

    init container -- Post start  --  running -- pre stop -- main container

    创建Pod经历的过程:->apiServer->etcd保存->scheculer->etcd调度结果->当前节点运行pod(把状态发回apiServer)->etcd保存

    Pod的状态:Pending  Running  Failed   Succeeded  Unkown

    Pod生命周期中的重要行为:

           1、初始化行为(init container)

           2、容器探测:

        存活性状态检测(liveness):存活不代表容器能够提供服务。用于判断容器是否健康,如果不包含此探针,则默认Success,决定Pod状态。

        就绪性状态检测(readiness):容器中服务是否正常,是否能够提供服务。用于判断容器是否启动完成并准备接收请求。 

        【存活性探测(spec.containers.livenessprobe)和就绪性探测(spec.containers.readinessprobe)都拥有以下三种探针:ExecAction、TCPSocketAction、HTTPGetAction】

        就绪性探测与service调度性存在重要关系。如果不做就绪性探测,只要标签匹配上,pod一旦创建就被绑定为service的后端, service直接将用户请求调度到已存活但未就绪的pod上,那么在一段时间内用户请求可能是失败的。

      3、容器的重启策略:

             pod.spec.restartPolicy <string>   # 容器的重启策略字段

                    pod.spec.restartPolicy:#容器的重启策略。有三种,Always(只要退出就重启,默认),OnFailure(当容器终止运行且退出码不为0时, 由kubelet自动重启该容器),Never(只要退出就不重启)。kubelet重新启动的已退出容器将以指数退避延迟(10秒,20秒,40秒......)重新启动,上限为300s,并在成功执行十分钟后重置。

    # Pod一旦调度成功,就永远在已调度的节点上,不会重新调度,除非节点挂了或pod被删除了,才会被重新调度。

      4、lifecycle 

      启动后钩子(spec.containers.lifecycle.postStart):容器创建后立即执行,如果执行失败,容器终止,重启与否取决于重启策略。

      终止前钩子(spec.containers.lifecycle.preStop):exec  httpGet  tcpSocket

    Tips:容器的command比lifecycle的postStart exec command先执行。

     二、常用命令

    # kubectl logs            #获取pod 中的日志
    # kubectl get pods --show-labels  #展示所有pod的标签
    # kubectl get pods -L app  #显示有app标签的标签值
    # kubectl get pods -l app,release  #过滤出有标签app,release标签的pod资源
    # kubectl label --help  #给资源对象打标签
    # kubectl get pods –l release=canary,app=myapp  #等值标签选择器,“与”
    # kubectl label nodes node1 disktype=ssd   #给node1打标,disktype=ssd

    # 许多资源支持内嵌字段,matchLabels或matchExpressions来定义标签选择器

           matchLabels:直接给定键值

           matchExpressions:基于给定的表达式来定义使用的标签选择器

    {key:”KEY”,operator:”OPERATOR” ,values:[VALUE1,VALUE2,VALUE3]}   #操作符一般是逻辑表达式,(In、 NotIn),values的值必须为非空列表,(Exists、NotExists),values的值必须为空列表等。
  • 相关阅读:
    AHP
    常用积分公式
    关于纸张尺寸和照片尺寸
    学历学位知多少?
    C++ 类型转换的实现
    CDDIS网站下 GNSS 相关的数据产品下载+命名方式解读+文件格式说明文件下载地址
    windows 获取pc信息
    shell 数组操作
    net use远程重启服务器
    获取邮箱使用情况、以及最后一次logon时间
  • 原文地址:https://www.cnblogs.com/cmxu/p/12071961.html
Copyright © 2011-2022 走看看