你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

使用 Azure 应用程序一致的快照工具进行备份

本文提供有关运行可用于 Azure NetApp 文件的 Azure 应用程序一致的快照工具的备份命令的指南。

介绍

使用 azacsnap -c backup 命令运行基于存储快照的备份。 此命令对数据卷上的数据库一致的存储快照和其他卷上的存储快照(没有任何数据库一致性设置)执行业务流程。

对于 DATA 卷,azacsnap 将准备用于存储快照的数据库,然后为所有配置的卷拍摄存储快照,最后告知数据库快照已完成。 它还将管理记录快照备份活动的任何数据库条目(例如 SAP HANA 备份目录)。

命令选项

-c backup 命令使用以下自变量:

  • --volume= 要创建快照的卷类型,此参数可能包含 dataotherall

    • data 对配置文件的 dataVolume 节中的卷创建快照。
      1. data 卷快照过程
        1. 将数据库置于备份模式
        2. 拍摄配置文件 "dataVolume" 节中列出的卷的快照。
        3. 使数据库退出备份模式
        4. 执行快照管理。
    • other 对配置文件的 otherVolume 节中的卷创建快照。
      1. other 卷快照过程
        1. 拍摄配置文件 "otherVolume" 节中列出的卷的快照。
        2. 执行快照管理。
    • alldataVolume 节中的所有卷创建快照,然后对配置文件的 otherVolume 节中的所有卷创建快照。 处理按如下所述顺序进行:
      1. all 卷快照过程
        1. data 卷快照(与普通 --volume data 选项相同)
          1. 将数据库置于备份模式
          2. 拍摄配置文件 "dataVolume" 节中列出的卷的快照。
          3. 使数据库退出备份模式
          4. 执行快照管理。
        2. other 卷快照(与普通 --volume other 选项相同)
          1. 拍摄配置文件 "otherVolume" 节中列出的卷的快照。
          2. 执行快照管理。

    注意

    通过创建一个将引导卷作为 otherVolume 的单独的配置文件,可以按照完全不同的时间安排(例如,每日)来执行 boot 快照。

  • --prefix= 快照名称的客户快照前缀。 该参数具有两个用途。 首先,为快照分组提供唯一的名称。 其次,确定为指定 --prefix 保留的存储快照 --retention 数。

    重要

    仅允许字母数字 (“A-Z,a-z,0-9”)、下划线 (“_”) 和破折号 (“-”) 字符。

  • --retention 定义的 --prefix 的要保留的快照数。 为该 --prefix 拍摄新快照后,将删除任何额外的快照。

  • --trim 用于 SAP HANA v2 和更高版本,此选项保留备份目录以及磁盘目录和日志备份。 备份目录中保留的条目数取决于上面的 --retention 选项,并从备份目录以及相关的物理日志备份中删除已定义前缀 (--prefix) 的旧条目。 它还会删除早于最早非日志备份条目的任何日志备份条目。 此 --trim 操作有助于防止日志备份占用所有可用磁盘空间。

    注意

    下面的示例命令将保留 9 个存储快照,并确保对备份目录进行持续修整,使其与保留的 9 个存储快照匹配。

    azacsnap -c backup --volume data --prefix hana_TEST --retention 9 --trim
    
  • [--flush]:一个用于在数据库进入“备份模式”后请求操作系统内核对卷的 I/O 缓冲区进行刷新的选项。 在以前的版本中,我们使用“mountpoint”值来指示要刷新的卷,在 AzAcSnap 10 中则是使用 --flush 选项来处理它。 因此,可从配置文件中删除此键/值 ("mountpoint") 。

    • 在 Windows 上,标记为“Windows”或“Recovery”且为 NTFS 的卷不会被刷新。 还可将“noflush”添加到卷标中,这样它也不会被刷新。
    • 在 Linux 上,使用 Linux sync 命令刷新所有 I/O。

    如果在运行数据库的同一主机上运行以下示例,则会:

    1. 将数据库置于“备份模式”
    2. 请求操作系统内核刷新本地卷的 I/O 缓冲区(请参阅操作系统特定详细信息)。
    3. 拍摄存储快照。
    4. 从“备份模式”释放数据库
    azacsnap -c backup --volume data --prefix hana_TEST --retention 9 --trim --flush
    
  • [--ssl=] 一个可选参数,定义用于与 SAP HANA 通信的加密方法, opensslcommoncrypto。 如果定义了一种加密方法,则 azacsnap -c backup 命令期望在同一目录中找到两个文件,这些文件必须根据对应的 SID 来命名。 请参阅使用 SSL 与 SAP HANA 通信。 下面的示例采用一个带有前缀 hana_TESThana 类型快照,并让其中的 9 个使用 SSL (openssl) 与 SAP HANA 保持通信。

    azacsnap -c backup --volume data --prefix hana_TEST --retention 9 --trim --ssl=openssl
    
  • [--configfile <config filename>] 是一个可选参数,可用于自定义配置文件名称。

快照备份速度快

快照备份的持续时间与卷大小无关,其中 10 TB 的卷在与 10 GB 卷相同的大致时间内进行了快照拍摄。

影响总体执行时间的主要因素包括:要进行快照拍摄的卷数,以及 --retention 参数的任何更改(其中卷数的减少由于删除多余快照而增加了执行时间)。

在为“Azure 大型实例”提供的示例配置中,完成两个卷的快照只需不到 5 秒。 对于 Azure NetApp 文件,两个卷的快照大约需要 60 秒。

注意

如果 --retentionazacsnap 运行的先前时间显著降低(例如,从 --retention 50--retention 5),则所用时间将随着 azacsnap 需要删除额外的快照而增加。

data 参数的示例

azacsnap -c backup --volume data --prefix hana_TEST --retention 9 --trim

此命令不会输出到控制台,但会写入日志文件、结果文件和 /var/log/messages

在本示例中,“日志文件”名为 azacsnap-backup-azacsnap.log(请参阅日志文件

运行包含 --volume data 选项的 -c backup 命令时,还会生成一个结果文件,该文件将允许快速检查备份结果。 “结果”文件与日志文件具有相同的基本名,.result 为其后缀。

在本示例中,“结果文件”名为 azacsnap-backup-azacsnap.result,该文件包含以下输出:

cat logs/azacsnap-backup-azacsnap.result
Database # 1 (H80) : completed ok

/var/log/messages 文件包含与 .result 文件相同的输出。 请参阅以下示例(以 root 身份运行):

grep "azacsnap.*Database" /var/log/messages | tail -n10
Jul  2 05:22:07 server01 azacsnap[183868]: Database # 1 (H80) : completed ok
Jul  2 05:27:06 server01 azacsnap[4069]: Database # 1 (H80) : completed ok
Jul  2 05:32:07 server01 azacsnap[19769]: Database # 1 (H80) : completed ok
Jul  2 05:37:06 server01 azacsnap[35312]: Database # 1 (H80) : completed ok
Jul  2 05:42:06 server01 azacsnap[50877]: Database # 1 (H80) : completed ok
Jul  2 05:47:06 server01 azacsnap[66429]: Database # 1 (H80) : completed ok
Jul  2 05:52:06 server01 azacsnap[82964]: Database # 1 (H80) : completed ok
Jul  2 05:57:06 server01 azacsnap[98522]: Database # 1 (H80) : completed ok
Jul  2 05:59:13 server01 azacsnap[105519]: Database # 1 (H80) : completed ok
Jul  2 06:02:06 server01 azacsnap[114280]: Database # 1 (H80) : completed ok

other 参数的示例

azacsnap -c backup --volume other --prefix logs_TEST --retention 9

此命令不会输出到控制台,而只会写入日志文件。 它“不”会写入结果文件或 /var/log/messages

在本示例中,“日志文件”名为 azacsnap-backup-azacsnap.log(请参阅日志文件

other 参数的示例(备份主机 OS)

注意

使用另一个配置文件 (--configfile bootVol.json),其仅包含引导卷。

azacsnap -c backup --volume other --prefix boot_TEST --retention 9 --configfile bootVol.json

重要

对于 Azure 大型实例,引导卷的配置文件卷参数在主机操作系统级别可能不可见。 此值可由 Microsoft Operations 提供。

此命令不会输出到控制台,而只会写入日志文件。 它“不”会写入结果文件或 /var/log/messages

在本示例中,“日志文件”名为 azacsnap-backup-bootVol.log(请参阅日志文件

日志文件

日志文件由“(命令名称)-(-c 选项)-(配置文件名)”这些内容构成。 例如,如果运行 azacsnap -c backup --configfile h80.json --retention 5 --prefix one-off 命令,则日志文件叫做 azacsnap-backup-h80.log。 或者,如果将 -c test 选项与相同的配置文件(例如 azacsnap -c test --configfile h80.json)一起使用,则日志文件叫作 azacsnap-test-h80.log

注意

可以使用本指南来自动维护日志文件。

后续步骤