Print

CloudOS 上传软件包卡住或下载软件包卡住

3天前 发表

问题描述

CloudOS E5102H02 企业应用——应用仓库下面上传软件包,上传过程中卡住,导致软件包无法上传。




过程分析

1、查看app-mgmt容器的日志


kubectl logs -n cloudos-paas os-app-mgmt-xxxxxxx-xxx 


日志中报错空间不足,存放软件包的存储卷是deploy-mgt-pvc

2、ssh到deoloy-mgt容器所在的节点,查看对应的存储卷pv是哪个。


3、查看该pv对应的lun号,找到对应的挂载。

kubectl describe pv yingyongcangku                       //yingyongcangku为上一步查询到的pv名称

从输出结果中找到lun号为3


查看lun3对应的sd编号,根据sd编号找到multipath名称




查看到该卷已经满了。

4、上传应用包卡住还有可能是节点后台本地镜像存储空间占满导致,在每个节点执行df -h,检查/var/lib/docker/overlay2目录的利用率,该目录如果占用到了100%,上传应用包也会卡住。



解决方法

一、deploy-mgmt存储卷占满的解决方案

1、删除历史版本的软件包或其他未在使用的软件包来释放空间。

由于5133版本之前软件包的历史版本不支持删除,页面上的删除按钮是置灰的,我们可以使用工具去解除历史版本的删除限制,该操作不会真正删除数据,只是做功能解锁的操作。

但如果平台上

a) 将当前pc的地址加入到cloudos的数据库白名单。

b) 将附件的rmVersion.rar解压,进入到rmVersion目录,通过cmd命令行运行该工具。

-host 参数代表云平台vip(默认127.0.0.1), -max-reivision 代表保留多少个应用发布版本(默认为20个)。


执行过程需要几分钟,如果某个包版本比较多的话,可能会时间较久,可耐心等待下。

执行结束后去平台上查看历史版本的删除按钮,已经被解锁,可以手工将不用的历史版本的软件包删除。(若不小心把已在使用的jar包删除,不会影响应用运行,但是会影响应用的扩缩容,删除前应用侧需要做好确认)


二、/var/lib/dicker/overlay2存储卷占满的解决方案

参考案例:https://zhiliao.h3c.com/Theme/details/198755