前面的文章有salt的安裝過程及salt模組,不清楚的可以去看一下,這篇主要是實現nginx+php 用logrotate來對日誌進行切割,然後再簡單的使用下salt這個工具;
架構如下:
以下.pp檔案均在/etc/puppet/modules/logrotate/manifests下面,內容如下
init.pp
class logrotate ( $backup_nginx = "/data/backup/log/nginx", $nginx_log = "/data/log/nginx", $nginx_pid = "/usr/local/nginx/nginx.pid", $base_cron = "/home/cron/logrotate", # $backup_nginx_dir = ["/data","/data/backup","/data/backup/log","/data/backup/log/nginx"], # $base_cron_dir = ["/home/cron","/home/cron/logrotate"], $backup_php = "/data/backup/log/php", $php_log = "/usr/local/php/var/log", $php_pid = "/usr/local/php/var/run/php-fpm.pid" ){ case $operatingsystem { centos:{ include logrotate::base include logrotate::addcrons } } }
base.pp
class logrotate::base { package {"logrotate": ensure => present } # file {["/data","/data/backup","/data/backup/log","/data/backup/log/nginx"]: file {"$backup_nginx": ensure => present, } # file {["/home/cron","/home/cron/logrotate"]: file {"$base_cron": ensure => present, } file {"$backup_php": ensure => present } }