我正在处理一个Ansible任务,它应该在一个文本文件中设置JVM堆大小(下面的代码示例)
JVM堆大小的值目前是这样计算的--它运行良好:
- 可靠事实系统总内存(MB)(
ansible_momtotal_mb
) - 除以1000得到GB
- 乘以0.6以仅使用60%的内存
- 使用
| int
过滤,以获得不带小数位的舍入数
我的问题是:计算值不应高于8 GB,我不知道如何设置计算的最大值
我的代码:
- name: "Set JVM heap size"
ansible.builtin.replace:
path: "/etc/path/jvm.options"
regexp: '-Xms([0-9])g'
replace: '-Xms{{ (ansible_memtotal_mb / 1000 * 0.6) | int }}g'
有人知道如何设置最大值吗?
谢谢大家!
1条答案
按热度按时间mkshixfv1#
一种方法是使用Ansible Jinja2模板IF ELSE构造来指定上限,就像在最小示例剧本中那样
从而产生所请求的输出。
使其更易于阅读和维护
请注意
set_fact
will result into a string