From fc1db5242df06a3151b92741d816559c0841a0dc Mon Sep 17 00:00:00 2001 From: David Turner Date: Thu, 19 Oct 2023 14:31:32 +0100 Subject: [PATCH 1/2] Improve rolling upgrade order docs The first point in the list (upgrade the master-ineligible nodes) is redundant and sort of contradicts the second one (upgrade the data nodes tier-by-tier). This commit drops it. The second point had some redundant sentences in a somewhat awkward order. This commit cleans that up. There's no mention of nodes that are neither data nodes nor master-eligible nodes. In fact it doesn't really matter when these nodes are upgraded, but this commit specifies to upgrade them before the master-eligible nodes for the sake of completeness. Finally, there were some over-long lines so this commit reflows the source. --- .../upgrading-elasticsearch.asciidoc | 24 +++++++++++-------- 1 file changed, 14 insertions(+), 10 deletions(-) diff --git a/docs/en/install-upgrade/upgrading-elasticsearch.asciidoc b/docs/en/install-upgrade/upgrading-elasticsearch.asciidoc index dfb2efdc0..2214be387 100644 --- a/docs/en/install-upgrade/upgrading-elasticsearch.asciidoc +++ b/docs/en/install-upgrade/upgrading-elasticsearch.asciidoc @@ -22,16 +22,20 @@ running the older version. Before you start, <>. When performing a <>: -. Upgrade nodes that are **NOT** {ref}/modules-node.html#master-node[master-eligible] first. -You can retrieve a list of these nodes with `GET /_nodes/_all,master:false/_none` or by finding all the nodes configured with `node.master: false`. - -. Upgrade nodes tier-by-tier, starting with the frozen tier. -Complete the upgrade for all nodes in each data tier before moving to the next. -Upgrade the frozen tier, then the cold tier, then the warm tier, and upgrade the hot tier last. This ensures {ilm-init} can continue to move data through the tiers during the upgrade. You can get the list of nodes in a specific tier with a `GET /_nodes` request, -for example: `GET /_nodes/data_frozen:true/_none`. - -. Upgrade the master-eligible nodes last. You can retrieve a list -of these nodes with `GET /_nodes/master:true`. +. Upgrade the data nodes first, tier-by-tier, starting with the frozen tier, +then the cold tier, then the warm tier, then the hot tier, and finally any other +data nodes which are not in a tier. Complete the upgrade for all nodes in each +data tier before moving to the next. This ensures {ilm-init} can continue to +move data through the tiers during the upgrade. You can get the list of nodes in +a specific tier with a `GET /_nodes` request, for example: `GET +/_nodes/data_frozen:true/_none`. + +. Upgrade all remaining nodes that are neither master-eligible nor data nodes. +This includes dedicated ML nodes, dedicated ingest nodes, and dedicated +coordinating nodes. + +. Upgrade the master-eligible nodes last. You can retrieve a list of these nodes +with `GET /_nodes/master:true`. This order ensures that all nodes can join the cluster during the upgrade. Upgraded nodes can join a cluster with an older master, but older nodes cannot From ee405ec3f5e92d5776852f315c4f50cc5a3afc3d Mon Sep 17 00:00:00 2001 From: David Turner Date: Thu, 19 Oct 2023 14:37:56 +0100 Subject: [PATCH 2/2] Fix line break & add _none --- docs/en/install-upgrade/upgrading-elasticsearch.asciidoc | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/docs/en/install-upgrade/upgrading-elasticsearch.asciidoc b/docs/en/install-upgrade/upgrading-elasticsearch.asciidoc index 2214be387..1874f2981 100644 --- a/docs/en/install-upgrade/upgrading-elasticsearch.asciidoc +++ b/docs/en/install-upgrade/upgrading-elasticsearch.asciidoc @@ -27,15 +27,15 @@ then the cold tier, then the warm tier, then the hot tier, and finally any other data nodes which are not in a tier. Complete the upgrade for all nodes in each data tier before moving to the next. This ensures {ilm-init} can continue to move data through the tiers during the upgrade. You can get the list of nodes in -a specific tier with a `GET /_nodes` request, for example: `GET -/_nodes/data_frozen:true/_none`. +a specific tier with a `GET /_nodes` request, for example: +`GET /_nodes/data_frozen:true/_none`. . Upgrade all remaining nodes that are neither master-eligible nor data nodes. This includes dedicated ML nodes, dedicated ingest nodes, and dedicated coordinating nodes. . Upgrade the master-eligible nodes last. You can retrieve a list of these nodes -with `GET /_nodes/master:true`. +with `GET /_nodes/master:true/_none`. This order ensures that all nodes can join the cluster during the upgrade. Upgraded nodes can join a cluster with an older master, but older nodes cannot