OPNsense Forum

Archive => 23.7 Legacy Series => Topic started by: m4rtin on November 22, 2023, 07:02:23 PM

Title: OPNsense runs out of space
Post by: m4rtin on November 22, 2023, 07:02:23 PM
Hi,

my OPNsense runs out of space since about September. I don't know what exactly I changed but since then the free space declines about 16 G in 2 weeks (see screenshot).

I one removed some log files but it didn't fully solve the problem.

du -sh doesn't seem to show all files (see screnshots).

Do you have any idea?
Title: Re: OPNsense runs out of space
Post by: Patrick M. Hausen on November 22, 2023, 07:08:56 PM
https://forum.opnsense.org/index.php?topic=34791.msg168539#msg168539
Title: Re: OPNsense runs out of space
Post by: CJ on November 22, 2023, 09:08:47 PM
Quote from: Patrick M. Hausen on November 22, 2023, 07:08:56 PM
https://forum.opnsense.org/index.php?topic=34791.msg168539#msg168539

Why that set of options?  I would think these would be easier.

du -h / | sort -rh | head

Or you could just skip the -r and head completely and look at the bottom.
Title: Re: OPNsense runs out of space
Post by: Patrick M. Hausen on November 22, 2023, 09:45:27 PM
-s sum up the directories
-k report in kbytes
-x don't cross file system mount points

If you use -h, sort -n will sort 1G before 2M before 3k ...
Title: Re: OPNsense runs out of space
Post by: m4rtin on November 23, 2023, 12:11:06 PM
Thanks for the hint! I found an unues mongodb and some logfiles. In total about 20 GB. Now there are still 60 GB used if I look on the webinterface or 20 GB if I look in the shell, but I can live with that as long as it doesn't get more.
Title: Re: OPNsense runs out of space
Post by: cookiemonster on November 23, 2023, 09:58:28 PM
Don't forget to check System > Settings > Logging. Tooltips for the fields are useful. The most important in my opinion is the number of days to preserve, as it ensures the log file rotation keeps storage on reasonable levels, depending on the need/want for history.
Title: Re: OPNsense runs out of space
Post by: CJ on November 26, 2023, 06:09:38 PM
Quote from: Patrick M. Hausen on November 22, 2023, 09:45:27 PM
-s sum up the directories
-k report in kbytes
-x don't cross file system mount points

If you use -h, sort -n will sort 1G before 2M before 3k ...

Not if you add -h to the sort. :)
Title: Re: OPNsense runs out of space
Post by: Patrick M. Hausen on November 26, 2023, 06:35:03 PM
I honestly did not know sort can do that. I am using my variant for over 30 years, now and did not see a reason to change it.  :)
Title: Re: OPNsense runs out of space
Post by: CJ on November 27, 2023, 04:16:03 PM
Quote from: Patrick M. Hausen on November 26, 2023, 06:35:03 PM
I honestly did not know sort can do that. I am using my variant for over 30 years, now and did not see a reason to change it.  :)

;D
Title: Re: OPNsense runs out of space
Post by: m4rtin on December 12, 2023, 04:15:28 PM
I now changed the preserve days to 7, but still 83 GB seemes to be in use (dashboard).

But the command only outputs 29 GB in /:

root@OPNsense:/var/log # du -ah / | sort -rh | head -n 20
29G    /
25G    /var
23G    /var/log
13G    /var/log/flowd.log
9.3G    /var/log/filter
4.2G    /usr
2.0G    /usr/swap0
1.7G    /usr/local
1.1G    /var/netflow
666M    /var/log/suricata
607M    /usr/local/lib
547M    /var/log/filter/filter_20231129.log
540M    /var/log/filter/filter_20231127.log
534M    /var/log/filter/filter_20231206.log
532M    /var/log/filter/filter_20231128.log
531M    /var/log/filter/filter_20231205.log
529M    /var/log/filter/filter_20231130.log
522M    /var/log/filter/filter_20231207.log
512M    /var/log/filter/filter_20231204.log
509M    /var/log/filter/filter_20231123.log


Do you know where the other 54 GB may hide?   :D
Title: Re: OPNsense runs out of space
Post by: dinguz on December 12, 2023, 10:30:49 PM
try as root/admin user:

find / -type f -exec du -h {} + | sort -h
Title: Re: OPNsense runs out of space
Post by: m4rtin on December 13, 2023, 09:22:47 AM
That's basically the same:

40M    /usr/local/etc/suricata/rules/rules.sqlite
42M    /usr/local/datastore/mongodb/mongod.log
43M    /usr/local/lib/python3.9/site-packages/duckdb.cpython-39.so
43M    /var/log/suricata/eve.json
43M    /var/unbound/usr/local/lib/python3.9/site-packages/duckdb.cpython-39.so
47M    /usr/local/bin/mongod
55M    /usr/bin/ld.lld
56M    /usr/local/zenarmor/bin/ipdrstreamer
58M    /var/netflow/interface_000030.sqlite
64M    /usr/local/zenarmor/db/GeoIP/GeoLite2-City.mmdb
79M    /var/netflow/dst_port_003600.sqlite
81M    /usr/bin/c++
83M    /usr/bin/lldb
92M    /var/log/suricata/eve.json.2
100M    /usr/local/datastore/mongodb/journal/WiredTigerLog.0000000001
100M    /usr/local/datastore/mongodb/journal/WiredTigerPreplog.0000000001
100M    /usr/local/datastore/mongodb/journal/WiredTigerPreplog.0000000002
102M    /var/log/suricata/eve.json.3
103M    /var/log/suricata/eve.json.1
108M    /var/log/suricata/eve.json.0
112M    /var/netflow/dst_port_086400.sqlite
130M    /var/netflow/dst_port_000300.sqlite
164M    /var/log/filter/filter_20231213.log
264M    /var/netflow/src_addr_086400.sqlite
417M    /var/log/filter/filter_20231210.log
418M    /var/log/filter/filter_20231209.log
447M    /var/netflow/src_addr_details_086400.sqlite
479M    /var/log/filter/filter_20231208.log
493M    /var/log/filter/filter_20231211.log
498M    /var/log/filter/filter_20231212.log
522M    /var/log/filter/filter_20231207.log
2.0G    /usr/swap0
13G    /var/log/flowd.log
Title: Re: OPNsense runs out of space
Post by: doktornotor on December 13, 2023, 10:23:33 AM
At the risk of stating the obvious, did you use some reliable method to check the disk space usage first? Cannot even make sense of where does the graph come from in the original post.


# zpool list
# df -h


Some more notes:

- Those netflow DBs and logs can eat entire disk space easily. Get some decent storage before enabling it. If unable, disable and reset netflow data.
- You seem to be running the (absolutely horrlble) MongoDB thing on your firewall. For what? Yuck.
- Collecting half gig of firewall logs a day - what's the log retention set to.

Finally: have you ever rebooted the box after deleting those mongdb and whatnot files you mentioned earlier?
Title: Re: OPNsense runs out of space
Post by: doktornotor on December 13, 2023, 10:55:40 AM
I mean, with ZFS in place with compression enabled, we are not even getting meaningful figures here. Consider:

# man du

     -A      Display the apparent size instead of the disk usage.  This can be
             helpful when operating on compressed volumes or sparse files.



# find /var/log/filter -type f -exec du -Ah {} + | sort -h
9.2M    /var/log/filter/filter_20231213.log
17M    /var/log/filter/filter_20231210.log
23M    /var/log/filter/filter_20231204.log
24M    /var/log/filter/filter_20231211.log
30M    /var/log/filter/filter_20231212.log
58M    /var/log/filter/filter_20231206.log
59M    /var/log/filter/filter_20231209.log
75M    /var/log/filter/filter_20231207.log
92M    /var/log/filter/filter_20231208.log
95M    /var/log/filter/filter_20231205.log


vs.


# find /var/log/filter -type f -exec du -h {} + | sort -h
1.4M    /var/log/filter/filter_20231213.log
1.9M    /var/log/filter/filter_20231210.log
3.1M    /var/log/filter/filter_20231204.log
3.1M    /var/log/filter/filter_20231211.log
4.2M    /var/log/filter/filter_20231212.log
8.1M    /var/log/filter/filter_20231209.log
8.2M    /var/log/filter/filter_20231206.log
11M    /var/log/filter/filter_20231207.log
13M    /var/log/filter/filter_20231205.log
13M    /var/log/filter/filter_20231208.log


So, e.g. those firewall log files here you listed, they are actually not half gig, but ~5G per day. :o


547M    /var/log/filter/filter_20231129.log
540M    /var/log/filter/filter_20231127.log
534M    /var/log/filter/filter_20231206.log
532M    /var/log/filter/filter_20231128.log
531M    /var/log/filter/filter_20231205.log
529M    /var/log/filter/filter_20231130.log
522M    /var/log/filter/filter_20231207.log
512M    /var/log/filter/filter_20231204.log
509M    /var/log/filter/filter_20231123.log
Title: Re: OPNsense runs out of space
Post by: m4rtin on December 13, 2023, 11:09:18 AM
Quote from: doktornotor on December 13, 2023, 10:23:33 AM
At the risk of stating the obvious, did you use some reliable method to check the disk space usage first? Cannot even make sense of where does the graph come from in the original post.


# zpool list
# df -h


Some more notes:

- Those netflow DBs and logs can eat entire disk space easily. Get some decent storage before enabling it. If unable, disable and reset netflow data.
- You seem to be running the (absolutely horrlble) MongoDB thing on your firewall. For what? Yuck.
- Collecting half gig of firewall logs a day - what's the log retention set to.

Finally: have you ever rebooted the box after deleting those mongdb and whatnot files you mentioned earlier?

Hi!

The graph is from zabbix monitoring. I installed the plugin in the opnsense, so I can monitor the space. I attached the used space.

root@OPNsense:~ # zpool list
no pools available
root@OPNsense:~ # df -h
Filesystem                  Size    Used   Avail Capacity  Mounted on
/dev/gpt/rootfs             115G     80G     26G    76%    /
devfs                       1.0K    1.0K      0B   100%    /dev
/dev/gpt/efifs              256M    1.7M    254M     1%    /boot/efi
devfs                       1.0K    1.0K      0B   100%    /var/dhcpd/dev
/dev/md43                    48M     24K     44M     0%    /usr/local/zenarmor/output/active/temp
devfs                       1.0K    1.0K      0B   100%    /var/unbound/dev
/usr/local/lib/python3.9    115G     80G     26G    76%    /var/unbound/usr/local/lib/python3.9


The MongoDB is from the sensei plugin. In the meantime I deleted sensei and reinstalled it. I keep its data for 2 days.

Edit: retention days are set to: 7
Title: Re: OPNsense runs out of space
Post by: m4rtin on December 13, 2023, 11:12:49 AM
Quote from: doktornotor on December 13, 2023, 10:55:40 AM
I mean, with ZFS in place with compression enabled, we are not even getting meaningful figures here. Consider:

# man du

     -A      Display the apparent size instead of the disk usage.  This can be
             helpful when operating on compressed volumes or sparse files.



# find /var/log/filter -type f -exec du -Ah {} + | sort -h
9.2M    /var/log/filter/filter_20231213.log
17M    /var/log/filter/filter_20231210.log
23M    /var/log/filter/filter_20231204.log
24M    /var/log/filter/filter_20231211.log
30M    /var/log/filter/filter_20231212.log
58M    /var/log/filter/filter_20231206.log
59M    /var/log/filter/filter_20231209.log
75M    /var/log/filter/filter_20231207.log
92M    /var/log/filter/filter_20231208.log
95M    /var/log/filter/filter_20231205.log


vs.


# find /var/log/filter -type f -exec du -h {} + | sort -h
1.4M    /var/log/filter/filter_20231213.log
1.9M    /var/log/filter/filter_20231210.log
3.1M    /var/log/filter/filter_20231204.log
3.1M    /var/log/filter/filter_20231211.log
4.2M    /var/log/filter/filter_20231212.log
8.1M    /var/log/filter/filter_20231209.log
8.2M    /var/log/filter/filter_20231206.log
11M    /var/log/filter/filter_20231207.log
13M    /var/log/filter/filter_20231205.log
13M    /var/log/filter/filter_20231208.log


So, e.g. those firewall log files here you listed, they are actually not half gig, but ~5G per day. :o


547M    /var/log/filter/filter_20231129.log
540M    /var/log/filter/filter_20231127.log
534M    /var/log/filter/filter_20231206.log
532M    /var/log/filter/filter_20231128.log
531M    /var/log/filter/filter_20231205.log
529M    /var/log/filter/filter_20231130.log
522M    /var/log/filter/filter_20231207.log
512M    /var/log/filter/filter_20231204.log
509M    /var/log/filter/filter_20231123.log


It seems to be the same in my opnsense:

root@OPNsense:~ # find /var/log/filter -type f -exec du -Ah {} + | sort -h
211M    /var/log/filter/filter_20231213.log
417M    /var/log/filter/filter_20231210.log
418M    /var/log/filter/filter_20231209.log
479M    /var/log/filter/filter_20231208.log
492M    /var/log/filter/filter_20231211.log
498M    /var/log/filter/filter_20231212.log
522M    /var/log/filter/filter_20231207.log
root@OPNsense:~ # find /var/log/filter -type f -exec du -h {} + | sort -h
211M    /var/log/filter/filter_20231213.log
417M    /var/log/filter/filter_20231210.log
418M    /var/log/filter/filter_20231209.log
479M    /var/log/filter/filter_20231208.log
493M    /var/log/filter/filter_20231211.log
498M    /var/log/filter/filter_20231212.log
522M    /var/log/filter/filter_20231207.log
Title: Re: OPNsense runs out of space
Post by: doktornotor on December 13, 2023, 11:15:41 AM
Well, if you are using UFS (yuck again), I'd suggest taking a configuration backup and doing a reinstall with ZFS. Will cut the storage space used by logs alone about tenfold, assuming same retention in place (the filesystem is lz4-compressed by default, see output I posted above). Plus, it does not suffer from unsolvable filesystem corruption issues.
Title: Re: OPNsense runs out of space
Post by: e97 on December 19, 2023, 01:03:58 AM
@m4rtin did you resolve this?

im having a similar issue see https://forum.opnsense.org/index.php?topic=37633.0

i have since tried limiting logs to 5 days and turned off local capture of netflow

Title: Re: OPNsense runs out of space
Post by: m4rtin on December 21, 2023, 12:08:38 PM
Yes I could solve it with installing opnsense with zfs.

I think this is caused by the sensei zenarmor plugin. Some months ago I had trouble with the database that was stopped again and again. I then did not correctly uninstall sensei. Reinstall it again later and used mongodb instead of elasticsearch. Maybe that messed up the whole system.

Now I use zfs and in sensei elasticsearch as database. That works so far.