Azure PostgreSQL 迁移(评估)扩展预览版

Azure Data Studio 的 Azure PostgreSQL 迁移扩展可用于评估和获取适当大小的 Azure 建议。

使用 Azure Data Studio 的 Azure PostgreSQL 迁移扩展的主要好处在于:

  • 响应式用户界面提供端到端迁移体验,从迁移就绪评估、SKU 建议(基于性能数据)开始。
  • 增强的评估机制可以评估 PostgreSQL 实例,确定准备迁移到 Azure Database for PostgreSQL 灵活服务器目标的数据库。
  • 一种 SKU 建议引擎,用于收集来自源 PostgreSQL 实例的性能数据,基于 Azure Database for PostgreSQL 灵活服务器目标生成适当大小的 SKU 建议。

Azure Data Studio 中的 Azure PostgreSQL 迁移扩展可帮助你评估要迁移到 Azure Database for PostgreSQL 灵活服务器的 PostgreSQL 工作负载。 该扩展使用正确大小的迁移建议确定适当的 PostgreSQL 目标。

先决条件

安装 Azure Data Studio 扩展

按照以下步骤在 Azure Data Studio 中安装 Azure PostgreSQL 迁移扩展。

  1. 在 Azure Data Studio 中打开扩展管理器。 在“视图”菜单中选择扩展图标或“扩展”。

  2. 在搜索栏中键入“Postgresql 迁移”。

  3. 选择 Azure PostgreSQL 迁移扩展并查看其详细信息。

  4. 选择“安装” 。

    1. 安装后,还会安装 PostgreSQL 扩展。
    2. 安装后,还会安装 .NET 6。

Screenshot to show a search of the extension.

连接到 PostgreSQL 实例

安装评估扩展后,下一步是连接到 PostgreSQL 服务器实例,收集来自 PostgreSQL 服务器实例的元数据信息,并生成评估报表。

  1. 在菜单栏中转到连接图标。

    Screenshot of the new connection menu bar.

  2. 填写“连接详细信息”中的字段。

    1. 在“连接类型”字段中选择“PostgreSQL”。
    2. 在“服务器名称”字段中,键入 PostgreSQL 服务器名称。
    3. 在“身份验证类型”中,选择“密码”。
    4. 在“用户名”字段中,提供数据库用户名
    5. 在“密码”字段中提供数据库密码。
    6. 然后选择“高级...”
      1. 在“服务器”部分下,提供端口号。
      2. 然后选择“确定”。

    Screenshot of the connection details.

  3. 选择“连接” 。

  4. 现在,连接详细信息菜单中会显示一个新连接。

  5. 右键单击 PostgreSQL 连接并选择“管理”。

    Screenshot showing the Manage database screen.

运行评估

连接到 Azure Data Studio 中的 PostgreSQL 实例后,即可开始运行评估。

在“常规”部分下,选择“Azure PostgreSQL 迁移”,然后选择“运行新评估”。

Screenshot showing the Migration Assessment database screen.

完成评估需要三个步骤。

  • 用于评估的数据库
  • 评估参数
  • 查看评估结果

1. 用于评估的数据库

选择要针对 Azure Database for PostgreSQL 灵活服务器迁移进行评估的数据库,然后选择“下一步”。

Screenshot of view databases.

2. 评估参数

在评估参数中,用户可以选择 Azure Database for PostgreSQL 灵活服务器的目标版本,从而使用所选的 Azure Database for PostgreSQL 灵活服务器目标版本来评估源 PostgreSQL 实例。 用户可选择的目标版本将始终大于或等于源 PostgreSQL 版本。 例如,如果源 PostgreSQL 实例版本为 13,则显示的目标版本为 13、14 和 15。

SKU 建议功能支持从托管数据库的源 PostgreSQL 实例收集性能数据,并根据收集的数据推荐大小适当的 Azure Database for PostgreSQL 灵活服务器 SKU。 该功能提供计算级别和数据大小建议。

选择要为目标受众提供 SKU 建议的方式。 此步骤需要 PostgreSQL 服务器实例的性能数据。

有两个选项可用于收集性能数据,以接收要迁移的数据库的目标建议。

  • 自动收集性能数据
  • 输入性能数据参数

自动收集性能数据

注意

在选择数据库之前,需要执行 SKU 建议的自动收集权限。

用户需要对 pg_read_file() function 执行权限。

GRANT EXECUTE ON FUNCTION pg_read_file(text) TO <<username>>;

应向用户授予 role pg_read_server_files

GRANT pg_read_server_files TO <<username>>;

如果环境支持自动收集性能数据,则这是默认选项

选择自动性能数据收集,以接收要迁移的数据库的目标建议。

按如下所示填写 SKU 建议参数中的字段。

  • 持续时间 - 输入要运行数据收集的时间。

    注意

    建议收集工作负载高峰期的评估数据。 数据收集应持续 24 小时,因为这提供了以更高的置信度收集数据的时间。 在数据收集过程中,需要打开评估向导。

  • 比例因子 - 输入值 0.2-2,以在峰值性能期间扩展。

    注意

    评估期间的比例因子是在 PostgreSQL(vCore、内存和存储)的当前利用率数据的基础上应用的缓冲。 比例因子可用于解释季节性使用情况、短期性能历史记录以及未来使用量的增加。

  • 百分位利用率 - 考虑用于调整 Azure 目标大小的性能样本集的百分位值。

提供值后,选择“评估”。

Screenshot of automatically collecting data.

输入性能数据参数

根据环境,可能必须手动提供数据才能执行评估。 因此,可以使用“输入性能数据参数”选项来输入手动提供评估所需的值。

按如下所示填写性能参数中的字段。

  • vCores – 服务器中可用的逻辑核心数。
  • 内存 (GB) - 服务器中可用的总内存。
  • 存储 (GB) – PostgreSQL 服务器实例使用的存储总量。
  • IOPS – PostgreSQL 服务器实例每秒的输入/输出操作数。

按如下所示填写建议参数中的字段。

  • 比例因子 - 输入值 0.2-2,以在峰值性能期间扩展。

    注意

    评估期间的比例因子是在 PostgreSQL(vCore、内存和存储)的当前利用率数据的基础上应用的缓冲。 比例因子可用于解释季节性使用情况、短期性能历史记录以及未来使用量的增加。

填写参数后,选择“评估”。

Screenshot of entering performance data.

有关 SKU 建议的详细信息,请查看 SKU 建议

3. 查看评估结果

评估完成后,将生成一个合并输出。

  • 顶部的卡表示 Azure 中建议的 SKU。
    • 目标平台 - 目前,Azure Database for PostgreSQL 灵活服务器上执行和支持评估。
    • 建议的配置 - 根据性能指标,建议使用 Azure Database for PostgreSQL 灵活服务器中可用的 SKU。 有关 SKU 建议的详细信息,请查看 SKU 建议
    • 数据收集状态 – 显示已完成的周期数和数据收集状态。
      • 有四种状态:“正在进行”、“已完成”、“已停止”、“不适用”(仅适用于“输入性能数据参数”数据收集)。

        注意

        在“数据收集状态”卡中,用户可以随时开始或停止收集。

Screenshot of configuration cards.

用户可以选择显示 PostgreSQL 实例摘要和迁移就绪情况的实例名称。 用户可以浏览不同的服务器参数和功能,了解参数的使用,并了解解决警告的建议。

用户可以选择迁移就绪状态旁边的值,以确定哪个数据库处于什么状态。

用户可以选择相应的数据库,了解阻碍因素和警告,并浏览迁移就绪情况摘要(如果数据库处于“未就绪”、“条件就绪”或“迁移到 Azure 就绪状态“)。

用户可以通过选择“保存评估”操作将评估报告保存到计算机上以供脱机查看。

Screenshot to show how to save the assessment.

迁移就绪状态

  • 未就绪 - 无法将 PostgreSQL 实例 (DB) 迁移到 Azure。 例如,如果本地服务器的磁盘存储超过 64 TB,Azure 将无法托管该服务器。 请遵循修正指南,在迁移之前解决问题。
  • 条件就绪 - 可以按照 ADS 中提供的建议将 PostgreSQL 实例 (DB) 迁移到 Azure。 例如,Azure PostgreSQL 灵活服务器不支持运行本地实例的最新排序规则版本。 在将这些实例迁移到 Azure 之前,必须谨慎。 若要解决任何就绪性问题,请遵循修正指南。 在此示例中,用户需要重新生成索引。
  • 就绪 - 无需进行任何更改即可将 PostgreSQL 实例 (DB) 迁移到 Azure。

SKU 建议

SKU 建议功能支持从托管数据库的源 PostgreSQL 实例收集性能数据,并根据收集的数据推荐大小适当的 Azure Database for PostgreSQL 灵活服务器。 该功能提供计算级别和数据大小建议。

SKU 推荐将评估各项性能指标,如 vCore、内存、IOPS 和存储。 根据使用情况和配置数据,推荐器将提供适当的目标和服务层级。

查看置信度分级

建议的配置根据数据收集和 24 小时运行时间提供置信度评级。 评级从一星(最低)到五星(最高)。

置信度评级有助于估计评估中大小适当的建议的可靠性。

24 小时数据收集运行时的置信度评级如下所示。

数据点可用性 大致运行时间 置信度分级
1%-20% 10 分钟 - 5 小时 1 星
21%-40% > 5 小时 - 10 小时 2 星
41%-60% > 10 小时 - 14 小时 3 星
61%-80% > 14 小时 - 19 小时 4 星
81%-100% > 19 小时 - 24 小时 5 星

数据收集过程完成后,可以在顶部的“建议的详细信息”卡中选择“查看详细信息”选项,以查看“建议的详细信息”屏幕。 可以查看“建议原因”和“源”属性。

建议原因列出了 CPU、内存、存储和 IOPS 要求,并将其与 Azure Database for PostgreSQL 灵活服务器目标进行比较。

源属性列出了使用的性能参数和实际性能参数。 “已使用”信息说明了源 PostgreSQL 实例的使用情况。 “实际”信息说明了源 PostgreSQL 实例可以使用的总利用率。

Screenshot of View details screen.

更改评估路径

如果要将评估和性能数据保存在其他路径中,可以在扩展设置下编辑评估路径。

  1. 转到扩展市场并搜索 Azure PostgreSQL 迁移。
  2. 选择“管理”图标,然后选择“扩展”设置。
  3. 在“PostgreSQL 评估:评估路径”下提供新的评估路径。

Screenshot of extension settings.

疑难解答

若要排查任何 Azure PostgreSQL 迁移扩展问题,应从生成的日志中查找有关错误和警告的详细信息。

日志

该扩展将错误、警告和其他诊断日志存储在默认日志目录中:

  • Windows - C:\Users\<username>\.postgresmigration\logs\
  • Linux - ~/.postgresmigration/logs
  • macOS - /Users/<username>/.postgresmigration/logs

注意

默认情况下,该扩展会存储最后 7 个日志文件。

有关排查问题的详细信息,请访问排查 Azure PostgreSQL 迁移扩展错误

已知问题和限制

  • 任何 PostgreSQL PaaS 服务都不支持 SKU 建议的自动收集。
  • 自动收集仅适用于 Linux。
  • 自动收集仅适用于 PostgreSQL 版本 11 及更高版本。

从 Microsoft 支持部门获取帮助

如果使用 PostgreSQL 迁移扩展遇到数据库迁移问题或错误,可以提出支持请求来获取 Microsoft 支持部门的帮助。

选择扩展上面部分的“新建支持请求”按钮。 它会自动将你带到 Azure 门户,你可以在其中填写详细信息,然后提交支持请求。

可以提交改进想法/建议和其他反馈,包括 Azure 社区论坛 - Azure 数据库迁移服务中的 bug。

注意

如果有关于改进扩展的任何建议或反馈,也可以使用“反馈”按钮或向产品组发送电子邮件

后续步骤