简体   繁体   English

人偶无法启动tomcat模块

[英]puppet can't start tomcat module

I am trying to create the module puppet for install tomcat 8. Tomcat installed successfully, user and role added, but I have following issue whent Tomcat starting... : 我正在尝试创建用于安装tomcat 8的模块p。Tomcat已成功安装,已添加用户和角色,但是当Tomcat启动时出现以下问题...:

/Stage[main]/Main/Node[web_mzol]/Tomcat::Instance[tomcat8]/Tomcat::Config::Properties[/opt/tomcat-8.5 catalina.properties]/Concat[/opt/tomcat-8.5/conf/catalina.properties]/Concat_file[/opt/tomcat-8.5/conf/catalina.properties]: Failed to generate additional resources using 'eval_generate': undefined method `join' for "/opt/apache-tomcat/conf/catalina.properties":String /Stage[main]/Main/Node[web_mzol]/Tomcat::Instance[tomcat8]/Tomcat::Config::Properties[/opt/tomcat-8.5 catalina.properties] / Concat [/opt/tomcat-8.5/conf /catalina.properties]/Concat_file[/opt/tomcat-8.5/conf/catalina.properties]:无法使用'eval_generate'生成附加资源:'/ opt / apache-tomcat / conf / catalina的未定义方法'join'。属性“:字符串

Error: Could not start Service[tomcat-tomcat8]: Execution of 'su -s /bin/bash -c 'CATALINA_HOME=/opt/apache-tomcat CATALINA_BASE=/opt/apache-tomcat /opt/apache-tomcat/bin/catalina.sh start' tomcat' returned 127: bash: /opt/apache-tomcat/bin/catalina.sh: No such file or directory 错误:无法启动服务[tomcat-tomcat8]:执行'su -s / bin / bash -c'CATALINA_HOME = / opt / apache-tomcat CATALINA_BASE = / opt / apache-tomcat / opt / apache-tomcat / bin / catalina.sh start'tomcat'返回127:bash:/opt/apache-tomcat/bin/catalina.sh:没有这样的文件或目录

As I see, puppet using wrong value variable "/opt/apache-tomcat", but must use "/opt/tomcat-8.5"... or other reason? 如我所见,木偶使用错误的值变量“ / opt / apache-tomcat”,但必须使用“ /opt/tomcat-8.5” ...或其他原因?

main manifest /etc/puppetlabs/code/environments/production/manifests/site.pp : 主要清单/etc/puppetlabs/code/environments/production/manifests/site.pp:

node 'web_mzol' {
  package { 'nginx' :
  ensure => installed,
} -> 
  service {'nginx': 
   ensure => running, 
   enable => true, 
  }
 class { '::tomcat': }
 class { '::java': }
tomcat::instance { 'tomcat8':
  catalina_base => '/opt/tomcat-8.5',
  source_url => 'https://www-us.apache.org/dist/tomcat/tomcat-8/v8.5.28/src/apache-tomcat-8.5.28-src.tar.gz',
}
-> tomcat::config::server::tomcat_users {
  'tet-role-manager-script':
    ensure        => present,
    catalina_base => '/opt/tomcat-8.5',
    element       => 'role',
    element_name  => 'manager-script';
  'tet-user-mzol':
    ensure        => present,
    catalina_base => '/opt/tomcat-8.5',
    element       => 'user',
    element_name  => 'mzol',
    password      => 'mzol',
    roles         => ['manager-script'];
}
-> tomcat::service { 'tomcat8':
   }
}
node default {}

Thanks 谢谢

I fixed it. 我修好了它。

node 'web_mzol' {
  package { 'nginx' :
   ensure => installed,
  } -> # Order of the execution, service will be started after the installation
  service {'nginx': # Name of the service
   ensure => running, # Start the apache service
   enable => true, # Start on system boot
  }
 class { '::tomcat': }
 class { '::java': }

tomcat::instance { 'tom':
  catalina_home => '/opt/tomcat-8.5',
  source_url => 'https://www-us.apache.org/dist/tomcat/tomcat-8/v8.5.28/bin/apache-tomcat-8.5.28.tar.gz',
  catalina_base => '/opt/tomcat-8.5',
}
-> tomcat::config::server::tomcat_users {
  'tet-role-manager-script':
    ensure        => present,
    catalina_base => '/opt/tomcat-8.5',
    element       => 'role',
    element_name  => 'manager-script';
  'tet-user-mzol':
    ensure        => present,
    catalina_base => '/opt/tomcat-8.5',
    element       => 'user',
    element_name  => 'mzol',
    password      => 'mzol',
    roles         => ['manager-script'];
}

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM