901e706aea
Add a kibana module that installs kibana and flat configuration files, and also disables the previous boring bland web frontend. Change-Id: I772c66f07d2bc3a88128e101074be9d4162e3f8a Reviewed-on: https://review.openstack.org/27089 Reviewed-by: Jesse Keating <jesse.keating@rackspace.com> Reviewed-by: Clark Boylan <clark.boylan@gmail.com> Reviewed-by: Jeremy Stanley <fungi@yuggoth.org> Approved: Clark Boylan <clark.boylan@gmail.com> Tested-by: Jenkins
91 lines
2.2 KiB
Puppet
91 lines
2.2 KiB
Puppet
# Copyright 2013 Hewlett-Packard Development Company, L.P.
|
|
#
|
|
# Licensed under the Apache License, Version 2.0 (the "License"); you may
|
|
# not use this file except in compliance with the License. You may obtain
|
|
# a copy of the License at
|
|
#
|
|
# http://www.apache.org/licenses/LICENSE-2.0
|
|
#
|
|
# Unless required by applicable law or agreed to in writing, software
|
|
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
|
|
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
|
|
# License for the specific language governing permissions and limitations
|
|
# under the License.
|
|
#
|
|
# Class to install kibana frontend to logstash.
|
|
#
|
|
class kibana {
|
|
|
|
group { 'kibana':
|
|
ensure => present,
|
|
}
|
|
|
|
user { 'kibana':
|
|
ensure => present,
|
|
comment => 'Kibana User',
|
|
home => '/opt/kibana',
|
|
gid => 'kibana',
|
|
shell => '/bin/bash',
|
|
membership => 'minimum',
|
|
require => Group['kibana'],
|
|
}
|
|
|
|
file { '/opt/kibana':
|
|
ensure => directory,
|
|
owner => 'kibana',
|
|
group => 'kibana',
|
|
mode => '0644',
|
|
recurse => true,
|
|
require => User['kibana'],
|
|
}
|
|
|
|
vcsrepo { '/opt/kibana/kibana':
|
|
ensure => latest,
|
|
provider => git,
|
|
source => 'https://github.com/rashidkpc/Kibana.git',
|
|
revision => 'v0.2.0',
|
|
require => File['/opt/kibana'],
|
|
}
|
|
|
|
package { 'bundler':
|
|
ensure => latest,
|
|
provider => 'gem',
|
|
}
|
|
|
|
exec { 'install_kibana':
|
|
command => 'bundle install',
|
|
path => ['/usr/bin', '/usr/local/bin'],
|
|
cwd => '/opt/kibana/kibana',
|
|
logoutput => true,
|
|
refreshonly => true,
|
|
subscribe => Vcsrepo['/opt/kibana/kibana'],
|
|
require => [
|
|
User['kibana'],
|
|
Package['bundler'],
|
|
],
|
|
}
|
|
|
|
file { '/opt/kibana/kibana/KibanaConfig.rb':
|
|
ensure => present,
|
|
source => 'puppet:///modules/kibana/config.rb',
|
|
owner => 'kibana',
|
|
group => 'kibana',
|
|
require => Vcsrepo['/opt/kibana/kibana'],
|
|
}
|
|
|
|
file { '/etc/init/kibana.conf':
|
|
ensure => present,
|
|
source => 'puppet:///modules/kibana/kibana.init',
|
|
}
|
|
|
|
service { 'kibana':
|
|
ensure => running,
|
|
require => [
|
|
File['/etc/init/kibana.conf'],
|
|
File['/opt/kibana/kibana/KibanaConfig.rb'],
|
|
Exec['install_kibana'],
|
|
],
|
|
}
|
|
|
|
}
|