|
|
场景:
云媒资是运行在阿里云的ACK集群里面(即阿里云托管的Kubernetes集群),在服务运行一段时间后会遇到ACK集群管理的ECS实例的本地空间,被大量的Linux系统日志写爆了。就会出现cma等服务各种异常表现,具体的哪里出问题还无法具体预知。
处理方式:
在跳板机上,通过Xshell远程到ACK集群管理的ECS实例上,运行下面的命令检查Linux磁盘空间状态
- <blockquote>[root@iZ2zeb8p8rupsbrw8jdzf6Z log]# df -h
复制代码 可以看到,磁盘空间已经到达了79%的使用率,基于经验,空间使用率将近80%的时候,就可能会引起cma等服务的各种异常情况
需要执行下面的命令确认具体是什么文件占用了大量的空间
首先我们需要在Linux的根目录下面执行命令,检查具体是哪个Folder空间占用大
- [root@iZ2zeb8p8rupsbrw8jdzf5Z /]# du -h --max-depth=1
- 16K ./lost+found
- 185M ./root
- 49M ./opt
- 0 ./sys
- 8.8G ./run
- 9.1M ./tmp
- 0 ./proc
- 148M ./boot
- 4.0K ./media
- 2.5G ./usr
- 0 ./dev
- 4.0K ./srv
- 28G ./var
- 331M ./etc
- 4.0K ./mnt
- 4.0K ./home
- 40G .
复制代码 可以看到其中./var这个文件夹的容量已经到达了28G,占用非常大。最下面的40G 是整个Linux的存储空间总量,无需关注。
然后我们进入var文件夹,检查它下面具体是什么文件夹占用过大
- <blockquote>[root@iZ2zeb8p8rupsbrw8jdzf5Z /]# cd /var/
复制代码 可以看到./log这个文件夹占用了15G,我们在继续往下排查
- [root@iZ2zeb8p8rupsbrw8jdzf5Z log]# du -h --max-depth=1
- 156M ./alicloud
- 8.0K ./tuned
- 36M ./audit
- 24K ./rhsm
- 4.2M ./security-inspector
- 70M ./sa
- 4.0K ./anaconda
- 12K ./fluentd
- 148K ./acs
- 4.0K ./chrony
- 1.8G ./pods
- 2.0G ./journal
- 140K ./containers
- 15G .
复制代码
可以看到log文件夹下面的文件夹都没有特别大的,反而log这个文件夹的容量是15G,所以我们接下来需要检查log文件夹下面的文件大小。
- [root@iZ2zeb8p8rupsbrw8jdzf5Z log]# ls -lh
- total 11G
- -rw-r--r-- 1 root root 141K Nov 25 15:19 ack-deploy.log
- drwxr-xr-x 2 root root 4.0K Nov 25 15:18 acs
- ... ...
- -rw------- 1 root root 1.5G Apr 12 10:39 messages
- -rw------- 1 root root 458M Mar 20 03:09 messages-20230320
- -rw------- 1 root root 2.8G Mar 26 03:46 messages-20230326
- -rw------- 1 root root 3.2G Apr 2 03:26 messages-20230402
- -rw------- 1 root root 3.2G Apr 9 03:10 messages-20230409
复制代码 可以看到message这几个文件明显是罪魁祸首,这个文件是Linux生成的系统文件,我们可以直接用下面的命令删除,达到释放空间的目的
- [root@iZ2zeb8p8rupsbrw8jdzf5Z log]# rm -rf messages-20230320
复制代码 依次对message文件进行删除操作之后,可以再用df -h命令检查磁盘空间,可以看到明显的空间释放
在释放空间之后,需要对cma服务进行重启,才能恢复业务
|
|