97 lines
2.9 KiB
Markdown
97 lines
2.9 KiB
Markdown
|
# Puppet module: solr
|
||
|
|
||
|
This is a Puppet solr module from the second generation of Example42 Puppet Modules.
|
||
|
|
||
|
Made by Alessandro Franceschi / Lab42 - http://www.example42.com
|
||
|
|
||
|
Released under the terms of Apache 2 License.
|
||
|
|
||
|
Check Modulefile for dependencies.
|
||
|
|
||
|
Development has been sponsored by Elce - http://www.elce.us
|
||
|
|
||
|
|
||
|
## USAGE - Basic management
|
||
|
* Install solr with default settings
|
||
|
|
||
|
class { "solr": }
|
||
|
|
||
|
* Remove solr
|
||
|
|
||
|
class { "solr":
|
||
|
absent => true,
|
||
|
}
|
||
|
|
||
|
* Define solr installation method: Valid values for install => are "package" (default), "source" and "puppi".
|
||
|
|
||
|
class { "solr":
|
||
|
install => "source",
|
||
|
}
|
||
|
|
||
|
* Install source from a custom url to a custom install_destination path.
|
||
|
The following parameters apply both for "source" and "puppi" install methods.
|
||
|
Puppi method may be used to manage deployment updates (given the $install_source is updated).
|
||
|
By default install_source is set to upstream developer and install_destination to Web (App) server document root
|
||
|
Pre and post installation commands may be already defined (check solr/manifests/params.pp) override them only if needed.
|
||
|
Url_check and url_pattern are used for application checks, if monitor is enabled. Override only if needed.
|
||
|
|
||
|
class { "solr":
|
||
|
install => "source",
|
||
|
install_source => "http://deploy.example42.com/solr/solr.tar.gz",
|
||
|
install_destination => "/opt/apps/",
|
||
|
# install_precommand => "...",
|
||
|
# install_postcommand => "...",
|
||
|
# url_check => "...",
|
||
|
# url_pattern => "...",
|
||
|
}
|
||
|
|
||
|
|
||
|
|
||
|
## USAGE - Overrides and Customizations
|
||
|
* Use custom sources for main config file
|
||
|
|
||
|
class { "solr":
|
||
|
source => [ "puppet:///modules/lab42/solr/solr.conf-$hostname" , "puppet:///modules/lab42/solr/solr.conf" ],
|
||
|
}
|
||
|
|
||
|
* Use custom template for main config file
|
||
|
|
||
|
class { "solr":
|
||
|
template => "example42/solr/solr.conf.erb",
|
||
|
}
|
||
|
|
||
|
* Define custom options that can be used in a custom template without the
|
||
|
need to add parameters to the solr class
|
||
|
|
||
|
class { "solr":
|
||
|
template => "example42/solr/solr.conf.erb",
|
||
|
options => {
|
||
|
'LogLevel' => 'INFO',
|
||
|
'UsePAM' => 'yes',
|
||
|
},
|
||
|
}
|
||
|
|
||
|
* Automaticallly include a custom subclass
|
||
|
|
||
|
class { "solr:"
|
||
|
my_class => 'lab42::solr',
|
||
|
}
|
||
|
|
||
|
|
||
|
## USAGE - Example42 extensions management
|
||
|
* Activate puppi (recommended, but disabled by default)
|
||
|
Note that this option requires the usage of Example42 puppi module
|
||
|
|
||
|
class { "solr":
|
||
|
puppi => true,
|
||
|
}
|
||
|
|
||
|
* Activate automatic monitoring (recommended, but disabled by default)
|
||
|
This option requires the usage of Example42 monitor and relevant monitor tools modules
|
||
|
|
||
|
class { "solr":
|
||
|
monitor => true,
|
||
|
monitor_tool => [ "nagios" , "monit" , "munin" ],
|
||
|
}
|
||
|
|