zoukankan      html  css  js  c++  java
  • 如何修改docker和kubelet工作目录

    背景介绍

    本文介绍的内容,以docker-ce=18.03.1~ce-0~ubuntu 和 kubernetes=1.14.2-00版本为例介绍,其他版本应该大同小异。

    我们知道,docker-ce的默认工作目录是/var/lib/docker,会存放docker镜像文件、容器日志及写到容器临时目录的文件等。

    kubelet的默认工作目录是/var/lib/kubelet,会存放volume文件(包括emptyDir volume)、plugin文件等。

    这实际存在一个风险:大量的镜像文件或容器日志等,可能把操作系统根分区容量占满,进而导致系统crash或k8s pod被频繁驱逐等异常发生。

    我们在生产环境上,往往需要更改docker和kubelet的工作目录,将其改到另外一块数据盘的文件系统上,例如下文中的“/mnt/data”目录。

    修改docker工作目录

    1.修改配置文件/etc/docker/daemon.json 

    {
      "graph": "/mnt/data/docker"
    }

    2 重启docker service

    sudo systemctl daemon-reload
    sudo systemctl restart docker

    3 确认更改生效

    sudo docker info

    看到 “Docker Root Dir: /mnt/data/docker” ,说明修改成功。

    修改kubelet工作目录

    1 修改配置文件/etc/default/kubelet (默认不存在该文件,需要新增创建)

    KUBELET_EXTRA_ARGS=--root-dir=/mnt/data/kubelet

    2 重启kubelet service

    sudo systemctl restart kubelet

    3 确认修改生效

    ps -aux|grep kubelet

    看到 “--root-dir=/mnt/data/kubelet”, 说明修改成功。

  • 相关阅读:
    oracle mybatis 模糊查询
    IntelliJ IDEA各种引入jar包的方式及其关系
    eclipse中新建Java工程的三个JRE选项区别
    @Autowired注解和@resource注解的区别
    结合测试,黑盒测试
    Oracle左连接、右连接、全外连接以及(+)号用法
    samePropertyValuesAs()
    Collection.sort 的用法
    junit withcapture
    单元测试
  • 原文地址:https://www.cnblogs.com/abcdef/p/12046236.html
Copyright © 2011-2022 走看看