Version information
This version is compatible with:
Start using this module
Add this module to your Puppetfile:
mod 'eupathdb-tcif', '1.0.0'
Learn more about managing modules with a PuppetfileDocumentation
Install EupathDB's Tomcat Instance Framework
Requirements
Puppet Modules
- PuppetLabs stdlib module
- Puppet-Community archive module The Puppet-Community archive module is not yet in PuppetForge and the other archive modules that are in Forge are not compatible with Puppet 4. So use from GitHub.
Node dependencies
The node must have the following installed and configured before this module can be used. You are responsible for arranging dependency resolutions. See tcif_stack.pp
in the examples
directory for a sample profile manifest.
- A YUM repo that provides the Tomcat Instance Framework rpm.
- Tomcat
- Java
Install Tomcat Instance Framework
include tcif
This installs the tcif
RPM from a YUM repository.
Global TcIF Configuration
The configuration file shared/conf/global.env
which profides default configurations to all instances can be managed with the tcif::global_config
definition.
tcif::global_config{ 'tcif':
catalina_home => '/usr/local/apache-tomcat-6.0.35',
java_home => '/usr/java/jdk1.7.0_25',
instances_dir => '/usr/local/tomcat_instances,
oracle_home => '/u01/app/oracle/product/11.2.0.3/db_1',
environment => 'CATALINA_OPTS["MEM"]="-Xms256m -Xmx1024m -XX:MaxPermSize=512m"',
}
catalina_home
java_home
instances_dir
oracle_home
environment
optional. Additional entries in the instance.env
file. Only used with instance.env.erb
or other template.
Create a named instance
tcif::instance { 'TemplateDB':
ensure => running,
http_port => 8080,
ajp13_port => 8081,
jmx_port => 8082,
tomcat_user => tomcat,
template_ver => 6.0.35,
orcl_jdbc_path => $orcl_jdbc_path,
pg_jdbc_path => /usr/share/java/postgresql94-jdbc.jar,
environment => $environment,
config_file => template('tcif/instance.env.erb'),
require => Class['tcif'],
}
See tomcat_instance.pp
in the example
directory for a sample define that uses hiera data.
Parameters for tcif::instance
ensure
valid values are
running
- The instance exists and has a runningjsvc
process. This is the default. If the instance does not exist it will be created and started. If the instance exists in astopped
state it will started.absent
- The instance directory does not exist. It will be shutdown and deleted if necessary.stopped
- The instance exists but has not runningjsvc
process. The instance directory is renamed with a leading underscore (_
) so it will be ignored byinstance_manager
and will not be managed with thetomcat
service. A disabled instance will not receive configuration updates. If the instance is not present on the system it will be created and then set to thestopped
state.
http_port
ajp13_port
jmx_port
tomcat_user
template_ver
addons
optional. Files to install into the instance. The instance will be restarted upon changes to addons. The value for addons is a hash
$addons = {
Jolokia => {
source => 'https://repo1.maven.org/maven2/org/jolokia/jolokia-war/1.3.2/jolokia-war-1.3.2.war'
sha256 => '845f3e0de2c2595ef8051941aa00139e618df6f3a921ad8485775678939b572d'
dest => 'webapps/jolokia.war'
}
JDBC => {
source => "file:///u01/app/oracle/product/11.2.0.3/db_1/jdbc/lib/ojdbc6.jar"
dest: => 'shared/lib/ojdbc6.jar'
}
}
The parameters are:
- source: Required. The location of the file being installed. This uses the archive module so its syntax requirements apply.
- dest: Required. The relative filepath destination, including file name. This path is relative to
${instances_dir}/${instance_name}
. - sha256: Optional. The sha256 checksum of the source file. See documentation for the archive module for details. If not defined, no checksum validation will occur.
environment
optional. Additional entries in the instance.env
file. Only used with instance.env.erb
or other template.
config_file
The origin of the instance.env
file.
public_logs
true
or false
whether the tomcat instance logs are world readable. Default false
.
Dependencies
- puppetlabs/stdlib (>=4.8.0 <5.0.0)
- puppet/archive (>= 0.3.0)