#48 remove rsyslog from default image, configure journald options appropriately
Closed None Opened 5 years ago by mattdm.

Right now, we have two logging systems installed by default in the Fedora Cloud image. While obviously rsyslog needs to continue to be an option, I don't think we should be shipping it by default. (After dhclient, it's the second-largest memory consumer, for one thing.) This requires some rework to the cloud-init package -- that's what's pulling it in now.

We should also consider the journal options we want by default; probably settings optimized for less memory consumption are better.


How much memory is the journal consuming on the cloud images?

You can run the following to check it out

{{{
pmap pidof systemd-journald | grep total | awk '{ hr=$2/1024 ; printf("Systemd Journal Total Memory Usage" "%13.2f Mb ",hr) } { for ( x=4 ; x<=NF ; x++ ) { printf("%s ",$x) } print "" }'
}}}

Now you can turn of persistent storage in the journal /etc/systemd/journald.conf by changing Storage=auto to "none" to reduce memory consumption but i'm unsure if that would be a reasonable solution for cloud images

I should also mention that it's not enough to simply remove rsyslog from the cloud image, each package that ships service/daemon needs to split out their rsyslog and syslog-ng configuration file as well as their accommodating logwatch files ( which are roughly 100 components ) into their own sub package to properly prepare and integrate components and journal into the distribution.

I filed a request two years ago with FPC in attempt to get the guidelines fixed so I could fix this when I do the systemd cleanup process well that ticket is still open and unresolved, perhaps the cloud community has more luck with the FPC if you are going to start doing the necessary legwork to do this work.

Yep, we will get there -- one step at a time. Right now, since cloud-init pulls in rsyslog, everything else is academic. If we get that resolved, rsyslog won't be pulled into the base image (it's the only thing doing so right now), and then we can tackle individual components from there.

I'm not sure what the best solution for memory/storage parameters; that needs some research.

And, Jóhann's suggestion of Storage=none and keeping rsyslog is still an option if that fits our use case better. In the current default config (in memory storage) on a doing-nothing system, pmap attributes about 55mb to journald (and, correspondingly, about 350mb to rsyslogd).

Closing this ticket as part of trac clean up process. If you want to reopen, please reopen it after we move to pagure.io as atomic-wg.

Login to comment on this ticket.

Metadata