anchor.diff:  #################################### Memory ###################################
   
   # lock process address space in memory (no swapping)
  -bootstrap.mlockall: true
  +bootstrap.mlockall: <%= @mlockall %>
   
   
   #################################### Network ##################################
   
   # Network address to bind to
  -network.host: <%= @address %>
  +network.host: <%= @host %>
   
   
   #################################### Transport ################################
  -transport.tcp.port: <%= @t_port %>
  +transport.tcp.port: <%= @transport_port %>
   
   
   #################################### Discovery ################################
  
positive.code: node.name: <%= @name %>
  
  # allow node to be master
  node.master: <%= @type == 'data' ? false : true %>
  
  # allow node to store data
  node.data: <%= @type == 'client' ? false : true %>
  
  
  ############################## HTTP ###########################################
  
  # expose APIs over HTTP
  http.enabled: true
  
  # HTTP bind port range
  http.port: <%= @http_port %>
  
negative.code: discovery.zen.ping.multicast.enabled: <%= @multicast %>
  
  # unicast targets
  discovery.zen.ping.unicast.hosts: <%= @members[:data] %>
  
  
  <% if @marvel %>
  #################################### Marvel ###################################
  <% if @type == 'monitor' %>
  marvel.agent.enabled: false
  <% elsif @type.match(/(all|client|data|master)/) && ! @members[:marvel].empty? %>
  marvel.agent.exporter.es.hosts: <%= @members[:marvel] %>
  <% end -%>
  <% end -%>
  