zoukankan      html  css  js  c++  java
  • k8s——2.Pod概念

    Pod的分类:自主式Pod和控制器管理的Pod

    pod的特点:

    1.一个pod中可以由多个容器,但是只要运行pod,一个叫pause的容器就会被启动

    2.pod中的其他容器可以共享pause这个容器的网络站和存储,也代表在同一个pod里,容器的端口不能冲突

    控制器管理的Pod

    多种控制器介绍:

    ①RelicationController:用来确保容器应用的副本数始终保持在用户定义的副本数,即如果有容器异常退出,会自动创建新的Pod来替代;而如果异常多出来的容器也会自动吸收。

    在新版本的kubenetes中建议使用ReplicaSet来取代RelicationController

    ②ReplicaSet:跟RelicationController没有本质的不同,只是名字不一样,并且ReplicaSet支持集合式的selector(因为创建Pod时,会被打标签),但是RS不支持滚动更新,Deployment支持,并且还可以回滚

    ③Deployment:虽然ReplicaSet可以独立使用,但是一般建议使用Deployment来自动管理ReplicaSet,这样就无需担心跟其他机制的不兼容问题(比如ReplicaSet不支持rolling-update,但Deployment支持),

    Deployment创建时,会去创建一个RS,当滚动更新后,会有一个新的RS,老的RS就会停用,但是回滚时,老的RS会重新启用

    HPA:仅适用于Deployment和ReplicaSet,在V1版本中仅支持根据Pod的CPU利用率扩容,在vlalpha版本中,支持根据内存和用户自定义的metric扩缩容

    下图意思是,HPA会去监控Pod的资源利用率,当利用率大于80%时,会去新建新的Pod,直到达到最大值,当新建到第三个时,利用率达不到80%了,就不会去新建了

    StatefulSet:是为了解决有状态服务的问题(对应Deployment和ReplicaSet是为无状态服务而设计),其应用场景包括:

     ①稳定的持久化储存,即Pod重新调度后还是能访问到相同的持久化数据,基于PVC来实现

     ②稳定的网络标志,即Pod重新调度后其Podname和Hostname不变,基于Headless Service来(即没有Cluster IP 的Service)实现

     ③有序部署,有序扩展,即Pod是有顺序的,在部署或者扩展的时候要依据定义的顺序依次进行(即从0到N-1,在下一个Pod运行之前的Pod都必须是Running和Ready状态),基于init containers实现

     ④有序收缩,有序删除(即从N-1到0)

    DaemonSet:确保全部(或者一些)Node上运行一个Pod的副本,当有Node加入集群时,也会为它们新增一个Pod,当有Node从集群移除时,这些Pod也会被回收,删除DaemonSet将会删除它创建的所有Pod

    使用DaemonSet的一些典型用法:

    ①运行集群存储daemon,例如在每个Node上运行glusterd,ceph

    ②在每个Node上运行日志收集daemon,例如fluentd,logstash

    ③在每个Node上运行监控daemon,例如Prometheus,Node Exporter

    Job:是负责批处理任务,即仅执行一次的任务,它保证批处理任务的一个或者多个Pod成功结束

    Cron Job管理基于时间的的Job,即:在给定时间点只运行一次 

                     周期性的在给定时间点运行

    服务发现

    service收集Pod是通过标签去选择到的,service有自己的一个IP+端口,那个客户端就能访问到service,间接访问到这些Pod,并且有个轮询机制

     

  • 相关阅读:
    爱她就用python给她画个小心心 ♥(ˆ◡ˆԅ)
    用python画小猪佩奇(非原创)
    (解释文)My SQL中主键为0和主键自排约束的关系
    (细节)My SQL中主键为0和主键自排约束的关系
    My SQL常用操作汇总
    博客搬运同步至腾讯云+社区声明
    mysql在ubuntu中的操作笔记(详)
    vim编辑器操作汇总
    linux常用命令汇总
    在python中单线程,多线程,多进程对CPU的利用率实测以及GIL原理分析
  • 原文地址:https://www.cnblogs.com/zhaobobo001/p/15580505.html
Copyright © 2011-2022 走看看