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語法不懂 不曉得有其他方法直接取整或轉換數據類型沒
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章