02d0aa1ecb
cacti_device was a class of which only one could be instantiated. Make it a define so that many cacti_devices can be installed. While we are fixing this correct the puppet lint warnings and errors for cacti. Change-Id: Ic730f542d15ee05884e6e2eae0df09f36a55730e Reviewed-on: https://review.openstack.org/14853 Reviewed-by: Paul Belanger <paul.belanger@polybeacon.com> Approved: James E. Blair <corvus@inaugust.com> Reviewed-by: James E. Blair <corvus@inaugust.com> Tested-by: Jenkins
77 lines
2.1 KiB
Puppet
77 lines
2.1 KiB
Puppet
# Class to configure cacti on a node.
|
|
# Takes a list of sysadmin email addresses as a parameter. Exim will be
|
|
# configured to email cron spam and other alerts to this list of admins.
|
|
class openstack_project::cacti (
|
|
$sysadmins = []
|
|
) {
|
|
class { 'openstack_project::server':
|
|
iptables_public_tcp_ports => [80, 443],
|
|
sysadmins => $sysadmins,
|
|
}
|
|
|
|
include apache
|
|
|
|
package { 'cacti':
|
|
ensure => present,
|
|
}
|
|
|
|
file { '/usr/local/share/cacti/resource/snmp_queries':
|
|
ensure => directory,
|
|
owner => 'root',
|
|
}
|
|
|
|
file { '/usr/local/share/cacti/resource/snmp_queries/net-snmp_devio.xml':
|
|
ensure => present,
|
|
source => 'puppet:///modules/openstack_project/cacti/net-snmp_devio.xml',
|
|
mode => '0644',
|
|
owner => 'root',
|
|
group => 'root',
|
|
require => File['/usr/local/share/cacti/resource/snmp_queries'],
|
|
}
|
|
|
|
file { '/var/lib/cacti/linux_host.xml':
|
|
ensure => present,
|
|
source => 'puppet:///modules/openstack_project/cacti/linux_host.xml',
|
|
mode => '0644',
|
|
owner => 'root',
|
|
group => 'root',
|
|
require => File[
|
|
'/usr/local/share/cacti/resource/snmp_queries/net-snmp_devio.xml'
|
|
],
|
|
}
|
|
|
|
file { '/usr/local/bin/create_graphs.sh':
|
|
ensure => present,
|
|
source => 'puppet:///modules/openstack_project/cacti/create_graphs.sh',
|
|
mode => '0744',
|
|
owner => 'root',
|
|
group => 'root',
|
|
}
|
|
|
|
exec { 'cacti_import_xml':
|
|
command => '/usr/bin/php -q /usr/share/cacti/cli/import_template.php \
|
|
--filename=/var/lib/cacti/linux_host.xml \
|
|
--with-template-rras',
|
|
cwd => 'usr/share/cacti/cli',
|
|
require => File['/var/lib/cacti/linux_host.xml'],
|
|
}
|
|
|
|
$cacti_hosts = [
|
|
'community.openstack.org',
|
|
'eavesdrop.openstack.org',
|
|
'etherpad.openstack.org',
|
|
'jenkins.openstack.org',
|
|
'jenkins-dev.openstack.org',
|
|
'lists.openstack.org',
|
|
'paste.openstack.org',
|
|
'planet.openstack.org',
|
|
'pypi.openstack.org',
|
|
'review.openstack.org',
|
|
'review-dev.openstack.org',
|
|
'static.openstack.org',
|
|
'wiki.openstack.org',
|
|
]
|
|
|
|
openstack_project::cacti_device { $cacti_hosts: }
|
|
}
|