Я задался бы вопросом, кластеризировался ли Linux, решением была бы лучшая, более дешевая альтернатива.
MongoDB позволяет Вам распределить данные по многим серверам. Это будет невозможно с одним, гудящим сервером.
Я думал, что MongoDB был одним из следующих шагов, сделанных после обнаружения, что развертывание реляционной базы данных на гудящем сервере не масштабировалось достаточно хорошо.
Итак, вот как. Обратите внимание, что вам нужно использовать rsyslog 7.4.5 или выше, поскольку в предыдущих версиях есть неприятная ошибка, которая приводит к сбою rsyslog при использовании re_extract.
set $!namevalstr = re_extract($msg, "name=([a-zA-Z0-9])+", 0, 0, "name=unknown");
set $!valstr = field($!namevalstr, "=", 2);
$template PerHostSyslog,"/var/log/%$!valstr%/syslog.log
*.* -?PerHostSyslog
И это, похоже, работает.