我是 puppet 新手,确实需要一些帮助:
我的应用程序 my_app.pp 值具有以下值:
akka_application_cluster_seed_nodes => '"akka.tcp://ActorSystem@host1:2551","akka.tcp://ActorSystem@host2:2551","akka.tcp://ActorSystem@host3:2551"'
现在,在我的 erb 文件中,min-nr-of-members
值应通过获取 akka_application_cluster_seed_nodes
数组的大小除以 2 加 1 来计算
$min-nr-of-members = $akka_application_cluster_seed_nodes.size/2 +1
例如:
auto-down-unreachable-after = <%= get_param('akka_cluster_auto_down_unreachable_after')%>
and something like this:
<% $cluster= get_param('akka_cluster_auto_down_unreachable_after') %>
<% $minNumOfNodes = ($cluster.size / 2)+1 %>
min-nr-of-members = <% $minNumOfNodes %>
你能帮忙吗?
最佳答案
'"akka.tcp://ActorSystem@host1:2551","akka.tcp://ActorSystem@host2:2551","akka.tcp://ActorSystem@host3:2551"'
不是 puppet 中的数组。 使用split函数从中创建一个数组:
$array_nodes = split($akka_application_cluster_seed_nodes, ',')
下次使用size stdlib 中的函数用于计算 puppet 中的数组大小,并计算所需的值:
$array_size = size($array_nodes)
然后在您的 erb 文件中使用它:
min-nr-of-members = <%= Integer(@array_size) / 2 + 1 %>
关于puppet - 如何计算puppet erb文件中的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31184222/