移动挂载或增加 /var/log 中的空间

移动挂载或增加 /var/log 中的空间

我正在使用 CloudLab 创建 openstack 设置,控制器节点上的文件系统结构如下所示:

root@ctl:/users/Jasim9# df -h
Filesystem                                      Size  Used Avail Use% Mounted on
udev                                            126G     0  126G   0% /dev
tmpfs                                            26G   58M   26G   1% /run
/dev/sda1                                        16G  4.8G   11G  32% /
tmpfs                                           126G  4.0K  126G   1% /dev/shm
tmpfs                                           5.0M     0  5.0M   0% /run/lock
tmpfs                                           126G     0  126G   0% /sys/fs/cgroup
ops.clemson.cloudlab.us:/proj/live-migrate-PG0  100G  2.7G   98G   3% /proj/live-migrate-PG0
ops.clemson.cloudlab.us:/share                   97G  1.2G   88G   2% /share
/dev/mapper/openstack--volumes-swiftv1          4.0G   33M  4.0G   1% /storage/mnt/swift/swiftv1
/dev/mapper/openstack--volumes-swiftv1--2       4.0G   33M  4.0G   1% /storage/mnt/swift/swiftv1-2
tmpfs                                            26G     0   26G   0% /run/user/0

问题是根磁盘只有 16GB,而且 openstack 日志很快就填满了,所以我需要找到一种方法来增加/var/log目录空间。我尝试了以下方法,但它似乎不起作用,因为它会导致某些服务停止工作。

sudo lvcreate -L 200G -n logs-lv openstack-volumes
sudo mkfs.ext3 /dev/openstack-volumes/logs-lv
sudo mkdir /mnt/tmplogs
sudo mount -t ext3 /dev/openstack-volumes/logs-lv /mnt/tmplogs/
df -h
sudo mv /var/log/* /mnt/tmplogs/
sudo umount /dev/openstack-volumes/logs-lv
sudo mount -t ext3 /dev/openstack-volumes/logs-lv /var/log/

我发现这个链接并想过使用它,但它建议停止所有服务/var/log ,但当我运行该命令时,我有一堆服务正在运行lsof +D /var/log | awk '!/COMMAND/{print $1 | "sort -u"}'(大约 40 个),我不想弄乱它们。

有没有更顺畅的方法来/var/log使用一些技巧(例如mount --bind移动安装点或其他东西)来增加容量?我只能通过 ssh 访问该机器。

/dev/sda1不是 LVM 分区。并/dev/sda4用于 LVM。

Disk /dev/sda: 931.5 GiB, 1000204886016 bytes, 1953525168 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x90909090

Device     Boot    Start        End    Sectors   Size Id Type
/dev/sda1  *        2048   33556479   33554432    16G 83 Linux
/dev/sda2       33556480   39847935    6291456     3G  0 Empty
/dev/sda3       39847936   46139391    6291456     3G 82 Linux swap / Solaris
/dev/sda4       46139392 1953525167 1907385776 909.5G  0 Empty

答案1

您确定“更多空间”是解决这个问题的最佳答案吗?我不知道 openstack 日志,但通常日志可以通过压缩大大减小大小,所以我建议/etc/logrotate.d/openstack像这样配置:

/var/log/openstack.log {
  rotate 10
  hourly
  compress
  delaycompress
  minsize 1G
  maxsize 1200M
}

此示例将保留大约 10 GB 的日志,但其中 8 个日志的压缩比例可能为 1:10,因此实际使用的日志量不到 3 GB。

如果您无法使其适应您的需求,您可以添加一个postrotate脚本将旧日志移动到另一个卷。

相关内容