K8S
● pod
pause是pod的基础镜像,给pod启动提供基本依赖环境。pod内的多容器共享pause的ip地址和存储
卷
● 自助式pod
● 控制器管理pod的
● Job
● Cron Job管理基于时间的Job,即:
● 在给定时间点只运行一次
● 周期性地在给定时间点运行
● 负责批处理任务,即仅执行一次的任务,它保证批处理任务的一个或多个pod成功结束
● DaemonSet
● 确保全部(或者一些,在Node上打污点,这些污点是可以不被调度的。在DaemonSet创建的
时候,打了污点的Node就不会运行pod)Node上运行一个pod的副本。当Node加入集群
时,也会为他们新增一个pod。当有Node从集群移除时,这些pod也会被回收。删除Dae
monSet将会删除它创建的所有pod
● 使用DaemonSet的一些典型用法:
● 运行集群存储deamon,例如在每个Node上运行glusterd、ceph。
● 在每个Node上运行日志收集daemon,例如fluentd、logstash。
● 在每个Nodd上运行监控daemon,例如Prometheus Node Exporter
● StatefulSet
● 是为了解决有服务状态的问题(对应Deployment和ReplicaSets是为无状态服务而设计),
其应用场景包括
● 稳定的持久化存储,即pod重新调度后还能访问到相同的持久化数据,基于PVC来实现
● 稳定的网络标志,即pod重新调度后其podname和hostname不变,基于Headless
Service(即没有Cluster IP的Service)来实现
● 有序部署,有序扩展,即pod是有顺序的,在部署或者扩展的时候要依据定义的顺序依
次依次进行(即从0到N-
1,在下一个pod运行之前所有之前的pod必须都是Running和Ready状态),基于init
containers来实现
● 有序收缩,有序删除(即从N-1到0)
● HPA