Skip to content

Conversation

@danielehc
Copy link
Contributor

@danielehc danielehc commented Dec 4, 2025

Description

Update "Automated upgrades" documentation.

Links

Jira: CE-922

Deploy previews:

Contributor checklists

Review urgency:

  • ASAP: Bug fixes, broken content, imminent releases
  • 3 days: Small changes, easy reviews
  • 1 week: Default expectation
  • Best effort: No urgency

Pull request:

  • Verify that the PR is set to merge into the correct base branch
  • Verify that all status checks passed
  • Verify that the preview environment deployed successfully
  • Add additional reviewers if they are not part of assigned groups

Content:

  • I added redirects for any moved or removed pages
  • I followed the Education style guide
  • I looked at the local or Vercel build to make sure the content rendered correctly

Reviewer checklist

  • This PR is set to merge into the correct base branch.
  • The content does not contain technical inaccuracies.
  • The content follows the Education content and style guides.
  • I have verified and tested changes to instructions for end users.

@danielehc danielehc requested review from boruszak and krastin December 4, 2025 21:54
@danielehc danielehc self-assigned this Dec 4, 2025
@danielehc danielehc added documentation Improvements or additions to documentation Consul labels Dec 4, 2025
@github-actions
Copy link
Contributor

github-actions bot commented Dec 4, 2025

Vercel Previews Deployed

Name Status Preview Updated (UTC)
Dev Portal ✅ Ready (Inspect) Visit Preview Thu Dec 4 22:20:13 UTC 2025
Unified Docs API ✅ Ready (Inspect) Visit Preview Thu Dec 4 22:14:30 UTC 2025

@github-actions
Copy link
Contributor

github-actions bot commented Dec 4, 2025

Broken Link Checker

No broken links found! 🎉

Copy link
Contributor

@boruszak boruszak left a comment

Choose a reason for hiding this comment

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

Great work! See my comment in the review about what comes off to me as a missing step. After you makes these changes, I'll do a final proofread and approve!

# Automated Upgrades

<EnterpriseAlert>
One of the fundamental operations to be performed in any production environment is to upgrade to a new version without experiencing downtime and to minimize any risk factors that could lead to future outages.
Copy link
Contributor

Choose a reason for hiding this comment

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

Suggested change
One of the fundamental operations to be performed in any production environment is to upgrade to a new version without experiencing downtime and to minimize any risk factors that could lead to future outages.
One of the fundamental operations to be performed in any production environment is to upgrade Consul servers to a new version without experiencing downtime, while minimizing any risk factors that could lead to future outages.

Comment on lines +12 to +13
Consul Enterprise allows to automatically upgrade a cluster of Consul servers to a new version by adding updated server nodes to the cluster.
Consul monitors the amount of servers in the cluster and, when a sufficient amount of new server nodes are joined, Consul promotes them to voters, elects a new leader among the new servers, and demotes the old version servers to non-voters. Once this demotion occurs, the old servers can be safely removed from the cluster.
Copy link
Contributor

Choose a reason for hiding this comment

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

Suggested change
Consul Enterprise allows to automatically upgrade a cluster of Consul servers to a new version by adding updated server nodes to the cluster.
Consul monitors the amount of servers in the cluster and, when a sufficient amount of new server nodes are joined, Consul promotes them to voters, elects a new leader among the new servers, and demotes the old version servers to non-voters. Once this demotion occurs, the old servers can be safely removed from the cluster.
Consul Enterprise helps you automatically upgrade a cluster of Consul servers to a new version.
Consul autopilot monitors the amount of servers in the cluster. When a sufficient amount of new server nodes join, Consul promotes them to voters, elects a new leader among the new servers, and then demotes the servers running old versions to non-voters. Once this demotion occurs, the old servers can be safely removed from the cluster.


# Automated upgrades
# Automated Upgrades

Copy link
Contributor

Choose a reason for hiding this comment

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

Suggested change
This page describes automated upgrades, a Consul Enterprise feature that helps you upgrade the version of Consul your servers are running.
## Introduction

For the content type/style

1. Patch configuration for server nodes without changing Consul version

This will help you create a standardized and repeatable internal process for server upgrades.
The functionality can be used in different use-case scenarios:
Copy link
Contributor

Choose a reason for hiding this comment

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

Suggested change
The functionality can be used in different use-case scenarios:
Automated upgrades can help you in the following scenarios:

Comment on lines +18 to +19
1. Upgrade to a new Consul version - This scenario is useful when you want to upgrade Consul servers to a newer version without downtime.
1. Migrate to different server nodes - This scenario is useful when you have a new Consul server image with security patches and want to replace the running Consul server instances automatically, without experiencing downtime.
Copy link
Contributor

Choose a reason for hiding this comment

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

Suggested change
1. Upgrade to a new Consul version - This scenario is useful when you want to upgrade Consul servers to a newer version without downtime.
1. Migrate to different server nodes - This scenario is useful when you have a new Consul server image with security patches and want to replace the running Consul server instances automatically, without experiencing downtime.
- **Upgrade to a new Consul version**: When you want to upgrade Consul servers to a newer version without downtime.
- **Migrate to different server nodes**: When you have a new Consul server image with security patches and want to replace the running Consul server instances automatically, without experiencing downtime.


</CodeTabs>

Once the third new server is started, autopilot detects the possibility to reach a quorum among the new servers and promotes them as voters, triggers a new leader election, and demotes the old nodes as non-voters. This time the version comparison happens not using the Consul internal version but the value expressed in the `build` value.
Copy link
Contributor

Choose a reason for hiding this comment

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

Suggested change
Once the third new server is started, autopilot detects the possibility to reach a quorum among the new servers and promotes them as voters, triggers a new leader election, and demotes the old nodes as non-voters. This time the version comparison happens not using the Consul internal version but the value expressed in the `build` value.
After the third new server starts, autopilot detects the possibility of a quorum among the new servers, and promotes them to voters.

consul-server-3b 3908d249-3da3-2262-7405-da5b80337716 172.18.0.11:8300 follower true 3 157 0 commits
```

The process can also be observed from the leader's logs:
Copy link
Contributor

Choose a reason for hiding this comment

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

Suggested change
The process can also be observed from the leader's logs:
You can also observe this process in the leader's logs:

the datacenter using the `consul leave` command. This will leave only the new
servers but will prevent a leader election during the process that you would
have experienced without autopilot.
Once the upgrade is rolled out, remove the old servers from the datacenter using the `consul leave` command.
Copy link
Contributor

Choose a reason for hiding this comment

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

Suggested change
Once the upgrade is rolled out, remove the old servers from the datacenter using the `consul leave` command.
Once the upgrade is rolled out, use the `consul leave ` command to remove the old servers from the datacenter.

Comment on lines +372 to +373
In this document, you learned how to upgrade your Consul datacenter by using autopilot's Automated Upgrades functionality.
Use the feature when planning upgrades to reduce manual steps to a minimum.
Copy link
Contributor

Choose a reason for hiding this comment

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

Suggested change
In this document, you learned how to upgrade your Consul datacenter by using autopilot's Automated Upgrades functionality.
Use the feature when planning upgrades to reduce manual steps to a minimum.


You can learn more on other autopilot functionalities by checking our [autopilot
tutorial](/consul/tutorials/datacenter-operations/autopilot-datacenter-operations).
Learn more on other autopilot functionalities by checking our [Consul autopilot](/consul/docs/manage/scale/autopilot) documentation.
Copy link
Contributor

Choose a reason for hiding this comment

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

Suggested change
Learn more on other autopilot functionalities by checking our [Consul autopilot](/consul/docs/manage/scale/autopilot) documentation.
To learn more about other Consul autopilot features, refer to [Consul autopilot](/consul/docs/manage/scale/autopilot).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Consul documentation Improvements or additions to documentation Runtime

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants