XenServer是base在linux上的,我们访问的系统是domain0,默认情况下分区只有4GB的空间,而随着Server上运行的Guest VM越来越多,时间长了会发现root分区下有非常多的日志产生,而空间也会占用的非常厉害。Linux有log rotate的功能,所以会自动回滚日志,默认只保留最新的。一旦log rotate失败,会给Server的稳定性带来很大的影响,分区占用满了之后会造成xapi服务无法运行,临时文件无法创建等致命的伤害。


Server上log rotate的文件配置主要是以下几个文件:

  • # /etc/logrotate.conf

  • # /etc/syslog.conf

  • # /etc/logrotate.d/syslog


在出现问题情况下可以首先判断是否以上的配置文件更改,可以通过和其他默认的(rotate正常的)Server进行对比,如果不同,可以参考正常的修改,也可以直接从正常的server上copy这几个文件覆盖到当前的Server上。


如果在以上配置文件都相同情况下,但不清楚问题发生在哪里,可以执行下面的命令来手工做一次rotate:


225234568.jpg


上面的案例作为分享,从图中可以发现log rotate执行失败,error是/var/log下面的openvswitch目录没有。

解决的方法很简单:手工创建并指定权限为755

#mkdir /var/log/openvswitch

#chmod 755 /var/log/openvswitch

目录创建完成后可以再次执行命令# logrotate f /etc/logrotate.conf 使Server日志rotate来验证是否成功;

保证命令执行没有问题的前提下,进一步执行#ls ll /var/log/ 检查发现log rotate正常生成了新的log文件。