Skip to content

Commit 8147605

Browse files
authored
Merge pull request #280857 from paulth1/migration-service-batch1
[AQ] edit pass: Migration service batch1
2 parents d1e33ec + 7550c23 commit 8147605

File tree

3 files changed

+83
-91
lines changed

3 files changed

+83
-91
lines changed

articles/postgresql/migrate/migration-service/concepts-known-issues-migration-service.md

Lines changed: 18 additions & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
---
2-
title: "Migration service - known issues and limitations"
3-
description: Providing the limitations and known issues of the migration service in Azure Database for PostgreSQL.
2+
title: "Migration service - Known issues and limitations"
3+
description: This article provides the limitations and known issues of the migration service in Azure Database for PostgreSQL.
44
author: apduvuri
55
ms.author: adityaduvuri
66
ms.reviewer: maghan
@@ -19,49 +19,35 @@ This article describes the known issues and limitations associated with the migr
1919

2020
Here are common limitations that apply to migration scenarios:
2121

22-
- You can have only one active migration or validation to your Flexible server.
23-
24-
- The migration service only supports users and roles migration when the source is Azure Database for PostgreSQL single server.
25-
22+
- You can have only one active migration or validation to your flexible server.
23+
- The migration service only supports migration for users and roles when the source is Azure Database for PostgreSQL - Single Server.
2624
- The migration service shows the number of tables copied from source to target. You must manually check the data and PostgreSQL objects on the target server post-migration.
27-
28-
- The migration service only migrates user databases, not system databases such as template_0 and template_1.
29-
30-
- The migration service doesn't support moving TIMESCALEDB, POSTGIS_TOPOLOGY, POSTGIS_TIGER_GEOCODER, PG_PARTMAN extensions from source to target.
31-
32-
- You can't move extensions not supported by the Azure Database for PostgreSQL – Flexible server. The supported extensions are listed in [Extensions - Azure Database for PostgreSQL](/azure/postgresql/flexible-server/concepts-extensions).
33-
34-
- User-defined collations can't be migrated into Azure Database for PostgreSQL – flexible server.
35-
36-
- You can't migrate to an older version. For instance, you can't migrate from PostgreSQL 15 to Azure Database for PostgreSQL version 14.
37-
25+
- The migration service migrates only user databases, not system databases, such as template_0 and template_1.
26+
- The migration service doesn't support moving TIMESCALEDB, POSTGIS_TOPOLOGY, POSTGIS_TIGER_GEOCODER, or PG_PARTMAN extensions from source to target.
27+
- You can't move extensions not supported by Azure Database for PostgreSQL - Flexible Server. The supported extensions are listed in [Extensions - Azure Database for PostgreSQL](/azure/postgresql/flexible-server/concepts-extensions).
28+
- User-defined collations can't be migrated into Azure Database for PostgreSQL - Flexible Server.
29+
- You can't migrate to an older version. For instance, you can't migrate from Azure Database for PostgreSQL version 15 to version 14.
3830
- The migration service only works with preferred or required SSLMODE values.
39-
4031
- The migration service doesn't support superuser privileges and objects.
41-
42-
- Azure Database for PostgreSQL - Flexible Server does not support the creation of custom tablespaces due to superuser privilege restrictions. During migration, data from custom tablespaces in the source PostgreSQL instance is migrated into the default tablespaces of the target Azure Database for PostgreSQL - Flexible Server.
32+
- Azure Database for PostgreSQL - Flexible Server doesn't support the creation of custom tablespaces because of superuser privilege restrictions. During migration, data from custom tablespaces in the source PostgreSQL instance is migrated into the default tablespaces of the target Azure Database for PostgreSQL - Flexible Server instance.
4333

4434
- The following PostgreSQL objects can't be migrated into the PostgreSQL flexible server target:
35+
4536
- Create casts
4637
- Creation of FTS parsers and FTS templates
4738
- Users with superuser roles
4839
- Create TYPE
4940

5041
- The migration service doesn't support migration at the object level, that is, at the table level or schema level.
42+
- The migration service is unable to perform migration when the source database is Azure Database for PostgreSQL - Single Server with no public access or is an on-premises/AWS using a private IP, and the target Azure Database for PostgreSQL - Flexible Server instance is accessible only through a private endpoint.
43+
- Migration to burstable SKUs isn't supported. Databases must first be migrated to a nonburstable SKU and then scaled down if needed.
44+
- The Migration Runtime Server is designed to operate with the default DNS servers/private DNS zones, for example, `privatelink.postgres.database.azure.com`. Custom DNS names/DNS servers aren't supported by the migration service when you use the Migration Runtime Server feature. When you're configuring private endpoints for both the source and target databases, it's imperative to use the default private DNS zone provided by Azure for the private link service. The use of custom DNS configurations isn't yet supported and might lead to connectivity issues during the migration process.
5145

52-
- The migration service is unable to perform migration when the source database is Azure Database for PostgreSQL single server with no public access or is an on-premises/AWS using a private IP, and the target Azure Database for PostgreSQL Flexible Server is accessible only through a private endpoint.
53-
54-
- Migration to burstable SKUs isn't supported; databases must first be migrated to a non-burstable SKU and then scaled down if needed.
55-
56-
- The Migration Runtime Server is specifically designed to operate with the default DNS servers/private DNS zones i.e., **privatelink.postgres.database.azure.com**. Custom DNS names/DNS servers are not supported by the migration service when utilizing the migration runtime server feature. When configuring private endpoints for both the source and target databases, it is imperative to use the default private DNS zone provided by Azure for the private link service. The use of custom DNS configurations is not yet supported and may lead to connectivity issues during the migration process.
57-
58-
## Limitations migrating from Azure Database for PostgreSQL single server
59-
60-
- Microsoft Entra ID users present on your source server aren't migrated to the target server. To mitigate this limitation, visit [Manage Microsoft Entra roles](../../flexible-server/how-to-manage-azure-ad-users.md) to manually create all Microsoft Entra users on your target server before triggering a migration. If Microsoft Entra users aren't created on target server, migration fail.
61-
62-
- If the target flexible server uses SCRAM-SHA-256 password encryption method, connection to flexible server using the users/roles on single server fails since the passwords are encrypted using md5 algorithm. To mitigate this limitation, choose the option MD5 for password_encryption server parameter on your flexible server.
46+
## Limitations migrating from Azure Database for PostgreSQL - Single Server
6347

64-
- Online migration makes use of [pgcopydb follow](https://pgcopydb.readthedocs.io/en/latest/ref/pgcopydb_follow.html) and some of the [logical decoding restrictions](https://pgcopydb.readthedocs.io/en/latest/ref/pgcopydb_follow.html#pgcopydb-follow) apply.
48+
- Microsoft Entra ID users present on your source server aren't migrated to the target server. To mitigate this limitation, see [Manage Microsoft Entra roles](../../flexible-server/how-to-manage-azure-ad-users.md) to manually create all Microsoft Entra users on your target server before you trigger a migration. If Microsoft Entra users aren't created on the target server, migration fails.
49+
- If the target flexible server uses the SCRAM-SHA-256 password encryption method, connection to a flexible server using the users/roles on a single server fails because the passwords are encrypted by using the md5 algorithm. To mitigate this limitation, choose the option `MD5` for the `password_encryption` server parameter on your flexible server.
50+
- Online migration makes use of [pgcopydb follow](https://pgcopydb.readthedocs.io/en/latest/ref/pgcopydb_follow.html), and some of the [logical decoding restrictions](https://pgcopydb.readthedocs.io/en/latest/ref/pgcopydb_follow.html#pgcopydb-follow) apply.
6551

6652
## Related content
6753

articles/postgresql/migrate/migration-service/concepts-migration-service-runtime-server.md

Lines changed: 31 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
---
2-
title: "Introduction of migration runtime server in Migration service in Azure Database for PostgreSQL"
3-
description: "Concepts about the migration runtime server in migration service Azure Database for PostgreSQL"
2+
title: "Migration Runtime Server in Azure Database for PostgreSQL"
3+
description: "This article discusses concepts about Migration Runtime Server with the migration service in Azure Database for PostgreSQL."
44
author: apduvuri
55
ms.author: adityaduvuri
66
ms.reviewer: maghan
@@ -9,50 +9,55 @@ ms.service: postgresql
99
ms.topic: conceptual
1010
---
1111

12-
# Migration Runtime Server with the migration service in Azure Database for PostgreSQL Preview
12+
# Migration Runtime Server with the migration service in Azure Database for PostgreSQL preview
1313

14-
The Migration Runtime Server is a specialized feature within the [migration service in Azure Database for PostgreSQL](concepts-migration-service-postgresql.md), designed to act as an intermediary server during migration. It's a separate Azure Database for PostgreSQL - Flexible Server instance that isn't the target server but is used to facilitate the migration of databases from a source environment that is only accessible via a private network.
14+
Migration Runtime Server is a specialized feature in the [migration service in Azure Database for PostgreSQL](concepts-migration-service-postgresql.md) that acts as an intermediary server during migration. It's a separate Azure Database for PostgreSQL - Flexible Server instance that isn't the target server. It's used to facilitate the migration of databases from a source environment that's only accessible via a private network.
1515

16-
The migration runtime server is helpful in scenarios where both the source PostgreSQL instances and the target Azure Database for PostgreSQL Flexible Server are configured to communicate over private endpoints or private IPs, ensuring that the migration occurs within a secure and isolated network space. The Migration Runtime Server handles the data transfer, connecting to the source PostgreSQL instance to retrieve data and then pushing it to the target server.
16+
Migration Runtime Server is helpful in scenarios where both the source PostgreSQL instances and the target Azure Database for PostgreSQL - Flexible Server instance are configured to communicate over private endpoints or private IPs. This arrangement ensures that the migration occurs within a secure and isolated network space. Migration Runtime Server handles the data transfer. It connects to the source PostgreSQL instance to retrieve data and then push it to the target server.
1717

18-
The migration runtime server is distinct from the target server and is configured to handle the data transfer process, ensuring a secure and efficient migration path.
18+
Migration Runtime Server is distinct from the target server and is configured to handle the data transfer process, ensuring a secure and efficient migration path.
1919

20-
:::image type="content" source="media/concepts-migration-service-runtime-server/private-endpoint-scenario.png" alt-text="Screenshot of migration runtime server.":::
20+
:::image type="content" source="media/concepts-migration-service-runtime-server/private-endpoint-scenario.png" alt-text="Screenshot that shows Migration Runtime Server.":::
2121

2222
## Supported migration scenarios with the Migration Runtime Server
2323

24-
The migration runtime server is essential for transferring data between different source PostgreSQL instances and the Azure Database for PostgreSQL - Flexible Server. It's necessary in the following scenarios:
24+
Migration Runtime Server is essential for transferring data between different source PostgreSQL instances and the Azure Database for PostgreSQL - Flexible Server instance. It's necessary in the following scenarios:
2525

26-
- When the source is an Azure Database for PostgreSQLSingle Server configured with a private endpoint and the target is an Azure Database for PostgreSQLFlexible Server with a private endpoint.
27-
- For sources such as on-premises databases, Azure VMs, or AWS instances that are only accessible via private networks, and the target Azure Database for PostgreSQL - Flexible Server with a private endpoint.
26+
- When the source is an Azure Database for PostgreSQL - Single Server configured with a private endpoint and the target is an Azure Database for PostgreSQL - Flexible Server with a private endpoint.
27+
- For sources such as on-premises databases, Azure virtual machines, or AWS instances that are only accessible via private networks and the target Azure Database for PostgreSQL - Flexible Server instance with a private endpoint.
2828

2929
## How do you use the Migration Runtime Server feature?
3030

31-
To use the Migration Runtime Server feature within the migration service in Azure Database for PostgreSQL, you can select the appropriate migration option either through the Azure portal during the setup or by specifying the `migrationRuntimeResourceId` in the JSON properties file during the migration create command in the Azure CLI. Here's how to do it in both methods:
31+
To use the Migration Runtime Server feature within the migration service in Azure Database for PostgreSQL, you have two migration options:
32+
33+
- Use the Azure portal during setup.
34+
- Specify the `migrationRuntimeResourceId` parameter in the JSON properties file during the migration create command in the Azure CLI.
35+
36+
Here's how to do it in both methods.
3237

3338
### Use the Azure portal
3439

35-
- Sign in to the Azure portal and access the migration service (from the target server) in the Azure Database for PostgreSQL instance.
36-
- Begin a new migration workflow within the service.
37-
- When you reach the "Select runtime server" tab, use the Migration Runtime Server by selecting "Yes."
38-
- Choose your Azure subscription and resource group and the location of the VNet-integrated Azure Database for PostgreSQLFlexible server.
39-
- Select the appropriate Azure Database for PostgreSQL Flexible Server to serve as your Migration Runtime Server.
40+
1. Sign in to the Azure portal and access the migration service (from the target server) in the Azure Database for PostgreSQL instance.
41+
1. Begin a new migration workflow within the service.
42+
1. When you reach the **Select runtime server** tab, select **Yes** to use Migration Runtime Server.
43+
1. Select your Azure subscription and resource group. Select the location of the virtual network-integrated Azure Database for PostgreSQL - Flexible Server instance.
44+
1. Select the appropriate Azure Database for PostgreSQL - Flexible Server instance to serve as your Migration Runtime Server instance.
4045

41-
:::image type="content" source="media/concepts-migration-service-runtime-server/select-runtime-server.png" alt-text="Screenshot of selecting migration runtime server.":::
46+
:::image type="content" source="media/concepts-migration-service-runtime-server/select-runtime-server.png" alt-text="Screenshot that shows selecting Migration Runtime Server.":::
4247

43-
### Use Azure CLI
48+
### Use the Azure CLI
4449

45-
- Open your command-line interface.
46-
- Ensure you have the Azure CLI installed and you're logged into your Azure account using az sign-in.
47-
- The version should be at least 2.62.0 or above to use the migration runtime server option.
48-
- The `az postgres flexible-server migration create` command requires a JSON file path as part of `--properties` parameter, which contains configuration details for the migration. Provide the `migrationRuntimeResourceId` in the JSON properties file.
50+
1. Open your command-line interface.
51+
1. Ensure that you have the Azure CLI installed and that you're signed in to your Azure account by using `az sign-in`.
52+
1. The version should be at least 2.62.0 or above to use the Migration Runtime Server option.
53+
1. The `az postgres flexible-server migration create` command requires a JSON file path as part of the `--properties` parameter, which contains configuration details for the migration. Provide the `migrationRuntimeResourceId` parameter in the JSON properties file.
4954

5055
## Migration Runtime Server essentials
5156

52-
- **Minimal Configuration**Despite being created from an Azure Database for PostgreSQL Flexible Server, the migration runtime server solely facilitates migration without the need for HA, backups, version specificity, or advanced storage features.
53-
- **Performance and Sizing**—The migration runtime server must be appropriately scaled to manage the workload, and it's recommended that you select an SKU equivalent to or greater than that of the target server.
54-
- **Networking** Ensure that the migration runtime server is appropriately integrated into the Virtual Network (virtual network) and that network security allows for secure communication with both the source and target servers. For more information visit [Network guide for migration service](how-to-network-setup-migration-service.md).
55-
- **Cleanup Post-Migration**After the migration is complete, the migration runtime server should be decommissioned to avoid unnecessary costs. Before deletion, ensure all data has been successfully migrated and that the server is no longer needed.
57+
- **Minimal configuration**: Despite being created from Azure Database for PostgreSQL - Flexible Server, Migration Runtime Server solely facilitates migration without the need for high availability, backups, version specificity, or advanced storage features.
58+
- **Performance and sizing**: Migration Runtime Server must be appropriately scaled to manage the workload. We recommend that you select an SKU equivalent to or greater than that of the target server.
59+
- **Networking**: Ensure that Migration Runtime Server is appropriately integrated into the virtual network and that network security allows for secure communication with both the source and target servers. For more information, see [Network guide for migration service](how-to-network-setup-migration-service.md).
60+
- **Post-migration cleanup**: After the migration is finished, Migration Runtime Server should be decommissioned to avoid unnecessary costs. Before deletion, ensure that all data was successfully migrated and that the server is no longer needed.
5661

5762
## Related content
5863

0 commit comments

Comments
 (0)