首页 > 其他分享 >docker -- images镜像消失问题排查

docker -- images镜像消失问题排查

时间:2024-01-24 23:04:22浏览次数:29  
标签:-- kubelet images 镜像 docker 目录

1. 问题描叙

安装model-serving组件时,错误日志输出push时对应的tag不存在,导致镜像推送失败

2. 问题排查

# 找到对应镜像,尝试手动推送
docker images|grep mlserver

# 发现未找到,尝试手动load
cd model-serving/images
docker load -i mlserver.tar.gz

# 等待加载完成,再次通过docker images查询时镜像消失

# 查询磁盘容量
df -h
# 发现磁盘空间已达85%

3. 问题原因

k8s节点压力驱逐: 平台镜像缓存目录时 /srv/steamer/docker,是保存在 / 目录下,当 / 目录空间使用量达到85%时,应用kubelet镜像驱逐策略删除镜像

# kubelet 配置
# 当前云平台配置文件内地址:/srv/steamer/kubelet/config.yaml
# 通过命令 ps -ef|grep kubelet查询 --config参数
evictionHard:
imagefs.available: 0%
memory.available: 0%
nodefs.available: 0%
nodefs.inodesFree: 0%

# evictionHard 硬驱逐
# 如果`imagefs`件系统满足驱逐条件,kubelet 将删除所有未使用的镜像(未被Pod引用的镜像)

4. 解决方案

1. 清除 / 目录下无用或无效文件,释放磁盘空间
2. 增加/目录的容量,或者新增一个磁盘作为镜像的存放地址,在做节点环境准备时,要考虑镜像占用的空间
3. .新增一块磁盘作为dockers镜像启动目录,切换镜像缓存目录

==> 修改dockers启动参数中 --graph 参数为指定目录
# 获取其sevice文件
systemctl status docker.service
# 获取其启动参数
cat /usr/lib/systemd/system/docker.service
# 获取其环境变量
# cat /etc/default/docker
# 修改其启动参数--graph为指定新目录

# 同步数据
rsync -avz /srv/steamer/docker /home/wjy/docker/

# 重启dockers
systemctl daemon-reload
systemctl restart docker

标签:--,kubelet,images,镜像,docker,目录
From: https://www.cnblogs.com/2bjiujiu/p/17986040

相关文章

  • 安卓家庭记账本开发笔记1
    项目目的:开发一个简单的记账本app开发进度:在idea程序中创建一个空项目,绘制家庭记账本的主界面。创建空项目的步骤之后会整理单独发一篇博客。下面是绘制主界面的代码:<?xmlversion="1.0"encoding="utf-8"?><RelativeLayoutxmlns:android="http://schemas.android.co......
  • 【专题】2023年中国工业机器人行业研究报告PDF合集分享(附原数据表)
    原文链接:https://tecdat.cn/?p=34144原文出处:拓端数据部落公众号仿生机器人作为一类结合了仿生学原理的机器人,具备自主决策和规划行动的能力,正逐渐进入大众视野。它们的核心技术要素包括感知与认知技术、运动与控制技术、人机交互技术和自主决策技术。阅读原文,获取专题报告合集......
  • thinkphp 验证器
    方法一验证器的使用单独抽离成一个文件declare(strict_types=1);namespaceapp\validate;usethink\Validate;classValidateAllextendsValidate{/***定义验证规则*格式:'字段名'=>['规则1','规则2'...]**@vararray......
  • Spring的JdbcTemplate使用教程
    什么是JdbcTemplate?Spring框架对JDBC进行封装,使用JdbcTemplate方便实现对数据库操作。准备工作引入jdbcTemplate的相关依赖:案例实操创建jdbc.properties文件,配置数据库信息jdbc.driver=com.mysql.cj.jdbc.Driverjdbc.url=jdbc:mysql://localhost:3306/dbtest1?serv......
  • mongo-exporter获取mongo指标数据
    mongo-exporter获取mongo指标数据测试1.Docker部署mongo#创建保存mongo数据与mogo配置文件目录mkdir/home/wjy/{data,etc}#进入/home/wjy/etc编写默认的配置文件(容器内拷贝出来、百度、下载安装程序)#默认未创建用户前不开启security#dockerrun启动单实例的mong......
  • odbc客户端添加错误检查
    在本节中,我将添加一些简单的错误处理函数,并向您展示如何正确释放您创建的句柄资源。为了使您的ODBC编程更轻松一些,您可以使用以下函数来检查成功或失败:staticboolSQL_OK(SQLRETURNresult){ if(result==SQL_SUCCESS||result==SQL_SUCCESS_WITH_INFO) return(TRUE); els......
  • 编程语言中的Variable Shadowing(变量遮蔽)—— declaration shadows a local variable
    VariableShadowing(变量遮蔽)是编程语言中比较常见的一种情况,但是由于不同语言对于这个情景的处理是不同的,所以在具体语言中这个VariableShadowing(变量遮蔽)的表现也是不同的。简单的说,VariableShadowing(变量遮蔽)就是指之前已经定义了一个变量并赋值,然后再后面又重新定义和赋值,然......
  • 初中英语优秀范文100篇-068I've Learned a lot from Reading Books-我从阅读书籍中学
    PDF格式公众号回复关键字:SHCZFW068记忆树1Booksplayanimportantroleinourlives.翻译书籍在我们的生活中扮演着重要的角色简化记忆角色句子结构"Books"是主语,表示事物"play"是谓语动词,表示主语的行为"animportantrole"是宾语,表示主语的行为结果"inou......
  • ODBC客户端查询处理
    本节,我将介绍一种新的句柄类型——SQLHSTMT语句句柄。SQLHSTMT的父级是连接句柄。您必须先释放所有子语句句柄,然后才能释放连接句柄。ODBC结果处理模型比其他PostgreSQLAPI更复杂。在libpq、libpq++和libpgeasyAPI中,您向服务器发送查询,然后调用函数来访问结果集中的每个......
  • odbc客户端连接到服务器
    让我们看一个示例代码client1.c。第一个客户端应用程序连接到数据库,然后退出。#include<sql.h>#include<sqlext.h>#include<stdio.h>#include<stdlib.h>intmain(intargc,char*argv[]){ SQLRETURNresult; SQLHENVhenv; SQLHDBChdbc; //1.申请......