[英]sh startup.sh start tomcat with puppet module
我正在嘗試創建一個安裝了tomcat的人偶模塊。 我完成了所有其他工作,該模塊下載了Tomcat tar,將其解壓縮,刪除了軟件包並從模板更改了設置文件。 我唯一的問題是不會自動啟動tomcat。 如何將其設置為執行“ sudo sh startup.sh”?
我嘗試使用命令=>“ sudo sh startup.sh”,但是我認為問題是它不能使用sudo。 有沒有一種方法可以繞過該方法或其他解決方案來啟動tomcat?
我建議您安裝服務腳本,而不是聲明執行文件以啟動應用程序服務器。
這樣,您可以依賴service
資源類型的功能,該功能將幫助您檢查服務的狀態並確保它是預期的。
您可以在此處找到示例腳本,該腳本可以作為tomcat.erb
放在模塊的templates/
目錄中。
基本上,接下來要做的就是聲明一個file
, exec
, service
資源三元組,如下所示(基於RedHat的操作系統的示例,除了chkconfig
部分,與Debian / Ubuntu相似):
file { '/etc/init.d/tomcat':
ensure => present,
content => template('tomcat/tomcat.erb'),
mode => 'u=rwx,og=rw',
user => 'root',
group => 'root',
notify => Exec['add_tomcat_service'],
}
exec {'add_tomcat_service':
command => '/sbin/chkconfig --add tomcat',
path => ['/bin', '/sbin', '/usr/bin', '/usr/sbin'],
onlyif => "test `/sbin/chkconfig --list | /bin/grep tomcat | /usr/bin/wc -l` -eq 0",
before => Service['tomcat'],
}
service { 'tomcat':
ensure => started,
hasstatus => true,
hasrestart => true,
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.