{{- $hostname := env "HOSTNAME" }} {{- $service := env "VALKEY_SERVICE" }} {{- $namespace := env "NAMESPACE" }} {{- $port := env "VALKEY_PORT" }} {{- $sentinel_port := env "VALKEY_SENTINEL_PORT" }} {{- $replicas := env "VALKEY_REPLICAS" }} {{- $domain := printf "%s.%s.svc.cluster.local" $service $namespace }} {{- $fqdn := printf "%s.%s" $hostname $domain }} {{- $hostid := sha1sum $hostname }} {{- $quorum := env "VALKEY_QUORUM" }} dir "/tmp" port {{ $sentinel_port }} sentinel monitor mymaster SENTINEL_MASTER {{ $port }} {{ $quorum }} sentinel down-after-milliseconds mymaster 60000 # User-supplied sentinel configuration: # End of sentinel configuration {{ printf "sentinel myid %s" $hostid }} sentinel announce-hostnames yes sentinel resolve-hostnames yes sentinel announce-port {{ $sentinel_port }} sentinel announce-ip {{ $fqdn }} # Generated by CONFIG REWRITE latency-tracking-info-percentiles 50 99 99.9 protected-mode no # gotemplate-pause! user default on nopass sanitize-payload ~* &* +@all # gotemplate-resume! sentinel config-epoch mymaster 0 sentinel leader-epoch mymaster 0 sentinel current-epoch 0 {{- range $i, $e := until ( int $replicas ) }} {{- $ndeHostname := printf "valkey-node-%d" $i }} {{- $ndeFQDN := printf "%s.%s" $ndeHostname $domain }} {{- $nodeID := sha1sum $ndeHostname }} {{- if (ne $fqdn $ndeFQDN) }} sentinel {{ printf "known-sentinel mymaster %s %s %s" $ndeFQDN $sentinel_port $nodeID }} sentinel {{ printf "known-replica mymaster %s %s" $ndeFQDN $port }} {{- end}} {{- end}}