世界都没见过
谈什么世界观

K8S-磁盘配额管理

1.  ephemeral-storage介绍

Kubernetes在1.8的版本中引入了一种类似于CPU,RAM的新的资源模式:ephemeral-storage属性(直译为临时存储),并且在1.10的版本kubelet默认启用了这个特性。

ephemeral-storage实现了对Pod应用存储资源的管理,可以有效的降低Pod应用失控消耗完 node磁盘空间的风险。官网中对该属性的描述如下:

(https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/):

 

从上述官网介绍,总结如下:

  1. 临时存储:临时的含义是指容器内的数据未做持久化处理,生命周期和容器一致。

  2. 作用对象:容器日志(/var/log)、EmptyDir类型的volume数据(/var/lib/kubelet)、镜像层和容器可写层(/var/lib/docker)。由此可见,基本覆盖了Pod各个方面的磁盘消耗。

  3. 管理的文件系统:ephemeral-storage对kubelet的根目录(默认是/var/lib/kubelet)所在的节点分区(文件系统)进行管理,即如果把/var/lib/docker独立分区,ephemeral-storage将不对/var/lib/docker目录进行管理。

  4. Pod调度流程:节点上的kubelet启动的时候,kubelet会统计当前节点的kubelet分区的可分配的磁盘资源,或者你可以覆盖节点上kubelet的配置来自定义可分配的资源。在创建Pod时会根据存储需求调度到满足存储的节点,在Pod使用超过限制的存储时会对其做驱逐的处理来保证不会耗尽节点上的磁盘空间。

2. ephemeral-storage功能验证

2.1   环境准备

  • 虚拟机配置

1)    规格:16 vCpu + 80 GB RAM + 1000 GB 磁盘

2)    分区:/var/lib/docker、/var/lib/kubelet/和/var/log全在同一个系统分区上

  • 测试容器镜像

1)  Dockerfile

FROM ubuntu:16.04ADD start.sh /home/RUN mkdir -p /lq/log/ENTRYPOINT /home/start.sh
赞(0) 打赏
未经允许不得转载:VPS排行榜 » K8S-磁盘配额管理
分享到: 更多 (0)

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏