You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: CHANGELOG.md
+1
Original file line number
Diff line number
Diff line change
@@ -21,6 +21,7 @@
21
21
*`cortex_alertmanager_state_persist_failed_total`
22
22
*[ENHANCEMENT] Blocks storage: support ingesting exemplars. Enabled by setting new CLI flag `-blocks-storage.tsdb.max-exemplars=<n>` or config option `blocks_storage.tsdb.max_exemplars` to positive value. #4124
23
23
*[ENHANCEMENT] Distributor: Added distributors ring status section in the admin page. #4151
24
+
*[ENHANCEMENT] Added zone-awareness support to alertmanager for use when sharding is enabled. When zone-awareness is enabled, alerts will be replicated across availability zones. #4204
24
25
*[ENHANCEMENT] Added `tenant_ids` tag to tracing spans #4147
25
26
*[BUGFIX] Purger: fix `Invalid null value in condition for column range` caused by `nil` value in range for WriteBatch query. #4128
26
27
*[BUGFIX] Ingester: fixed infrequent panic caused by a race condition between TSDB mmap-ed head chunks truncation and queries. #4176
f.DurationVar(&cfg.HeartbeatPeriod, rfprefix+"heartbeat-period", 15*time.Second, "Period at which to heartbeat to the ring.")
78
80
f.DurationVar(&cfg.HeartbeatTimeout, rfprefix+"heartbeat-timeout", time.Minute, "The heartbeat timeout after which alertmanagers are considered unhealthy within the ring.")
79
81
f.IntVar(&cfg.ReplicationFactor, rfprefix+"replication-factor", 3, "The replication factor to use when sharding the alertmanager.")
82
+
f.BoolVar(&cfg.ZoneAwarenessEnabled, rfprefix+"zone-awareness-enabled", false, "True to enable zone-awareness and replicate alerts across different availability zones.")
f.Var((*flagext.StringSlice)(&cfg.InstanceInterfaceNames), rfprefix+"instance-interface-names", "Name of network interface to read address from.")
84
87
f.StringVar(&cfg.InstanceAddr, rfprefix+"instance-addr", "", "IP address to advertise in the ring.")
85
88
f.IntVar(&cfg.InstancePort, rfprefix+"instance-port", 0, "Port to advertise in the ring (defaults to server.grpc-listen-port).")
86
89
f.StringVar(&cfg.InstanceID, rfprefix+"instance-id", hostname, "Instance ID to register in the ring.")
90
+
f.StringVar(&cfg.InstanceZone, rfprefix+"instance-availability-zone", "", "The availability zone where this instance is running. Required if zone-awareness is enabled.")
Copy file name to clipboardExpand all lines: pkg/alertmanager/multitenant.go
+7-3
Original file line number
Diff line number
Diff line change
@@ -86,9 +86,10 @@ const (
86
86
var (
87
87
statusTemplate*template.Template
88
88
89
-
errInvalidExternalURL=errors.New("the configured external URL is invalid: should not end with /")
90
-
errShardingLegacyStorage=errors.New("deprecated -alertmanager.storage.* not supported with -alertmanager.sharding-enabled, use -alertmanager-storage.*")
91
-
errShardingUnsupportedStorage=errors.New("the configured alertmanager storage backend is not supported when sharding is enabled")
89
+
errInvalidExternalURL=errors.New("the configured external URL is invalid: should not end with /")
90
+
errShardingLegacyStorage=errors.New("deprecated -alertmanager.storage.* not supported with -alertmanager.sharding-enabled, use -alertmanager-storage.*")
91
+
errShardingUnsupportedStorage=errors.New("the configured alertmanager storage backend is not supported when sharding is enabled")
92
+
errZoneAwarenessEnabledWithoutZoneInfo=errors.New("the configured alertmanager has zone awareness enabled but zone is not set")
0 commit comments