代わりに8983ポートを使用するようにTomcatを構成するための次のマニフェストがあります。
include Java
class { 'Tomcat': install_from_source => false }
Tomcat::instance {'default': package_name => 'Tomcat7'} ->
Tomcat::service {'default':
use_jsvc => false, use_init => true, service_name => 'Tomcat7'
}->
Tomcat::config::server { 'Tomcat7':
catalina_base => '/usr/share/Tomcat7',
port => 8983,
}
ただし、実行すると、次のエラーが発生します。
$ Sudo puppet apply -vd Tomcat-test.pp
debug: Augeas[server-/usr/share/Tomcat7](provider=augeas): Augeas version 1.3.0 is installed
debug: Augeas[server-/usr/share/Tomcat7](provider=augeas): sending command 'set' with params ["/files/usr/share/Tomcat7/conf/server.xml/Server/#attribute/port", "8983"]
debug: Augeas[server-/usr/share/Tomcat7](provider=augeas): Closed the augeas connection
err: /Stage[main]//Tomcat::Config::Server[Tomcat7]/Augeas[server-/usr/share/Tomcat7]: Could not evaluate: Save failed with return code false
これは、Augeasが/usr/share/Tomcat7/conf/server.xml
にある間違ったファイル(/etc/Tomcat7
)を変更しようとしていることを示しています。
puppetlabs-Tomcat GitHub で、次のように読むことができます。
Tomcat :: config :: server:
$CATALINA_BASE/conf/server.xml
のServer要素の属性を構成します。
$catalina_base
Tomcatインストールのベースディレクトリを指定します。
これは、Tomcatベースフォルダー(CATALINA_BASE
)にconf
dirがあるはずですが、すべての構成が/etc/Tomcat7
に個別に保存されているため、そこにはありません。
参照: Tomcatドキュメント 。
puppetlabs-Tomcat
モジュールがTomcatのデフォルトでインストールされたインスタンスを何らかの方法で適切に処理できる方法はありますか?または、シンボリックリンクを作成する必要がありますか?
catalina_base
属性が正しくないようです。つまり、CATALINA_HOME
の代わりにCATALINA_BASE
が定義されています。 /var/lib/Tomcat7
に変更して、puppetを再度実行します。