From 978d0464c48ba6a55156d71649471d5401017a77 Mon Sep 17 00:00:00 2001 From: aishwarya24 Date: Thu, 16 Oct 2025 10:52:24 -0400 Subject: [PATCH 1/6] first cut --- .../preview/yugabyte-voyager/_index.md | 6 +- .../preview/yugabyte-voyager/quickstart.md | 299 ++++++++++++++++++ .../reference/compare-performance.md | 1 + 3 files changed, 303 insertions(+), 3 deletions(-) create mode 100644 docs/content/preview/yugabyte-voyager/quickstart.md diff --git a/docs/content/preview/yugabyte-voyager/_index.md b/docs/content/preview/yugabyte-voyager/_index.md index c1e3c1e16797..cc1d744de2ef 100644 --- a/docs/content/preview/yugabyte-voyager/_index.md +++ b/docs/content/preview/yugabyte-voyager/_index.md @@ -23,10 +23,10 @@ Use YugabyteDB Voyager to manage end-to-end database migration, including cluste {{< sections/text-with-right-image title="Get Started" - description="Install YugabyteDB Voyager on different operating systems (RHEL, Ubuntu, macOS), or via environments such as Docker or an Airgapped installation." + description="Complete a simple migration in 15 minutes with our quick start guide, or install YugabyteDB Voyager on different operating systems." imageTransparent=true - buttonText="Install" - buttonUrl="install-yb-voyager/" + buttonText="Quick start" + buttonUrl="quickstart/" imageTransparent=true imageAlt="YugabyteDB Voyager" imageUrl="/images/homepage/voyager-transparent.svg" >}} diff --git a/docs/content/preview/yugabyte-voyager/quickstart.md b/docs/content/preview/yugabyte-voyager/quickstart.md new file mode 100644 index 000000000000..f0d23baf9454 --- /dev/null +++ b/docs/content/preview/yugabyte-voyager/quickstart.md @@ -0,0 +1,299 @@ +--- +title: YugabyteDB Voyager Quick start +headerTitle: Quick start +linkTitle: Quick start +headcontent: Get started with YugabyteDB Voyager migration in minutes +description: Complete a basic database migration using YugabyteDB Voyager in the quickest possible way. +menu: + preview_yugabyte-voyager: + identifier: quickstart-voyager + parent: yugabytedb-voyager + weight: 100 +type: docs +showRightNav: true +--- + +This quick start guide walks you through migrating a PostgreSQL database to YugabyteDB using YugabyteDB Voyager with YugabyteDB Aeon as the target database. + +## Prerequisites + +Before you start, ensure that you have the following: + +- Java 17 installed +- 2+ CPU cores and 4GB+ RAM +- Network access to both source and target databases +- Sudo access on the machine where you'll run Voyager +- A PostgreSQL database to migrate (source) + +## Create a YugabyteDB Aeon cluster + +1. Sign up for YugabyteDB Aeon: + - Go to [YugabyteDB Aeon](https://cloud.yugabyte.com). + - Click **Sign up** and create your account. + +1. Create a cluster: + - Log in to your YugabyteDB Aeon account. + - Click **Create a Free cluster** on the welcome screen, or click **Add Cluster** on the **Clusters** page to open the **Create Cluster** wizard. + - Select **Sandbox** for testing or **Dedicated** for production. + - Enter a cluster name, choose your cloud provider (AWS or GCP) and region in which to deploy the cluster, then click **Next**. + - Click **Add Current IP Address** to allow connections from your machine, and click **Next**. + - Click **Download credentials**. The default credentials are for a database user named "admin". You'll use these credentials when connecting to your YugabyteDB database. + - Click **Create Cluster**. + +## Install YugabyteDB Voyager + +Install YugabyteDB Voyager on your machine as follows: + +1. In your YugabyteDB Aeon cluster page, click **Migrations**, and select **Migrate Database**. +1. In **Prepare Voyager**, choose your operating system, run the installation commands on your machine, and verify the installation. + +## Prepare source and target databases + +### Prepare source PostgreSQL database + +Create a database user and provide the user with READ access to all the resources which need to be migrated. Run the following commands in a psql session: + +1. Create a new user named `ybvoyager`. + + ```sql + CREATE USER ybvoyager PASSWORD 'password'; + ``` + +1. Grant permissions for migration. Use the [yb-voyager-pg-grant-migration-permissions.sql](../../reference/yb-voyager-pg-grant-migration-permissions/) script (in `/opt/yb-voyager/guardrails-scripts/` or, for brew, check in `$(brew --cellar)/yb-voyager@/`) to grant the required permissions as follows: + + ```sql + psql -h \ + -d \ + -U \ # A superuser or a privileged user with enough permissions to grant privileges + -v voyager_user='ybvoyager' \ + -v schema_list='' \ + -v is_live_migration=0 \ + -v is_live_migration_fall_back=0 \ + -f + ``` + + The `ybvoyager` user can now be used for migration. + +### Prepare target YugabyteDB Aeon database + +1. Create a target database (optional - you can use the default `yugabyte` database): + + ```sql + -- Connect to your YugabyteDB Aeon cluster + psql -h -p 5433 -U admin -d yugabyte + + -- Create target database + CREATE DATABASE target_db; + ``` + +1. Create a user with [`yb_superuser`](../../../yugabyte-cloud/cloud-secure-clusters/cloud-users/#admin-and-yb-superuser) role using the following command: + + ```sql + CREATE USER ybvoyager PASSWORD 'password'; + GRANT yb_superuser TO ybvoyager; + ``` + +1. Configure SSL connectivity + + 1. Create API key: + - In YugabyteDB Aeon, go to **Security** → **API Keys** + - Click **Create API Key** + - Enter a name and click **Create** + - Copy and save the API key securely + + 1. Download SSL certificates: + - In your cluster page, click **Connect** + - Under **Download certificates**, click **Download** + - Extract the certificates to a secure location on your machine + + 1. **Note SSL certificate paths**: + - Root certificate: `ca.crt` + - Client certificate: `yugabyte.crt` + - Client key: `yugabyte.key` + +## Create export directory and configuration + +1. **Create export directory**: + +```bash +mkdir -p ~/voyager-migration/export-dir +cd ~/voyager-migration +``` + +2. **Copy configuration template**: + +```bash +# Copy the offline migration template +cp /opt/yb-voyager/config-templates/offline-migration.yaml migration-config.yaml +``` + +3. **Configure the migration file**: + +Edit `migration-config.yaml` with your specific values: + +```yaml +# Global settings +export-dir: /home/$(whoami)/voyager-migration/export-dir +log-level: info + +# Source database (PostgreSQL) +source: + db-type: postgresql + db-host: + db-port: 5432 + db-name: + db-schema: public + db-user: ybvoyager + db-password: 'your_postgresql_password' + +# Target database (YugabyteDB Aeon) +target: + db-host: + db-port: 5433 + db-name: target_db + db-user: ybvoyager + db-password: 'your_yugabytedb_password' + ssl-mode: require + ssl-cert: /path/to/yugabyte.crt + ssl-key: /path/to/yugabyte.key + ssl-root-cert: /path/to/ca.crt +``` + +## Run migration assessment + +Execute the migration assessment to get recommendations: + +```bash +yb-voyager assess-migration --config-file migration-config.yaml +``` + +This generates a detailed assessment report with: +- Schema complexity analysis +- Data distribution recommendations +- Cluster sizing suggestions +- Performance optimization tips + +## Review and address assessment recommendations + +1. **Review the assessment report**: + - The report is saved in your export directory + - Open the HTML report in your browser + - Review recommendations for your specific workload + +2. **Address recommendations in YugabyteDB Aeon**: + - If the assessment suggests cluster resizing, adjust your cluster in Aeon + - Enable any recommended features in your cluster settings + - Note any schema changes recommended for optimal performance + +## Export and analyze schema + +1. **Export schema**: + +```bash +yb-voyager export schema --config-file migration-config.yaml +``` + +2. **Analyze schema**: + +```bash +yb-voyager analyze-schema --config-file migration-config.yaml +``` + +3. **Review schema analysis report**: + - Open the generated HTML report + - Review any manual changes recommended + - Make necessary modifications to the exported schema files if needed + +## Import schema + +Import the schema to your target YugabyteDB Aeon cluster: + +```bash +yb-voyager import schema --config-file migration-config.yaml +``` + +## Export and import data + +1. **Export data from source**: + +```bash +yb-voyager export data --config-file migration-config.yaml +``` + +2. **Import data to target**: + +```bash +yb-voyager import data --config-file migration-config.yaml +``` + +3. **Monitor import progress**: + +```bash +# Check import status +yb-voyager import data status --config-file migration-config.yaml +``` + +## Review import status in YugabyteDB Aeon + +1. **Check the YugabyteDB Aeon UI**: + - Go to your cluster page + - Navigate to **Migrations** tab + - Review the import data status report + - Verify all tables and data have been imported successfully + +## Validate migration + +1. **Connect to your target database**: + +```bash +psql -h -p 5433 -U ybvoyager -d target_db +``` + +2. **Verify data integrity**: + +```sql +-- Check table count +SELECT COUNT(*) FROM information_schema.tables WHERE table_schema = 'public'; + +-- Verify row counts for key tables +SELECT COUNT(*) FROM your_table_name; + +-- Sample data verification +SELECT * FROM your_table_name LIMIT 10; +``` + +3. **Test application connectivity**: + - Update your application connection strings + - Test basic CRUD operations + - Verify application functionality + +## Finalize migration + +1. **Finalize schema** (if needed): + +```bash +yb-voyager finalize-schema-post-data-import --config-file migration-config.yaml +``` + +2. **End migration**: + +```bash +yb-voyager end migration --config-file migration-config.yaml \ + --backup-schema-files true \ + --backup-data-files true \ + --save-migration-reports true +``` + +## What's next? + +### Explore advanced features + +- **[Live Migration](../migrate/live-migrate/)**: Migrate without downtime +- **[Performance Tuning](../reference/performance/)**: Optimize migration speed +- **[Bulk Data Loading](../migrate/bulk-data-load/)**: Import from CSV files + +### Additional resources + +- **[YugabyteDB Aeon Documentation](../../yugabyte-cloud/)**: Learn more about managing your cluster +- **[Voyager Troubleshooting](../voyager-troubleshoot/)**: Common issues and solutions +- **[Known Issues](../known-issues/)**: Limitations and workarounds diff --git a/docs/content/preview/yugabyte-voyager/reference/compare-performance.md b/docs/content/preview/yugabyte-voyager/reference/compare-performance.md index 81c8a575799d..e2e17f948669 100644 --- a/docs/content/preview/yugabyte-voyager/reference/compare-performance.md +++ b/docs/content/preview/yugabyte-voyager/reference/compare-performance.md @@ -184,3 +184,4 @@ yb-voyager compare-performance --export-dir /dir/export-dir ``` + From 08f8b0c7decb8209928aa29ddc40ef48613ef217 Mon Sep 17 00:00:00 2001 From: aishwarya24 Date: Thu, 16 Oct 2025 15:08:01 -0400 Subject: [PATCH 2/6] prepared a draft qs --- .../preview/yugabyte-voyager/_index.md | 2 +- .../preview/yugabyte-voyager/quickstart.md | 251 +++++++++--------- 2 files changed, 120 insertions(+), 133 deletions(-) diff --git a/docs/content/preview/yugabyte-voyager/_index.md b/docs/content/preview/yugabyte-voyager/_index.md index cc1d744de2ef..0e13cc90ee52 100644 --- a/docs/content/preview/yugabyte-voyager/_index.md +++ b/docs/content/preview/yugabyte-voyager/_index.md @@ -23,7 +23,7 @@ Use YugabyteDB Voyager to manage end-to-end database migration, including cluste {{< sections/text-with-right-image title="Get Started" - description="Complete a simple migration in 15 minutes with our quick start guide, or install YugabyteDB Voyager on different operating systems." + description="Install YugabyteDB Voyager and perform an end-to-end offline migration with our quick start guide." imageTransparent=true buttonText="Quick start" buttonUrl="quickstart/" diff --git a/docs/content/preview/yugabyte-voyager/quickstart.md b/docs/content/preview/yugabyte-voyager/quickstart.md index f0d23baf9454..fae5b435ac76 100644 --- a/docs/content/preview/yugabyte-voyager/quickstart.md +++ b/docs/content/preview/yugabyte-voyager/quickstart.md @@ -13,7 +13,7 @@ type: docs showRightNav: true --- -This quick start guide walks you through migrating a PostgreSQL database to YugabyteDB using YugabyteDB Voyager with YugabyteDB Aeon as the target database. +This quick start guide describes the steps to perform an offline migration of a PostgreSQL database to YugabyteDB using YugabyteDB Voyager with YugabyteDB Aeon as the target database. ## Prerequisites @@ -27,9 +27,7 @@ Before you start, ensure that you have the following: ## Create a YugabyteDB Aeon cluster -1. Sign up for YugabyteDB Aeon: - - Go to [YugabyteDB Aeon](https://cloud.yugabyte.com). - - Click **Sign up** and create your account. +1. [Sign up](https://cloud.yugabyte.com) for YugabyteDB Aeon. 1. Create a cluster: - Log in to your YugabyteDB Aeon account. @@ -59,7 +57,7 @@ Create a database user and provide the user with READ access to all the resource CREATE USER ybvoyager PASSWORD 'password'; ``` -1. Grant permissions for migration. Use the [yb-voyager-pg-grant-migration-permissions.sql](../../reference/yb-voyager-pg-grant-migration-permissions/) script (in `/opt/yb-voyager/guardrails-scripts/` or, for brew, check in `$(brew --cellar)/yb-voyager@/`) to grant the required permissions as follows: +1. Grant permissions for migration. Use the [yb-voyager-pg-grant-migration-permissions.sql](../reference/yb-voyager-pg-grant-migration-permissions/) script (in `/opt/yb-voyager/guardrails-scripts/` or, for brew, check in `$(brew --cellar)/yb-voyager@/`) to grant the required permissions as follows: ```sql psql -h \ @@ -76,7 +74,9 @@ Create a database user and provide the user with READ access to all the resource ### Prepare target YugabyteDB Aeon database -1. Create a target database (optional - you can use the default `yugabyte` database): +1. Connect to your YugabyteDB Aeon cluster via [Cloud shell](../../yugabyte-cloud/cloud-connect/connect-cloud-shell/#connect-via-cloud-shell). + +1. In the `ysqlsh` prompt, create a target database (optional - you can use the default `yugabyte` database): ```sql -- Connect to your YugabyteDB Aeon cluster @@ -86,88 +86,70 @@ Create a database user and provide the user with READ access to all the resource CREATE DATABASE target_db; ``` -1. Create a user with [`yb_superuser`](../../../yugabyte-cloud/cloud-secure-clusters/cloud-users/#admin-and-yb-superuser) role using the following command: +1. Create a user with [`yb_superuser`](../../yugabyte-cloud/cloud-secure-clusters/cloud-users/#admin-and-yb-superuser) role using the following commands: ```sql CREATE USER ybvoyager PASSWORD 'password'; GRANT yb_superuser TO ybvoyager; ``` -1. Configure SSL connectivity - - 1. Create API key: - - In YugabyteDB Aeon, go to **Security** → **API Keys** - - Click **Create API Key** - - Enter a name and click **Create** - - Copy and save the API key securely - - 1. Download SSL certificates: - - In your cluster page, click **Connect** - - Under **Download certificates**, click **Download** - - Extract the certificates to a secure location on your machine +1. [Create an API key](../../yugabyte-cloud/managed-automation/managed-apikeys/#create-an-api-key) to enable authentication. - 1. **Note SSL certificate paths**: - - Root certificate: `ca.crt` - - Client certificate: `yugabyte.crt` - - Client key: `yugabyte.key` +1. [Download SSL certificates](../../yugabyte-cloud/cloud-secure-clusters/cloud-authentication/#download-your-cluster-certificate) to have Voyager connect to the target YugabyteDB database over SSL. -## Create export directory and configuration +## Create an export directory and configuration file for Voyager -1. **Create export directory**: +1. Create an [export directory](../migrate/migrate-steps/#create-an-export-directory) for yb-voyager as follows: -```bash -mkdir -p ~/voyager-migration/export-dir -cd ~/voyager-migration -``` + ```bash + mkdir -p $HOME//export-dir + ``` -2. **Copy configuration template**: +1. Copy the offline configuration template file to the export directory: -```bash -# Copy the offline migration template -cp /opt/yb-voyager/config-templates/offline-migration.yaml migration-config.yaml -``` + ```sh + cp /opt/yb-voyager/config-templates/offline-migration.yaml export-dir/migration-config.yaml + ``` -3. **Configure the migration file**: - -Edit `migration-config.yaml` with your specific values: - -```yaml -# Global settings -export-dir: /home/$(whoami)/voyager-migration/export-dir -log-level: info - -# Source database (PostgreSQL) -source: - db-type: postgresql - db-host: - db-port: 5432 - db-name: - db-schema: public - db-user: ybvoyager - db-password: 'your_postgresql_password' - -# Target database (YugabyteDB Aeon) -target: - db-host: - db-port: 5433 - db-name: target_db - db-user: ybvoyager - db-password: 'your_yugabytedb_password' - ssl-mode: require - ssl-cert: /path/to/yugabyte.crt - ssl-key: /path/to/yugabyte.key - ssl-root-cert: /path/to/ca.crt -``` +1. Edit the [configuration file](../reference/configuration-file/) `migration-config.yaml` to include only the export-dir, source, and target arguments: + + ```yaml + # Global settings + export-dir: + + # Source database (PostgreSQL) + source: + db-type: postgresql + db-host: + db-port: 5432 + db-name: + db-schema: public + db-user: ybvoyager + db-password: 'your_postgresql_password' + + # Target database (YugabyteDB Aeon) + target: + db-host: + db-port: 5433 + db-name: target_db + db-user: ybvoyager + db-password: 'your_yugabytedb_password' + ssl-mode: require + ssl-cert: /path/to/yugabyte.crt + ssl-key: /path/to/yugabyte.key + ssl-root-cert: /path/to/ca.crt + ``` ## Run migration assessment -Execute the migration assessment to get recommendations: +Execute the [migration assessment](../migrate/assess-migration/) to get recommendations: ```bash yb-voyager assess-migration --config-file migration-config.yaml ``` -This generates a detailed assessment report with: +The `assess-migration` command generates a detailed assessment report with: + - Schema complexity analysis - Data distribution recommendations - Cluster sizing suggestions @@ -175,125 +157,130 @@ This generates a detailed assessment report with: ## Review and address assessment recommendations -1. **Review the assessment report**: - - The report is saved in your export directory - - Open the HTML report in your browser - - Review recommendations for your specific workload + 1. Review the assessment report: + - The report is saved in your export directory + - Open the HTML report in your browser + - Review recommendations for your specific workload + + 1. Address recommendations in YugabyteDB Aeon: + - If the assessment suggests cluster resizing, adjust your cluster in Aeon + - Enable any recommended features in your cluster settings + - Note any schema changes recommended for optimal performance -2. **Address recommendations in YugabyteDB Aeon**: - - If the assessment suggests cluster resizing, adjust your cluster in Aeon - - Enable any recommended features in your cluster settings - - Note any schema changes recommended for optimal performance +## Migrate to YugabyteDB Aeon -## Export and analyze schema +Proceed with schema and data migration using the following steps: -1. **Export schema**: +### Export schema + +[Export the schema](../migrate/migrate-steps/#export-and-analyze-schema) from the source database: ```bash yb-voyager export schema --config-file migration-config.yaml ``` -2. **Analyze schema**: +### Analyze schema -```bash -yb-voyager analyze-schema --config-file migration-config.yaml -``` +1. [Analyze](../migrate/migrate-steps/#analyze-schema) the PostgreSQL schema dumped in the export schema step: + + ```bash + yb-voyager analyze-schema --config-file migration-config.yaml + ``` -3. **Review schema analysis report**: +1. Review schema analysis report in YugabyteDB Aeon: - Open the generated HTML report - Review any manual changes recommended - Make necessary modifications to the exported schema files if needed -## Import schema +### Import schema -Import the schema to your target YugabyteDB Aeon cluster: +[Import](../migrate/migrate-steps/#import-schema) the schema to your target YugabyteDB Aeon cluster: ```bash yb-voyager import schema --config-file migration-config.yaml ``` -## Export and import data +### Export data -1. **Export data from source**: +[Export data](../migrate/migrate-steps/#export-data) from source: ```bash yb-voyager export data --config-file migration-config.yaml ``` -2. **Import data to target**: +### Import data -```bash -yb-voyager import data --config-file migration-config.yaml -``` +1. [Import data](../migrate/migrate-steps/#import-data) to target: -3. **Monitor import progress**: + ```bash + yb-voyager import data --config-file migration-config.yaml + ``` -```bash -# Check import status -yb-voyager import data status --config-file migration-config.yaml -``` +1. Monitor import progress: + + ```bash + yb-voyager import data status --config-file migration-config.yaml + ``` -## Review import status in YugabyteDB Aeon +1. [Finalize schema](../migrate/migrate-steps/#finalize-schema-post-data-import) (if needed): -1. **Check the YugabyteDB Aeon UI**: - - Go to your cluster page - - Navigate to **Migrations** tab - - Review the import data status report - - Verify all tables and data have been imported successfully + ```bash + yb-voyager finalize-schema-post-data-import --config-file migration-config.yaml + ``` -## Validate migration +### Review import status in YugabyteDB Aeon -1. **Connect to your target database**: +1. In your YugabyteDB Aeon cluster page, click the **Migrations** tab. +1. Review the import data status report and verify that all tables and data have been imported successfully -```bash -psql -h -p 5433 -U ybvoyager -d target_db -``` +### Validate migration -2. **Verify data integrity**: +1. Connect to your target YugabyteDB Aeon cluster via [Cloud shell](/preview/yugabyte-cloud/cloud-connect/connect-cloud-shell/#connect-via-cloud-shell). -```sql --- Check table count -SELECT COUNT(*) FROM information_schema.tables WHERE table_schema = 'public'; +1. In the `ysqlsh` prompt, connect to your target database: --- Verify row counts for key tables -SELECT COUNT(*) FROM your_table_name; + ```bash + psql -h -p 5433 -U ybvoyager -d target_db + ``` --- Sample data verification -SELECT * FROM your_table_name LIMIT 10; -``` +1. Verify data integrity: -3. **Test application connectivity**: + ```sql + -- Check table count + SELECT COUNT(*) FROM information_schema.tables WHERE table_schema = 'public'; + + -- Verify row counts for key tables + SELECT COUNT(*) FROM your_table_name; + + -- Sample data verification + SELECT * FROM your_table_name LIMIT 10; + ``` + +1. Test application connectivity: - Update your application connection strings - Test basic CRUD operations - Verify application functionality -## Finalize migration +## End migration -1. **Finalize schema** (if needed): - -```bash -yb-voyager finalize-schema-post-data-import --config-file migration-config.yaml -``` - -2. **End migration**: +[Complete the migration](../migrate/migrate-steps/#end-migration) as follows: ```bash yb-voyager end migration --config-file migration-config.yaml \ --backup-schema-files true \ --backup-data-files true \ + --backup-log-files true \ --save-migration-reports true ``` ## What's next? -### Explore advanced features - -- **[Live Migration](../migrate/live-migrate/)**: Migrate without downtime -- **[Performance Tuning](../reference/performance/)**: Optimize migration speed -- **[Bulk Data Loading](../migrate/bulk-data-load/)**: Import from CSV files +- [Migration options](../migrate/live-migrate/): Perform offline or live migration without downtime +- [Performance tuning](../reference/performance/): Optimize migration speed +- [Bulk data loading](../migrate/bulk-data-load/): Import from CSV files ### Additional resources -- **[YugabyteDB Aeon Documentation](../../yugabyte-cloud/)**: Learn more about managing your cluster -- **[Voyager Troubleshooting](../voyager-troubleshoot/)**: Common issues and solutions -- **[Known Issues](../known-issues/)**: Limitations and workarounds +- [YugabyteDB Aeon documentation](../../yugabyte-cloud/): Learn more about managing your target cluster +- [Voyager Troubleshooting](../voyager-troubleshoot/): Common issues and solutions +- [Schema review workarounds](../known-issues/): Known issues and workarounds From b43cd5b9665decf4b5433a3f38dc1cf4a3acea9f Mon Sep 17 00:00:00 2001 From: aishwarya24 Date: Thu, 16 Oct 2025 15:11:07 -0400 Subject: [PATCH 3/6] removed extra line --- .../preview/yugabyte-voyager/reference/compare-performance.md | 2 -- 1 file changed, 2 deletions(-) diff --git a/docs/content/preview/yugabyte-voyager/reference/compare-performance.md b/docs/content/preview/yugabyte-voyager/reference/compare-performance.md index e2e17f948669..2dbf4e7f076d 100644 --- a/docs/content/preview/yugabyte-voyager/reference/compare-performance.md +++ b/docs/content/preview/yugabyte-voyager/reference/compare-performance.md @@ -183,5 +183,3 @@ yb-voyager compare-performance --target-db-password password \ --export-dir /dir/export-dir ``` - - From 1b547ac4de50407708cc5eb5d1df3c7bd6a62701 Mon Sep 17 00:00:00 2001 From: aishwarya24 Date: Thu, 16 Oct 2025 15:11:50 -0400 Subject: [PATCH 4/6] removed extra line --- .../preview/yugabyte-voyager/reference/compare-performance.md | 1 + 1 file changed, 1 insertion(+) diff --git a/docs/content/preview/yugabyte-voyager/reference/compare-performance.md b/docs/content/preview/yugabyte-voyager/reference/compare-performance.md index 2dbf4e7f076d..81c8a575799d 100644 --- a/docs/content/preview/yugabyte-voyager/reference/compare-performance.md +++ b/docs/content/preview/yugabyte-voyager/reference/compare-performance.md @@ -183,3 +183,4 @@ yb-voyager compare-performance --target-db-password password \ --export-dir /dir/export-dir ``` + From c44b23f3d0178d2bb7690534f1602e2508d80afb Mon Sep 17 00:00:00 2001 From: aishwarya24 Date: Fri, 17 Oct 2025 16:41:56 -0400 Subject: [PATCH 5/6] some edits --- .../yugabyte-voyager/install-yb-voyager.md | 44 ++++++++++++++++ .../yugabyte-voyager/migrate/migrate-steps.md | 52 +++++++++++++++++-- .../preview/yugabyte-voyager/quickstart.md | 8 +-- 3 files changed, 97 insertions(+), 7 deletions(-) diff --git a/docs/content/preview/yugabyte-voyager/install-yb-voyager.md b/docs/content/preview/yugabyte-voyager/install-yb-voyager.md index 4a8019957558..af5021d54418 100644 --- a/docs/content/preview/yugabyte-voyager/install-yb-voyager.md +++ b/docs/content/preview/yugabyte-voyager/install-yb-voyager.md @@ -44,6 +44,24 @@ The node where you'll run the yb-voyager command should: YugabyteDB Voyager consists of the yb-voyager command line executable. + + +
+
+ Install yb-voyager on a machine which satisfies the [Prerequisites](#prerequisites) using one of the following options:
+ +
+ +To install YugabyteDB Voyager via YugabyteDB Aeon, do the following: + +1. Create a YugabyteDB Aeon cluster as follows: + + 1. [Sign up](https://cloud.yugabyte.com) for YugabyteDB Aeon. + + 1. Create a cluster: + - Log in to your YugabyteDB Aeon account. + - Click **Create a Free cluster** on the welcome screen, or click **Add Cluster** on the **Clusters** page to open the **Create Cluster** wizard. + - Select **Sandbox** for testing or **Dedicated** for production. + - Enter a cluster name, choose your cloud provider (AWS or GCP) and region in which to deploy the cluster, then click **Next**. + - Click **Add Current IP Address** to allow connections from your machine, and click **Next**. + - Click **Download credentials**. The default credentials are for a database user named "admin". You'll use these credentials when connecting to your YugabyteDB database. + - Click **Create Cluster**. + +1. Install YugabyteDB Voyager on your machine as follows: + + 1. In your YugabyteDB Aeon cluster page, click **Migrations**, and select **Migrate Database**. + 1. In **Prepare Voyager**, choose your operating system, run the installation commands on your machine, and verify the installation. + +
+ + ## Collect diagnostics By default, yb-voyager captures a [diagnostics report](../reference/diagnostics-report/) using the YugabyteDB diagnostics service that runs each time you use the yb-voyager command. If you don't want to send diagnostics when you run yb-voyager, set the [--send-diagnostics flag](../reference/diagnostics-report/#configure-diagnostics-collection) to false. diff --git a/docs/content/preview/yugabyte-voyager/migrate/migrate-steps.md b/docs/content/preview/yugabyte-voyager/migrate/migrate-steps.md index c2c15c63ce7c..898d6211f905 100644 --- a/docs/content/preview/yugabyte-voyager/migrate/migrate-steps.md +++ b/docs/content/preview/yugabyte-voyager/migrate/migrate-steps.md @@ -193,7 +193,25 @@ target: Refer to the [offline-migration.yaml](https://github.com/yugabyte/yb-voyager/blob/{{< yb-voyager-release >}}/yb-voyager/config-templates/offline-migration.yaml) template for more information on the available global, source, and target configuration parameters supported by Voyager. -## Configure yugabyted UI +## Configure control plane + + + +
+
You can use [yugabyted UI](/preview/reference/configuration/yugabyted/) to view the migration assessment report, and to visualize and review the database migration workflow performed by YugabyteDB Voyager. @@ -212,10 +230,38 @@ Configure the yugabyted UI as follows: yugabyted-db-conn-string: postgresql://yugabyte:yugabyte@127.0.0.1:5433 ``` - {{< note title="Note" >}} + {{< note title="Note" >}} + +Don't include the `dbname` parameter in the connection string; the default `yugabyte` database is used to store the meta information for showing the migration in the yugabyted UI. + {{< /note >}} + +
+
+ +You can use [YugabyteDB Aeon](/preview/reference/configuration/yugabyted/) to view the migration assessment report, and to visualize and review the database migration workflow performed by YugabyteDB Voyager. + +Configure YugabyteDB Aeon as follows: + + 1. Start a YugabyteDB Aeon cluster. Refer to the steps described in [Create your Sandbox cluster](/preview/yugabyte-cloud/cloud-quickstart/#create-your-sandbox-cluster). Skip this step if you already have a YugabyteDB Aeon cluster as your [target database](#prepare-the-target-database). + + 1. To see the Voyager migration workflow details in the UI, set the following configuration parameters before starting the migration: + + ```yaml + ### Control plane type refers to the deployment type of YugabyteDB + control-plane-type: yugabyted aeon + + ### YSQL connection string + ### Provide the standard PostgreSQL connection parameters, including user name, host name, and port. For example, postgresql://yugabyte:yugabyte@127.0.0.1:5433 + yugabyted-db-conn-string: postgresql://yugabyte:yugabyte@127.0.0.1:5433 + ``` + + {{< note title="Note" >}} Don't include the `dbname` parameter in the connection string; the default `yugabyte` database is used to store the meta information for showing the migration in the yugabyted UI. - {{< /note >}} + {{< /note >}} + +
+
## Assess migration diff --git a/docs/content/preview/yugabyte-voyager/quickstart.md b/docs/content/preview/yugabyte-voyager/quickstart.md index fae5b435ac76..7bcb3e423560 100644 --- a/docs/content/preview/yugabyte-voyager/quickstart.md +++ b/docs/content/preview/yugabyte-voyager/quickstart.md @@ -13,7 +13,7 @@ type: docs showRightNav: true --- -This quick start guide describes the steps to perform an offline migration of a PostgreSQL database to YugabyteDB using YugabyteDB Voyager with YugabyteDB Aeon as the target database. +This quick start guide describes the steps to perform an offline migration of a PostgreSQL database to YugabyteDB using YugabyteDB Voyager with your target database in YugabyteDB Aeon. ## Prerequisites @@ -167,7 +167,7 @@ The `assess-migration` command generates a detailed assessment report with: - Enable any recommended features in your cluster settings - Note any schema changes recommended for optimal performance -## Migrate to YugabyteDB Aeon +## Migrate to a YugabyteDB Aeon cluster Proceed with schema and data migration using the following steps: @@ -261,7 +261,7 @@ yb-voyager export data --config-file migration-config.yaml - Test basic CRUD operations - Verify application functionality -## End migration +### End migration [Complete the migration](../migrate/migrate-steps/#end-migration) as follows: @@ -275,7 +275,7 @@ yb-voyager end migration --config-file migration-config.yaml \ ## What's next? -- [Migration options](../migrate/live-migrate/): Perform offline or live migration without downtime +- [Migration options](../migrate/): Perform offline or live migration without downtime - [Performance tuning](../reference/performance/): Optimize migration speed - [Bulk data loading](../migrate/bulk-data-load/): Import from CSV files From 66d63d9b94e2dfc4fd4caf90c64cff8630ab5aad Mon Sep 17 00:00:00 2001 From: aishwarya24 Date: Fri, 24 Oct 2025 10:25:10 -0400 Subject: [PATCH 6/6] other config params --- docs/content/preview/yugabyte-voyager/quickstart.md | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/docs/content/preview/yugabyte-voyager/quickstart.md b/docs/content/preview/yugabyte-voyager/quickstart.md index 7bcb3e423560..8d3b6d3c567e 100644 --- a/docs/content/preview/yugabyte-voyager/quickstart.md +++ b/docs/content/preview/yugabyte-voyager/quickstart.md @@ -116,6 +116,11 @@ Create a database user and provide the user with READ access to all the resource ```yaml # Global settings export-dir: + apiKey: + accountId: // This will be autofilled in YugabyteDB Aeon + projectId: // This will be autofilled in YugabyteDB Aeon + clusterId: // This will be autofilled in YugabyteDB Aeon + domain: // This will be autofilled in YugabyteDB Aeon # Source database (PostgreSQL) source: