Docs 菜单
Docs 主页
/
MongoDB Ops Manager
/ /

查询备份快照

在此页面上

  • Considerations
  • 先决条件
  • 查询备份(使用隧道进行连接)
  • 查询备份(手动处理 TLS 身份验证)
  • 后续步骤

Ops Manager 提供 可查询备份。使用此功能,您可以更快速地查询特定的备份快照。您可以使用可查询备份执行以下操作:

  • 恢复 MongoDB 部署中的部分数据。

  • 将以前版本的数据与当前数据进行比较。

  • 通过比较多个快照中的数据,确定恢复系统的最佳时间点。

Ops Manager 将这些可查询快照预配为只读 MongoDB 实例。具体来说,Ops Manager 使用所选快照存储中的数据启动 mongod

重要

默认,这些实例的可用时间最长为24小时。 您可以使用 Expiration (Hours)配置持续时间。 有关其他可查询备份设置,请参阅可查询快照配置。

无法对可查询快照执行以下操作:

如果您将命名空间筛选器应用于快照,则无法查询该快照。

如果快照在 文件系统存储 中进行了 压缩 ,则无法查询快照内容。

如果想查询文件系统存储上的快照,需要创建禁用压缩的新文件系统存储。

与这些实例的连接通过TLS / SSL进行,并且需要x。 509身份验证。 MongoDB Ops Manager提供:

  • 一个可执行文件,用于创建处理连接的隧道,包括客户端TLS / SSL和 x. 509身份验证。

    请求通过隧道路由。 隧道确保请求与正确的 mongod 实例通信。

  • x.509 证书,如果您想手动处理连接细节,包括 TLS/SSL 和 x.509 身份验证。

    请求通过 Web 服务器进来,该服务器充当 mongod 的代理。

如果启用了多区域备份,则会在集群级别禁用可查询备份,以防止跨区域数据传输。 您可以将集群成员(例如分片和配置服务器)关联到不同的部署区域。 这使MongoDB Ops Manager能够通过配置服务器的 bqProxyEndpoint 路由所有集群级查询。 要在集群级别启用可查询备份,请在/opt/mongodb/mms/conf/conf-mms.properties文件中将mms.backup.enableClusterLevelMultiRegionQueryable设立为true 。 默认,此应用设置的值为false

注意

直接查询分片或配置服务器不会导致跨区域的任何数据传输。

如果为分片集群启用区域备份,则必须逐个分片启动可查询恢复作业,以确保区域数据隔离性。 由于部署区域绑定到单个分片而不是分分片的集群,因此当您在分片分片集群级别启动恢复作业时, MongoDB Ops Manager无法保证数据隔离性性。

重要

使用最新版本的MongoDB Database Tools ,其中包括mongodumpmongorestore 。 使用最新版本的mongosh

旧版本的mongodump存在一个问题,可能会导致集合选项中的键按错误顺序转储。 要了解更多信息,请参阅 工具 -3411 。

如果您运行的是 MongoDB Enterprise Edition 4.2.9 或更高版本,则可以使用 Ops Manager的本地模式对加密快照进行查询。

您可以使用运行 MongoDB3.2 或更高版本的 CSRS 查询从 副本集 或 分片集群 创建的快照。

为了使可查询备份成功,作为恢复目标的 MongoDB 实例必须运行兼容的 MongoDB 版本。下表列出了每种部署类型和 MongoDB 版本的兼容性要求。

快照数据 MongoDB 版本
目标数据库的兼容 MongoDB 版本
平台
4.4.x
4.4.0 Enterprise 或更高版本
Any
6.0 .x
6.0.0 Enterprise 或更高版本
Any
5.0 .x
5.0.0 Enterprise 或更高版本
Any
4.4.x
4.4.0 Enterprise 或更高版本
Any
4.0.x
4.0.0 Enterprise 或更高版本
Any
3.6.x
3.6.5 Enterprise 或更高版本
Any
3.4.x
3.4.11 Enterprise 或更高版本
Windows
3.4.x
3.4.2 Enterprise 或更高版本
Linux
快照数据 MongoDB 版本
目标数据库的兼容 MongoDB 版本
平台
4.4.x
4.4.0 Enterprise 或更高版本
Any
6.0 .x
6.0.0 Enterprise 或更高版本
Any
5.0 .x
5.0.0 Enterprise 或更高版本
Any
4.4.x
4.4.0 Enterprise 或更高版本
Any
4.0.x
4.0.0 Enterprise 或更高版本
Any
3.6.x
3.4.11 Enterprise 或更高版本
Windows
3.6.x
3.4.2 Enterprise 或更高版本
Linux
3.4.x
3.4.11 Enterprise 或更高版本
Windows
3.4.x
3.4.2 Enterprise 或更高版本
Linux
3.2
3.4.11 Enterprise 或更高版本
Windows
3.2 .x
3.4.2 Enterprise 或更高版本
Linux

重要

传输层安全 性的完整描述 , 公钥基础设施, X。509 证书和 证书颁发机构 超出了本教程的范围。本教程假定您已了解TLS并可访问权限有效的 X. 509证书。

Ops Manager 需要一个单独的 PEM 文件来验证和授权使用可查询备份。该 PEM 文件:

PEM 文件至少包括以下内容:

  • 服务器证书/密钥对和

  • 证书颁发机构证书

这些对会合并在一起以创建一个 PEM 文件,供可查询备份使用。该对有以下要求:

证书颁发机构必须签署要在 PEM 文件中使用的任何其他证书和密钥。证书颁发机构可以是以下机构之一:

您选择的证书颁发机构必须签署此服务器证书。

服务器证书/密钥对的公用名称设置取决于 Ops Manager 部署使用的主机数量:

  • 对于单个 Ops Manager 主机,该对中的主题备用名称(或者,如果没有 SAN,则为通用名称)必须与 Ops Manager 主机的 FQDN 匹配。

  • 为了实现高度可用性,对中的 SAN(如果没有 SAN,则为通用名称)必须与负载均衡器 URL FQDN 相匹配。

连接服务器证书/密钥对和证书链以创建代理服务器 PEM 密钥。

对于可查询的备份主机,您必须使用Proxy Server PEM File设置指定 PEM 文件(其中包含公钥证书及其关联的私钥)的位置。 如果尚未设置可查询备份设置:

  1. 单击右上角的 Admin 。 在 Admin 屏幕上,单击 General Ops Manager Config Backup

  2. 滚动到Queryable Snapshot Configuration Proxy Server PEM File并指定隧道或客户端可用于连接到可查询的 mongod 实例的 。

    如果文件已加密,请指定Proxy Server PEM File Password

  3. 可选。根据需要更新其他可查询快照设置。有关设置的说明,请参阅可查询快照配置

    注意

    如果要更改以下任何设置,则必须重新启动 Web 服务器:

应用服务器要求 27700-27719 端口处于打开状态,以便与可查询备份快照进行通信。

如果使用负载均衡器,则它必须通过 Proxy Server Port 中的值传递 TCP 连接。

要了解有关端口要求的详情,请参阅防火墙配置

要查询分片集群的快照,备份守护进程至少需要一个工作线程用于配置服务器,每个工作线程用于每个分片,以及一个工作线程用于mongos实例。

要查询副本集的快照,备份守护程序需要至少一个副本集的工作线程。

示例,如果您使用 1分片路由器 ( 分片 ) 从 3-分片集群恢复可查询备份, mongos需要此值至少为 5

  • 每个分片 1 个 (3) +

  • 1 用于配置服务器 (1) +

  • 1 表示 mongos

当可查询备份开始时,备份守护程序会启动 5 个或更多工作线程来管理这些组件。

托管可查询备份的 的 FQDN mongod必须与 页面找到的 FQDN 相匹配。Daemons要查找该主机名,请单击Admin链接,然后单击BackupDaemons

如果 Ops Manager 可以连接互联网,请将 Backup Versions Auto Download Enterprise Builds 设置为TRUE。可查询备份需要 MongoDB Enterprise。

注意

该隧道负责处理连接实例的安全性(TLS/SSL 和 x.509 身份验证)。

1

对于要查询其备份的部署,请单击Options列下的省略号按钮并选择Query

您还可以单击部署以查看其快照,然后单击 Actions(操作)列下的Query(查询)按钮。

2
  1. 选择要查询的快照,然后单击 Next

  2. Start 查询快照的进程。您将收到双因素验证的提示。

  3. 选择 Backup Tunnel 作为与可查询快照的连接方法。

  4. 选择您的平台并进行下载。

  5. 解压缩下载的文件。

    注意

    等待挂载可查询快照,然后再继续。 快照挂载时间取决于快照的大小。 导航到Continuous Backup并选择Restore History标签页,验证快照是否已挂载。 挂载快照后, Status列会报告挂载操作的日期和时间。

  6. 打开终端或命令提示符,转到解压缩的<隧道>目录。运行可执行文件,启动隧道。

    隧道的默认端口是 27017。要更改端口,请使用 --local 标志,如下例所示:

    ./<tunnel executable> --local localhost:27020

    注意

    如果您更改端口,则必须在连接时包含端口信息。

    要查看可传递到隧道的完整选项列表,请使用 -h 选项运行隧道可执行文件:

    ./<tunnel executable> -h
  7. 使用mongosh或MongoDB驾驶员通过隧道连接到备份。

    • 如果从运行隧道的同一台计算机进行本地连接,则无需指定连接字符串或主机信息。 否则,请为运行隧道的计算机指定连接字符串或主机信息。

    • 如果您已变更通道监听的端口,则必须在连接时指定端口信息。

提示

查询完此快照后,可以终止可查询实例:

  1. 转到 Restore History 并将鼠标悬停在部署项的 Status(状态)列上。

  2. 单击 Cancel(连接)。

注意

要查找可查询备份mongod实例的日志文件,请导航到备份守护程序托管的头部目录中的以下路径:

<daemon-hostname>:/<headDirectory>/queryable/<backupId>/mongod.log

重要

恢复使用 AES256-GCM 加密的快照后轮换主密钥

如果恢复 Ops Manager 使用 AES256-GCM 加密的加密快照,请在完成恢复后轮换主密钥

注意

客户端 X.509 证书的有效期与可查询实例 Expiration (Hours) 的有效期相同,默认为 24 小时。

1

如果您想查询某个部署的备份,在 Options 列下单击 ,然后选择 Query

您还可以单击部署以查看其快照,然后单击 Actions(操作)列下的Query(查询)按钮。

2
  1. 选择要查询的快照,然后单击 Next

  2. Start 查询快照的进程。如果提示输入密码,请输入密码进行验证。

  3. 选择 Connect Manually 作为与可查询快照的连接方法。

  4. 下载 X.509 客户端 PEM 文件。

  5. 下载证书颁发机构 PEM 文件。

    注意

    等待挂载可查询快照,然后再继续。 快照挂载时间取决于快照的大小。 导航到Continuous Backup并选择Restore History标签页,验证快照是否已挂载。 挂载快照后, Status列会报告挂载操作的日期和时间。

  6. 使用mongosh或MongoDB驾驶员连接到可查询备份托管。 要进行连接,必须指定主机名和端口、 TLS选项以及 X. 509证书。

    例子

    如果使用mongosh连接到实例:

    mongosh my-queryable-backup-host.mongodb.com:27217 \
    --tls --tlsCertificateKeyFile <client certificate> \
    --tlsCAFile mms-backup-ca.pem

提示

查询完此快照后,可以终止可查询实例:

  1. 转到 Restore History 并将鼠标悬停在部署项的 Status(状态)列上。

  2. 单击 Cancel(连接)。

重要

恢复使用 AES256-GCM 加密的快照后轮换主密钥

如果恢复 Ops Manager 使用 AES256-GCM 加密的加密快照,请在完成恢复后轮换主密钥

要使用可查询备份 MongoDB 实例恢复数据库或集合,请参阅“从可查询备份中恢复数据库或集合”。

后退

副本集(Replica Set)