青野 发表于 2018-8-2 13:26:10

puppet 管理tomcat时 根据服务器的内存来设置Xms等jvm启动参数

  install.pp中
  ......
  ......
  file {"${basesolr}/solr/${tomcat_version}/bin/catalina.sh":
  require=> File["solr-tomcat-bin"],
  ensure   => present,
  content => template("solr/catalina.sh.erb"),
  .....
  .....
  catalina.sh.erb 中
  ......
  .......
  JAVA_OPTS="-Xms<%="%.0f"%[@%.0f"%[@memorysize_mb.to_i-2048].to_i-2048]%>m -Xmx<%="%.0f"%[@memorysize_mb.to_i-2048]%>m-Djava.rmi.server.hostname=<%= @fqdn %>
  .....
  ......
  这里设置的是主机内存数-2G,也可设置为%.0f"%[@memorysize_mb.to_i*0.9]等
  ————————————————————————————————————
  由于 facter提取的变量memorysize_mb为字符串类型 无法直接逻辑运算,需@memorysize_mb.to_i转换成float型数据,%.0f"% 保留小数点后面0位(取整?)
  由于ruby语法不懂 不晓得有其他方法直接取整或转换数据类型没
页: [1]
查看完整版本: puppet 管理tomcat时 根据服务器的内存来设置Xms等jvm启动参数