带puppet的tomcat数据库连接字符串(aco/tomcat模块)
我正在使用模块和此。pp:带puppet的tomcat数据库连接字符串(aco/tomcat模块),tomcat,puppet,Tomcat,Puppet,我正在使用模块和此。pp: class somevariable::base { class { '::tomcat': install_from => 'package', package_ensure => 'latest', systemd_service_type => undef, service_ensure => 'stopped', service_enable
class somevariable::base {
class { '::tomcat':
install_from => 'package',
package_ensure => 'latest',
systemd_service_type => undef,
service_ensure => 'stopped',
service_enable => false,
}
$mydefaults = {
admin_webapps => true,
create_default_admin => true,
java_opts => ['-server', '-Xmx1024m', '-Xms256m']
}
$myinstances = hiera('somevariable::base::instances')
create_resources('::tomcat::instance', $myinstances, $mydefaults)
$mywars = hiera('somevariable::app::wars', {})
create_resources('file', $mywars)
}
我正在使用hiera设置实例并部署战争,如下所示:
variable::base::instances:
instance1:
server_control_port : '8001'
http_port : '8011'
ajp_port : '8111'
ajp_params :
tomcatAuthentication : 'false'
manage_firewall : true
instance2:
server_control_port : '8002'
http_port : '8022'
ajp_port : '8222'
manage_firewall : true
variable::app::wars:
instance1_app:
path: '/var/lib/tomcats/instance1/webapps/sample.war'
owner: tomcat
group: root
source: '/usr/local/src/sample.war'
我希望这也能帮助人们搜索aco/tomcat示例
如何通过hiera为每个实例设置连接字符串实例?我还尝试在tomcat上下文文件context.xml上设置数据库连接,但没有成功,因此我最终决定以这种方式复制每个应用程序xml文件: 在我的主清单网站上 我使用以下文件创建了名为myapp_tomcat的自定义模块: modules/myapp_tomcat/manifests/init.pp 模块/myapp_tomcat/files/myapp.xml
我知道您创建了一个类,并使用文件资源放置了一个带有连接字符串的自定义.xml…您还可以使用嵌套的context_*类参数。在您的案例中,上下文资源和上下文监视资源。
node default {
include stdlib
include java
# Install tomcat and configure it for my application
class { 'tomcat':
install_from => 'package',
package_ensure => 'latest',
service_ensure => 'running',
service_enable => true,
tomcat_native => true,
manage_firewall => false,
}
class {'myapp_tomcat': }
}
class myapp_tomcat {
file { '/var/lib/tomcat8/conf/Catalina/localhost/Myapp.xml':
source => 'puppet:///modules/myapp_tomcat/Myapp.xml',
owner => 'root',
group => 'root',
mode => '0644',
require => Service['tomcat8'],
}
}
<?xml version='1.0' encoding='utf-8'?>
<Context>
<WatchedResource>WEB-INF/web.xml</WatchedResource>
<Resource name="jdbc/MyappDS" auth="Container" type="javax.sql.DataSource"
maxTotal="50" maxIdle="20" maxWaitMillis="10000"
username="dbuser" password="dbpassword"
driverClassName="org.postgresql.Driver"
url="jdbc:postgresql://localhost:5432/mydbname"/>
</Context>