From b4e5895af8853607cb5d700f96c556ae94ff37c2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Johan=20Bj=C3=B6rklund?= Date: Fri, 21 Feb 2025 13:23:21 +0100 Subject: [PATCH] Added soc::rsyslog::client class --- .../modules/soc/manifests/rsyslog/client.pp | 54 +++++++++++++++++++ 1 file changed, 54 insertions(+) create mode 100644 global/overlay/etc/puppet/modules/soc/manifests/rsyslog/client.pp diff --git a/global/overlay/etc/puppet/modules/soc/manifests/rsyslog/client.pp b/global/overlay/etc/puppet/modules/soc/manifests/rsyslog/client.pp new file mode 100644 index 0000000..25b6c85 --- /dev/null +++ b/global/overlay/etc/puppet/modules/soc/manifests/rsyslog/client.pp @@ -0,0 +1,54 @@ +# rsyslog +class soc::rsyslog::client( + $daily_rotation = true, + $syslog_servers = lookup(syslog_servers, undef, undef, []), + $relp_syslog_servers = lookup(relp_syslog_servers, undef, undef, ['89.45.237.247:2514']), + $syslog_enable_remote = lookup('syslog_enable_remote', undef, undef, 'true'), +) { + # Install rsyslog packages + [ 'rsyslog', 'rsyslog-relp', 'rsyslog-openssl' ].each |String $package| { + package { $package: + ensure => latest, + } + } + + $do_remote = str2bool($syslog_enable_remote) + + file { + '/etc/rsyslog.conf': + ensure => file, + mode => '0644', + content => template('soc/rsyslog/rsyslog.conf.erb'), + require => Package['rsyslog'], + notify => Service['rsyslog'], + ; + '/etc/rsyslog.d/50-default.conf': + ensure => file, + mode => '0644', + content => template('soc/rsyslog/rsyslog-default.conf.erb'), + require => Package['rsyslog'], + notify => Service['rsyslog'], + ; + '/etc/rsyslog.d/60-remote.conf': + ensure => file, + mode => '0644', + content => template('soc/rsyslog/rsyslog-remote.conf.erb'), + require => Package['rsyslog'], + ; + } + + service { 'rsyslog': + ensure => 'running', + enable => true, + subscribe => File['/etc/rsyslog.d/60-remote.conf'], + } + + if ($daily_rotation == true) + { + file { '/etc/logrotate.d/rsyslog': + ensure => file, + mode => '0644', + content => template('soc/rsyslog/rsyslog.logrotate.erb'), + } + } +}