MCPcopy
hub / github.com/grafana/dskit / KVConfig

Struct KVConfig

kv/memberlist/memberlist_client.go:141–213  ·  view source on GitHub ↗

KVConfig is a config for memberlist.KV

Source from the content-addressed store, hash-verified

139
140// KVConfig is a config for memberlist.KV
141type KVConfig struct {
142 // Memberlist options.
143 NodeName string `yaml:"node_name" category:"advanced"`
144 RandomizeNodeName bool `yaml:"randomize_node_name" category:"advanced"`
145 StreamTimeout time.Duration `yaml:"stream_timeout" category:"advanced"`
146 RetransmitMult int `yaml:"retransmit_factor" category:"advanced"`
147 PushPullInterval time.Duration `yaml:"pull_push_interval" category:"advanced"`
148 GossipInterval time.Duration `yaml:"gossip_interval" category:"advanced"`
149 GossipNodes int `yaml:"gossip_nodes" category:"advanced"`
150 GossipToTheDeadTime time.Duration `yaml:"gossip_to_dead_nodes_time" category:"advanced"`
151 DeadNodeReclaimTime time.Duration `yaml:"dead_node_reclaim_time" category:"advanced"`
152 EnableCompression bool `yaml:"compression_enabled" category:"advanced"`
153 NotifyInterval time.Duration `yaml:"notify_interval" category:"advanced"`
154 ReceivedMessagesQueueSize int `yaml:"received_messages_queue_size" category:"advanced"`
155 ProcessedMessagesQueueSize int `yaml:"processed_messages_queue_size" category:"advanced"`
156
157 CompressionAlgorithm string `yaml:"compression_algorithm" category:"advanced"`
158
159 // ip:port to advertise other cluster members. Used for NAT traversal
160 AdvertiseAddr string `yaml:"advertise_addr"`
161 AdvertisePort int `yaml:"advertise_port"`
162
163 ClusterLabel string `yaml:"cluster_label" category:"advanced"`
164 ClusterLabelVerificationDisabled bool `yaml:"cluster_label_verification_disabled" category:"advanced"`
165
166 // List of members to join
167 JoinMembers flagext.StringSliceCSVMulti `yaml:"join_members"`
168 MinJoinBackoff time.Duration `yaml:"min_join_backoff" category:"advanced"`
169 MaxJoinBackoff time.Duration `yaml:"max_join_backoff" category:"advanced"`
170 MaxJoinRetries int `yaml:"max_join_retries" category:"advanced"`
171 AbortIfFastJoinFails bool `yaml:"abort_if_cluster_fast_join_fails" category:"advanced"`
172 AbortIfFastJoinFailsMinNodes int `yaml:"abort_if_cluster_fast_join_fails_min_nodes" category:"advanced"`
173 AbortIfJoinFails bool `yaml:"abort_if_cluster_join_fails"`
174 RejoinInterval time.Duration `yaml:"rejoin_interval" category:"advanced"`
175 RejoinSeedNodes flagext.StringSliceCSVMulti `yaml:"rejoin_seed_nodes" category:"experimental"`
176
177 // Remove LEFT ingesters from ring after this timeout.
178 LeftIngestersTimeout time.Duration `yaml:"left_ingesters_timeout" category:"advanced"`
179 ObsoleteEntriesTimeout time.Duration `yaml:"obsolete_entries_timeout" category:"experimental"`
180
181 // Timeout used when leaving the memberlist cluster.
182 LeaveTimeout time.Duration `yaml:"leave_timeout" category:"advanced"`
183 BroadcastTimeoutForLocalUpdatesOnShutdown time.Duration `yaml:"broadcast_timeout_for_local_updates_on_shutdown" category:"advanced"`
184
185 // How much space to use to keep received and sent messages in memory (for troubleshooting).
186 MessageHistoryBufferBytes int `yaml:"message_history_buffer_bytes" category:"advanced"`
187
188 // Size of the buffer for key watchers.
189 WatchPrefixBufferSize int `yaml:"watch_prefix_buffer_size" category:"advanced"`
190
191 TCPTransport TCPTransportConfig `yaml:",inline"`
192
193 // Zone-aware routing configuration.
194 ZoneAwareRouting ZoneAwareRoutingConfig `yaml:"zone_aware_routing"`
195
196 // Propagation delay tracker configuration.
197 PropagationDelayTracker PropagationDelayTrackerConfig `yaml:"propagation_delay_tracker" category:"experimental"`
198

Callers

nothing calls this directly

Calls

no outgoing calls

Tested by

no test coverage detected