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

update documentation for managed service migrations using migration assistant #9338

Open
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

jugal-chauhan
Copy link
Contributor

@jugal-chauhan jugal-chauhan commented Feb 28, 2025

Description

This PR improves documentation for managed service-to-service migrations by:

  • Adding complete configuration examples for cdk.context.json
  • Documenting required manual IAM role mappings for MigrationServiceTaskRole, reindexfromsnapshotTaskRole, and trafficreplayerdefaultTaskRole
  • Including new troubleshooting checks for S3 bucket policies, IAM permissions, and snapshot naming conflicts

Reviewer Request
@peternied, could you review this PR from the migrations team perspective?

Checklist

  • By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license and subject to the Developers Certificate of Origin.
    For more information on following Developer Certificate of Origin and signing off your commits, please check here.

Copy link

Thank you for submitting your PR. The PR states are In progress (or Draft) -> Tech review -> Doc review -> Editorial review -> Merged.

Before you submit your PR for doc review, make sure the content is technically accurate. If you need help finding a tech reviewer, tag a maintainer.

When you're ready for doc review, tag the assignee of this PR. The doc reviewer may push edits to the PR directly or leave comments and editorial suggestions for you to address (let us know in a comment if you have a preference). The doc reviewer will arrange for an editorial review.

@@ -145,10 +145,16 @@ Use the following steps to configure and deploy RFS, deploy Migration Assistant,
}
},
"reindexFromSnapshotExtraArgs": "<RFS PARAMETERS (see below)>",
"reindexFromSnapshotServiceEnabled": true,
"reindexFromSnapshotMaxShardSizeGiB": 80,
"trafficReplayerServiceEnabled": true,
Copy link
Member

Choose a reason for hiding this comment

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

This quickstart outlines how to deploy Migration Assistant for OpenSearch and execute an existing data migration using Reindex-from-Snapshot (RFS).

Per the top of the doc, we should not enable the replayer or capture proxy.

"otelCollectorEnabled": true,
"migrationConsoleServiceEnabled": true,
"reindexFromSnapshotServiceEnabled": true,
"migrationAssistanceEnabled": true
"migrationAssistanceEnabled": true,
Copy link
Member

Choose a reason for hiding this comment

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

This flag is enabled by default, lets keep this context defintion as simple as possible and remove this value.

@@ -145,10 +145,16 @@ Use the following steps to configure and deploy RFS, deploy Migration Assistant,
}
},
"reindexFromSnapshotExtraArgs": "<RFS PARAMETERS (see below)>",
"reindexFromSnapshotServiceEnabled": true,
Copy link
Member

Choose a reason for hiding this comment

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

This flag is enabled by default, lets keep this context definition as simple as possible and remove this value.

@@ -145,10 +145,16 @@ Use the following steps to configure and deploy RFS, deploy Migration Assistant,
}
},
"reindexFromSnapshotExtraArgs": "<RFS PARAMETERS (see below)>",
"reindexFromSnapshotServiceEnabled": true,
"reindexFromSnapshotMaxShardSizeGiB": 80,
Copy link
Member

Choose a reason for hiding this comment

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

👍 I think this could be useful to leave in since it makes obvious what the max shard size is, and if the user runs into trouble this might help them fix it.

"reindexFromSnapshotServiceEnabled": true,
"migrationAssistanceEnabled": true
"migrationAssistanceEnabled": true,
"targetClusterProxyServiceEnabled": true,
Copy link
Member

Choose a reason for hiding this comment

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

Also per the top of the doc, lets not include any proxy or replayer settings

3. **Managed Service Role Mapping (Cross-Managed Migrations)**

When migrating between two managed clusters (for ex. both domains created using Amazon OpenSearch Service):
1. Locate these IAM roles created during the CDK deployment and copy their ARN:
Copy link
Member

Choose a reason for hiding this comment

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

"Locate" isn't obvious, lets tell the user to open the cloud formation and find the IAM roles in that list, could you update with more specific instructions?

- under "Mapped users", add each ARN as a backend role
- Save changes

*Note: This grants the migration assistant components necessary permissions to modify both source and target managed clusters.*
Copy link
Member

Choose a reason for hiding this comment

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

This seems like the reason to perform this step 3, lets rewrite this line to the top and make it clear the purpose e.g. "Provide Migration Assistant roles with access to the source and target clusters."

Comment on lines +178 to +179
1. **Bucket Permissions**
Confirm the `OSMigrations-dev-<region>-CustomS3AutoDeleteObjects` stack has S3 object deletion rights.
Copy link
Member

Choose a reason for hiding this comment

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

? Why is this needed, shouldn't this already be done with the CDK setup assuming you use the S3 bucket that MA created?

@jugal-chauhan jugal-chauhan force-pushed the managed-service-migration-doc-updates branch from 9e30d34 to a124749 Compare February 28, 2025 18:26
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.

4 participants