Skip to content

docs(ha): update high availability documentation#5136

Merged
SoloJacobs merged 1 commit intoprometheus:mainfrom
TheMeier:issues/5111
Mar 31, 2026
Merged

docs(ha): update high availability documentation#5136
SoloJacobs merged 1 commit intoprometheus:mainfrom
TheMeier:issues/5111

Conversation

@TheMeier
Copy link
Copy Markdown
Contributor

@TheMeier TheMeier commented Mar 31, 2026

clarify that --cluster.advertise-address requires
an IP address and port, hostnames are not supported.

Pull Request Checklist

Please check all the applicable boxes.

NONE

Summary by CodeRabbit

  • Documentation
    • Updated example startup command to use a fixed advertise IP address.
    • Clarified that the cluster advertise address must be an IP in <ip>:<port> format (hostnames are not supported).
    • Noted that omitting the flag allows auto-detection, but using a hostname will log a warning and can leave the address unset, causing cluster communication failures.
    • Added explicit cloud/NAT example for configuring a routable IP.

@TheMeier TheMeier requested a review from a team as a code owner March 31, 2026 16:52
@coderabbitai
Copy link
Copy Markdown

coderabbitai bot commented Mar 31, 2026

📝 Walkthrough

Walkthrough

Docs updated to require --cluster.advertise-address be an IP in <ip>:<port> format (not a hostname); example startup command changed to use a fixed IP and guidance on auto-detection and cloud/NAT scenarios was clarified.

Changes

Cohort / File(s) Summary
Documentation Update
docs/high_availability.md
Changed example to use --cluster.advertise-address=192.0.2.1:9094; clarified flag requires an IP (<ip>:<port>), tightened guidance about auto-detection when omitted, and added note that hostnames are unsupported and can cause cluster communication failures (cloud/NAT example added).

Estimated code review effort

🎯 1 (Trivial) | ⏱️ ~3 minutes

Possibly related issues

🚥 Pre-merge checks | ✅ 4 | ❌ 1

❌ Failed checks (1 inconclusive)

Check name Status Explanation Resolution
Title check ❓ Inconclusive The title 'docs(ha): update high availability documentation' is vague and generic, using non-descriptive terms that don't convey the specific change about clarifying IP address requirements. Consider a more specific title like 'docs(ha): clarify that cluster.advertise-address requires IP addresses not hostnames' to better describe the actual change.
✅ Passed checks (4 passed)
Check name Status Explanation
Linked Issues check ✅ Passed The PR documentation updates directly address issue #1271's primary objective by clarifying that --cluster.advertise-address requires an IP address in : format, not hostnames.
Out of Scope Changes check ✅ Passed All changes are documentation-only updates to high_availability.md focused on clarifying the IP address requirement, fully aligned with issue #1271 objectives.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Description check ✅ Passed PR description covers the main objective (clarifying IP requirement for --cluster.advertise-address) and includes most required checklist items (documentation updated, signed-off commits, community guidelines acknowledged), but is missing the release-notes details despite marking completion.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests

Comment @coderabbitai help to get the list of available commands and usage tips.

Copy link
Copy Markdown

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Inline comments:
In `@docs/high_availability.md`:
- Around line 396-397: Update the docs sentence to reflect that hostnames do not
cause a hard startup failure but can lead to misconfiguration: change the claim
that hostnames "will cause a startup error" to language like "will cause the
advertise address to be misconfigured, resulting in cluster communication
failures" and mention that hostname parsing only logs a warning in
calculateAdvertiseAddress() and Peer constructor (functions
calculateAdvertiseAddress and Peer) so startup continues with a potentially
incorrect advertise address.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

Run ID: ca042421-e88b-4e88-9eda-9837ef1a5f7b

📥 Commits

Reviewing files that changed from the base of the PR and between 1d6097c and 2c36654.

📒 Files selected for processing (1)
  • docs/high_availability.md

clarify that --cluster.advertise-address requires
an IP address and port, hostnames are not supported.

Signed-off-by: Christoph Maser <christoph.maser+github@gmail.com>
Copy link
Copy Markdown
Contributor

@Spaceman1701 Spaceman1701 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Lgtm. Read the code and I agree with the conclusion - it'll log a warning and do nothing.

We should probably change that, but it might break some people's deployments.

@SoloJacobs
Copy link
Copy Markdown
Contributor

I would also like to see this fixed.

@SoloJacobs SoloJacobs merged commit 9ad4f00 into prometheus:main Mar 31, 2026
7 checks passed
SoloJacobs added a commit to SoloJacobs/alertmanager that referenced this pull request Apr 6, 2026
* [CHANGE] `go get github.com/prometheus/alertmanager/ui` will now fail as compiled UI assets are no longer checked into the repository. Downstream builds that rely on these assets being present in the source tree must now build the UI from source. prometheus#5113
* [CHANGE] The '--enable-feature=auto-gomaxprocs' option is deprecated and will be removed in v0.33. This flag currently has no effect and can be safely removed from any startup scripts. prometheus#5090
* [CHANGE] Update internal function signatures across multiple packages. This affects any project that integrates `Alertmanager` code.
* [ENHANCEMENT] Add static asset caching. prometheus#5113
* [ENHANCEMENT] Reduce memory allocations through pre-sizing collections and batch allocation. prometheus#5020
* [ENHANCEMENT] Replace help with documentation in navigation bar. prometheus#4943
* [ENHANCEMENT] docs(ha): Update high availability documentation. prometheus#5136
* [ENHANCEMENT] docs: Add `auth_secret_file` for smtp in document. prometheus#5036
* [ENHANCEMENT] docs: Add description for global `telegram_bot_token`. prometheus#5114
* [ENHANCEMENT] docs: Add note about notifier timeouts. prometheus#5077
* [ENHANCEMENT] docs: Fix `force_implicit_tls` config field name. prometheus#5030
* [ENHANCEMENT] docs: Link community supported integrations. prometheus#4978
* [ENHANCEMENT] docs: Remove duplicate header. prometheus#5034
* [ENHANCEMENT] docs: Update mutual tls reference in high availability documentation. prometheus#5120
* [ENHANCEMENT] tracing: Use noop spans when tracing disabled. prometheus#5118
* [FEATURE] Add silence annotations. prometheus#4965
* [FEATURE] Add silence logging option. prometheus#4163
* [FEATURE] Add support for multiple matcher set silences. prometheus#4957
* [FEATURE] Add the reason for notifying in dedup stage. prometheus#4971
* [FEATURE] mattermost: Flatten attachments into top-level config. prometheus#5009
* [FEATURE] mattermost: Support global webhook url. prometheus#4998
* [FEATURE] slack: Add default color from template. prometheus#5014
* [FEATURE] slack: Allow receiver to edit existing messages. prometheus#5007
* [FEATURE] template: Add dict, map and append functions. prometheus#5093
* [FEATURE] webhook: Add full payload templating support for notifier. prometheus#5011
* [BUGFIX] config: Check for empty cluster tls client config. prometheus#5126
* [BUGFIX] config: Don't crash upon reading empty config for notifier. prometheus#4979
* [BUGFIX] config: Fix ipv6 address handling in hostport.string(). prometheus#5040
* [BUGFIX] mattermost: Omit empty text field in notifications. prometheus#4985
* [BUGFIX] telegram: Send fallback message when notification exceeds character limit. prometheus#5074
* [BUGFIX] ui: Fix escaping for matcher values with quotes. prometheus#4862
* [BUGFIX] ui: Handle special chars in silence regex-matchers. prometheus#4942
* [BUGFIX] ui: Support utf-8 label names in matchers. prometheus#5089

Signed-off-by: Solomon Jacobs <solomonjacobs@protonmail.com>
@SoloJacobs SoloJacobs mentioned this pull request Apr 6, 2026
ultrotter pushed a commit that referenced this pull request Apr 7, 2026
* [CHANGE] `go get github.com/prometheus/alertmanager/ui` will now fail as compiled UI assets are no longer checked into the repository. Downstream builds that rely on these assets being present in the source tree must now build the UI from source. #5113
* [CHANGE] The '--enable-feature=auto-gomaxprocs' option is deprecated and will be removed in v0.33. This flag currently has no effect and can be safely removed from any startup scripts. #5090
* [CHANGE] Update internal function signatures across multiple packages. This affects any project that integrates `Alertmanager` code.
* [ENHANCEMENT] Add static asset caching. #5113
* [ENHANCEMENT] Reduce memory allocations through pre-sizing collections and batch allocation. #5020
* [ENHANCEMENT] Replace help with documentation in navigation bar. #4943
* [ENHANCEMENT] docs(ha): Update high availability documentation. #5136
* [ENHANCEMENT] docs: Add `auth_secret_file` for smtp in document. #5036
* [ENHANCEMENT] docs: Add description for global `telegram_bot_token`. #5114
* [ENHANCEMENT] docs: Add note about notifier timeouts. #5077
* [ENHANCEMENT] docs: Fix `force_implicit_tls` config field name. #5030
* [ENHANCEMENT] docs: Link community supported integrations. #4978
* [ENHANCEMENT] docs: Remove duplicate header. #5034
* [ENHANCEMENT] docs: Update mutual tls reference in high availability documentation. #5120
* [ENHANCEMENT] tracing: Use noop spans when tracing disabled. #5118
* [FEATURE] Add silence annotations. #4965
* [FEATURE] Add silence logging option. #4163
* [FEATURE] Add support for multiple matcher set silences. #4957
* [FEATURE] Add the reason for notifying in dedup stage. #4971
* [FEATURE] mattermost: Flatten attachments into top-level config. #5009
* [FEATURE] mattermost: Support global webhook url. #4998
* [FEATURE] slack: Add default color from template. #5014
* [FEATURE] slack: Allow receiver to edit existing messages. #5007
* [FEATURE] template: Add dict, map and append functions. #5093
* [FEATURE] webhook: Add full payload templating support for notifier. #5011
* [BUGFIX] config: Check for empty cluster tls client config. #5126
* [BUGFIX] config: Don't crash upon reading empty config for notifier. #4979
* [BUGFIX] config: Fix ipv6 address handling in hostport.string(). #5040
* [BUGFIX] mattermost: Omit empty text field in notifications. #4985
* [BUGFIX] telegram: Send fallback message when notification exceeds character limit. #5074
* [BUGFIX] ui: Fix escaping for matcher values with quotes. #4862
* [BUGFIX] ui: Handle special chars in silence regex-matchers. #4942
* [BUGFIX] ui: Support utf-8 label names in matchers. #5089

Signed-off-by: Solomon Jacobs <solomonjacobs@protonmail.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants