# Consul Client Configuration for {{ inventory_hostname }}
datacenter = "{{ consul_datacenter }}"
data_dir = "/opt/consul/data"
log_level = "INFO"
node_name = "{{ inventory_hostname.split('.')[0] }}"
bind_addr = "{{ tailscale_ip.stdout }}"

# Client mode (not server)
server = false

# Connect to Consul servers (指向三节点集群)
retry_join = [
  "100.117.106.136",  # master (韩国)
  "100.122.197.112",  # warden (北京)  
  "100.116.80.94"     # ash3c (美国)
]

# Performance optimization
performance {
  raft_multiplier = 5
}

# Ports configuration
ports {
  grpc = 8502
  http = 8500
  dns = 8600
}

# Enable Connect for service mesh
connect {
  enabled = true
}

# Cache configuration for performance
cache {
  entry_fetch_max_burst = 42
  entry_fetch_rate = 30
}

# Node metadata
node_meta = {
  region = "{{ region | default('unknown') }}"
  zone = "nomad-server"
}

# UI disabled for clients
ui_config {
  enabled = false
}

# ACL configuration (if needed)
acl = {
  enabled = false
  default_policy = "allow"
}

# Logging
log_file = "/var/log/consul/consul.log"
log_rotate_duration = "24h"
log_rotate_max_files = 7
