xingyu655 发表于 2018-8-2 13:08:32

puppet模块-zabbix-agent

  puppet模块-zabbix-agent
  目录结构
  # pwd
  /etc/puppet/modules/zabbix
  # tree
  .
  ├── files
  ├── manifests
  │   └── init.pp
  ├── readme
  └── templates
  └── zabbix_agentd.conf.erb
  3 directories, 3 files
  模块资源结构
  # cat manifests/init.pp
  class zabbix {
  package { 'zabbix-agent':
  ensure => installed,
  require => Yumrepo["zabbix"],
  }
  yumrepo { 'zabbix':
  baseurl => "http://repo.zabbix.com/zabbix/2.2/rhel/6/\$basearch/",
  descr => "zabbix repo",
  gpgcheck => 0,
  enabled => 1,
  }
  file { '/etc/zabbix/zabbix_agentd.conf':
  content => template("zabbix/zabbix_agentd.conf.erb"),
  ensure => file,
  }
  service { 'zabbix-agent':
  ensure => "running",
  hasstatus => true,
  enable => true,
  subscribe => File["/etc/zabbix/zabbix_agentd.conf"],
  }
  Package ["zabbix-agent"] -> File["/etc/zabbix/zabbix_agentd.conf"] -> service["zabbix-agent"]
  }
  配置文件模板erb
  # cat templates/zabbix_agentd.conf.erb
  PidFile=/var/run/zabbix/zabbix_agentd.pid
  LogFile=/var/log/zabbix/zabbix_agentd.log
  EnableRemoteCommands=1
  LogRemoteCommands=1
  LogFileSize=0
  Server=<%= zabbix_server %>
  Include=/etc/zabbix/zabbix_agentd.d/
  节点配置添加
  # cat server-oracle02.pp
  node 'server-oracle02' {
  $zabbix_server = "puppet.domain.com"
  include zabbix
  }
页: [1]
查看完整版本: puppet模块-zabbix-agent