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”, 说明修改成功。

  • 相关阅读:
    危险无处不在 Html标签带来的安全隐患
    【转】服务器不支持FLV的解决办法
    IE8采用IE7模式
    解决IE中img.onload失效的方法
    字符串操作>静态串String
    装sql2005 express
    抽象类
    字符串操作>动态串StringBuilder
    使用数组
    集合>数组集合ArrayList
  • 原文地址:https://www.cnblogs.com/abcdef/p/12046236.html
Copyright © 2011-2022 走看看