Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Mark docrep to remote migration as GA and modify settings names #7342

Merged
merged 11 commits into from
Jun 18, 2024
Original file line number Diff line number Diff line change
Expand Up @@ -8,9 +8,6 @@

# Migrating to remote-backed storage

This is an experimental feature and is not recommended for use in a production environment. For updates on the progress of the feature or if you want to leave feedback, see the associated [GitHub issue](https://github.com/opensearch-project/OpenSearch/issues/7986).
{: .warning}

Introduced 2.14
Copy link
Collaborator

Choose a reason for hiding this comment

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

This label is confusing. Is this no longer an experimental feature? If so, then we should update label to Introduced 2.15. The subsequent text refers to 2.15.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Yes, we are doing GA for it .

{: .label .label-purple }

Expand All @@ -24,9 +21,9 @@

Review [Upgrading OpenSearch]({{site.url}}{{site.baseurl}}/upgrade-opensearch/index/) for recommendations about backing up your configuration files and creating a snapshot of the cluster state and indexes before you make any changes to your OpenSearch cluster.

Before migrating to remote-backed storage, upgrade to OpenSearch 2.14.
Before migrating to remote-backed storage, upgrade to OpenSearch 2.15.
Copy link
Contributor Author

Choose a reason for hiding this comment

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

They need to minimally upgrade to 2.15 for migration , latest versions is not mandatory .


As of OpenSearch 2.14, OpenSearch nodes cannot be migrated back to document replication. If you need to revert the migration, then you will need to perform a fresh installation of OpenSearch and restore the cluster from a snapshot. Take a snapshot and store it in a remote repository before beginning the upgrade procedure.
As of OpenSearch 2.15, OpenSearch nodes cannot be migrated back to document replication. If you need to revert the migration, then you will need to perform a fresh installation of OpenSearch and restore the cluster from a snapshot. Take a snapshot and store it in a remote repository before beginning the upgrade procedure.
Copy link
Collaborator

Choose a reason for hiding this comment

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

Suggested change
As of OpenSearch 2.15, OpenSearch nodes cannot be migrated back to document replication. If you need to revert the migration, then you will need to perform a fresh installation of OpenSearch and restore the cluster from a snapshot. Take a snapshot and store it in a remote repository before beginning the upgrade procedure.
As of OpenSearch 2.15, nodes cannot be migrated back to document replication. To revert, perform a fresh installation and restore from a snapshot. Take a snapshot and store it remotely before upgrading.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Storing it remotely doesn't spell out need to do a snapshot .

{: .important}

## Performing the upgrade
Expand Down Expand Up @@ -105,14 +102,14 @@
}
```

1. Set the `remote_store.compatibility_mode` setting to `mixed` to allow remote-backed storage nodes to join the cluster. Then set `migration.direction` to `remote_store`, which allocates new indexes to remote-backed data nodes. The following example updates the aforementioned setting using the Cluster Settings API:
1. Set the `cluster.remote_store.compatibility_mode` setting to `mixed` to allow remote-backed storage nodes to join the cluster. Then set `cluster.migration.direction` to `remote_store`, which allocates new indexes to remote-backed data nodes. The following example updates the aforementioned setting using the Cluster Settings API:

```json
PUT "/_cluster/settings?pretty"
{
"persistent": {
"remote_store.compatibility_mode": "mixed",
"migration.direction" : "remote_store"
"cluster.remote_store.compatibility_mode": "mixed",
"cluster.migration.direction" : "remote_store"
}
}
```
Expand All @@ -121,13 +118,15 @@
```json
{
"acknowledged" : true,
"persistent" : {
"remote_store" : {
"compatibility_mode" : "mixed",
"migration.direction" : "remote_store"
"persistent" : {
"cluster" : {
"remote_store" : {
"compatibility_mode" : "mixed",
"migration.direction" : "remote_store"
}
},
"transient" : { }
}
}
}
```

Expand Down Expand Up @@ -233,8 +232,8 @@
PUT "/_cluster/settings?pretty"
{
"persistent": {
"remote_store.compatibility_mode": strict,
"migration.direction" : none
"cluster.remote_store.compatibility_mode": null,
"cluster.migration.direction" : null
}
}
```
Expand All @@ -243,7 +242,10 @@
```json
{
"acknowledged" : true,
"persistent" : { strict },
"persistent" : {
"cluster.remote_store.compatibility_mode": null,
"cluster.migration.direction" : null
},
"transient" : { }
}
```
Expand All @@ -255,8 +257,8 @@

Use the following cluster settings to enable migration to a remote-backed cluster.

| Field | Data type | Description |
| :--- |:--- |:---|
| `remote_store.compatibility_mode` | String | When set to `strict`, only allows the creation of either non-remote or remote nodes, depending upon the initial cluster type. When set to `mixed`, allows both remote and non-remote nodes to join the cluster. Default is `strict`. |
| `migration.direction` | String | Creates new shards only on remote-backed storage nodes. Default is `None`. |
| Field | Data type | Description |
|:------------------------------------------|:--- |:---|
| `cluster.remote_store.compatibility_mode` | String | When set to `strict`, only allows the creation of either non-remote or remote nodes, depending upon the initial cluster type. When set to `mixed`, allows both remote and non-remote nodes to join the cluster. Default is `strict`. |
vagimeli marked this conversation as resolved.
Show resolved Hide resolved
| `cluster.migration.direction` | String | Creates new shards only on remote-backed storage nodes. Default is `None`. |

Check failure on line 263 in _tuning-your-cluster/availability-and-recovery/remote-store/migrating-to-remote.md

View workflow job for this annotation

GitHub Actions / style-job

[vale] reported by reviewdog 🐶 [OpenSearch.SpacingPunctuation] There should be no space before and one space after the punctuation mark in 'nodes. Default'. Raw Output: {"message": "[OpenSearch.SpacingPunctuation] There should be no space before and one space after the punctuation mark in 'nodes. Default'.", "location": {"path": "_tuning-your-cluster/availability-and-recovery/remote-store/migrating-to-remote.md", "range": {"start": {"line": 263, "column": 106}}}, "severity": "ERROR"}
vagimeli marked this conversation as resolved.
Show resolved Hide resolved

Loading