У меня есть следующая декларация для конфигурирования Tomcat для использования 8 983 портов вместо этого:
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-коте GitHub мы можем читать:
кот:: конфигурация:: сервер: Настраивает атрибуты для элемента Сервера в
$CATALINA_BASE/conf/server.xml
.
$catalina_base
Указывает базовый каталог для установки Tomcat.
которые предлагают, чтобы я имел conf
dir в Tomcat основывает папку (CATALINA_BASE
), но это не там, как вся конфигурация находится в сохраненном отдельно в /etc/tomcat7
.
См.: документация Tomcat.
Есть ли любой путь который puppetlabs-tomcat
модуль может так или иначе обработать правильно установленный экземпляр значения по умолчанию Tomcat? Или я должен создать символьную ссылку?
Похоже, что атрибут catalina_base
неверен, то есть CATALINA_HOME
был определен вместо CATALINA_BASE
. Измените его на / var / lib / tomcat7
и снова запустите puppet.