分享方式:


Azure 應用程式 一致快照集工具的預覽功能

本文提供 Azure 應用程式 一致快照集工具 (AzAcSnap) 預覽版新功能的安裝和使用指南。 如需此工具的基本資訊,請參閱什麼是 Azure 應用程式 一致快照集工具?

AzAcSnap 10 提供的預覽功能如下:

  • Microsoft SQL Server
  • Azure NetApp Files 備份
  • Azure 受控磁碟

注意

預覽提供「如目前」、「具有所有錯誤」和「可用」,且會從服務等級協定中排除,且可能不受客戶支援所涵蓋。 預覽版受限於 azure 預覽版Microsoft的補充使用規定 https://azure.microsoft.com/support/legal/preview-supplemental-terms/

使用 AzAcSnap 預覽功能

AzAcSnap 預覽功能會與正式推出的功能一起提供。 使用預覽功能需要使用 --preview 命令行選項。 若要設定及安裝 AzAcSnap,請參閱開始使用 Azure 應用程式 一致快照集工具

提供意見反應

您可以在在線提供 AzAcSnap 的意見反應,包括此預覽版。

Microsoft SQL Server

支援的平台與作業系統

注意

支援 Microsoft SQL Server 是預覽功能。
本節的內容補充了什麼是 Azure 應用程式 一致快照集工具頁面。

此預覽版本支援的新資料庫平臺和操作系統。

  • 資料庫
    • Microsoft Windows Server 2019 (或更新版本)上的 SQL Server 2022(或更新版本)僅處於預覽狀態。

啟用與資料庫的通訊

注意

支援 Microsoft SQL Server 是預覽功能。
本節的內容補充安裝 Azure 應用程式 一致快照集工具頁面。 本節說明如何啟用與資料庫的通訊。 請確定您使用的資料庫已從索引標籤中正確選取。

快照集工具會直接對 Microsoft SQL Server 資料庫發出命令,以啟用和停用備份模式。

AzAcSnap 會使用提供的連接字串直接連線到 Microsoft SQL Server,以發出 SQL 命令,例如 ALTER SERVER CONFIGURATION SET SUSPEND_FOR_SNAPSHOT_BACKUP = ONALTER SERVER CONFIGURATION SET SUSPEND_FOR_SNAPSHOT_BACKUP = OFF。 連接字串會判斷安裝是否位於資料庫伺服器或集中式的「備份」伺服器上。 AzAcSnap 的一般安裝會是資料庫伺服器,以確保排清檔案緩衝區等功能可以如預期般運作。 如果 AzAcSnap 已安裝到資料庫伺服器上,請確定執行 azacsnap 的使用者具有所需的許可權。

azacsnap 用戶權力

請參閱開始使用 Azure 應用程式 一致快照集工具 用戶azacsnap應該具有將Microsoft SQL Server 放入備份模式的許可權,並有權將 I/O 緩衝區排清到設定的磁碟區。

使用正確的值來設定 (.\azacsnap.exe -c configure) Microsoft SQL Server 並測試 (.\azacsnap.exe -c test --test mssql) azacsnap 資料庫連線能力。 azacsnap執行測試命令

.\azacsnap.exe -c test --test mssql
BEGIN : Test process started for 'mssql'
BEGIN : Database tests
PASSED: Successful connectivity to MSSQL version 16.00.1115
END   : Test process complete for 'mssql'

設定資料庫

本節說明如何設定數據基底。

Microsoft SQL Server 不需要特殊資料庫組態,因為我們使用的是使用者的本機操作系統環境。

設定 AzAcSnap

本節說明如何為指定的資料庫設定 AzAcSnap。

注意

支援 Microsoft SQL Server 是預覽功能。
本節的內容補充設定 Azure 應用程式 一致快照集工具網站頁面。

必要值的詳細數據

下列各節提供組態檔所需各種值的詳細指引。

Microsoft設定的 SQL Server Database 值

將Microsoft SQL Server 資料庫新增至組態時,需要下列值:

  • connectionString = 用來連接到資料庫的連接字串。 針對執行 Microsoft SQL Server 的一般 AzAcSnap 安裝,其中資料庫實例MSSQL2022 連接字串 = “Trusted_Connection=True;保存安全性資訊=True;數據源=MSSQL2022;TrustServerCertificate=true”。
  • instanceName = 資料庫實例名稱。
  • metaDataFileLocation = Microsoft SQL Server 將寫出備份元數據檔的位置(例如“C:\MSSQL_BKP\”。

Azure NetApp Files 備份

當您在多個磁碟區上使用 AzAcSnap 來擷取快照集時,所有快照集預設都有相同的名稱。 由於將快照集封存到 Azure NetApp Files 備份時,從資源識別碼階層中移除磁碟區名稱,因此您必須確定快照集名稱是唯一的。

AzAcSnap 可以藉由將磁碟區名稱附加至一般快照集名稱,自動確保建立快照集時使用唯一名稱。 例如,對於具有兩個數據磁碟區 (hanadata01hanadata02) 的系統,當您搭配 --prefix daily使用 -c backup 時,完整的快照集名稱會變成 daily__F2AFDF98703__hanadata01daily__F2AFDF98703__hanadata02

您可以在 AzAcSnap 中開啟此功能,方法是在組態檔中設定 "anfBackup": "renameOnly" ,如下列代碼段所示:

"anfStorage": [
  {
    "anfBackup" : "renameOnly",
    "dataVolume": [

您也可以使用 azacsnap -c configure --configuration edit --configfile <configfilename>來啟用此功能。 針對 Enter new value for 'ANF Backup (none, renameOnly)' (current = 'none'):,輸入 renameOnly

如需此功能的詳細資訊,請參閱設定 Azure 應用程式 一致快照集工具

Azure 受控磁碟

Microsoft提供許多記憶體選項來部署資料庫,例如 SAP HANA。 如需其中一些選項的詳細資訊,請參閱 SAP 工作負載 Azure 儲存體 類型。 Azure 進階記憶體也有具成本意識的解決方案。

當您在這種類型的架構上部署 AzAcSnap 時,可以採用應用程式一致的資料庫快照集(也就是具有受控磁碟的虛擬機 [VM]。 但此平台的設定稍微複雜一點,因為在此案例中,AzAcSnap 會採取額外的步驟來嘗試排清所有 I/O 緩衝區,並確保它們會寫出至永續性記憶體。 在 Linux 上,AzAcSnap 會呼叫 sync 命令來排清檔案緩衝區,在 Windows 上,它會使用 FlushFileBuffers 的核心呼叫,再擷取掛接邏輯磁碟區中受控磁碟的快照集。

重要

AzAcSnap 需要磁碟區的適當操作系統許可權,才能執行排清。

以下是高階的架構:

  1. 使用 Azure 入口網站 將 Azure 受控磁碟連結至 VM。
  2. 從這些受控磁碟建立邏輯磁碟區。
  3. 將邏輯磁碟區掛接至Linux目錄。
  4. 在 AzAcSnap 安裝啟用與 Azure NetApp Files 相同的通訊。
  5. 安裝及設定 AzAcSnap。

如需使用 Azure 受控磁碟作為記憶體後端的詳細資訊,請參閱設定 Azure 應用程式 一致快照集工具

範例設定檔

以下是範例組態檔。 請注意、 mountPointazureManagedDisksdataVolume階層。

{
  "version": "5.1 Preview",
  "logPath": "./logs",
  "securityPath": "./security",
  "comments": [],
  "database": [
    {
      "hana": {
        "serverAddress": "127.0.0.1",
        "sid": "P40",
        "instanceNumber": "00",
        "hdbUserStoreName": "AZACSNAP",
        "savePointAbortWaitSeconds": 600,
        "autoDisableEnableBackint": false,
        "storage": [
          {
            "dataVolumes": [
              {
                "mountPoint": "/hana/data",
                "aliStorageResources": [
                "azureManagedDisks": [
                  {
                    "resourceId": "/subscriptions/<sub-id>/resourceGroups/<rg-name>/providers/Microsoft.Compute/disks/<disk01>",
                    "authFile": ""
                  },
                  {
                    "resourceId": "/subscriptions/<sub-id>/resourceGroups/<rg-name>/providers/Microsoft.Compute/disks/<disk02>",
                    "authFile": ""
                  }
                ]
              }
            ]
          }
        ]
      }
    }
  ]
}

虛擬機記憶體配置

記憶體階層看起來就像 SAP HANA 的下列範例:

  • SAP HANA 資料庫的數據檔:

    /hana/data/mnt00001
    
  • 載入點:

    /dev/mapper/hanadata-hanadata on /hana/data type xfs 
    
  • 邏輯磁碟區:

    lvdisplay
    
    --- Logical volume ---
    LV Path                /dev/hanadata/hanadata
    LV Name                hanadata
    VG Name                hanadata
    
  • 磁碟區群組:

    vgdisplay
    
    --- Volume group ---
    VG Name               hanadata
    System ID
    Format                lvm2
    Metadata Areas        2
    Metadata Sequence No  2
    VG Access             read/write
    VG Status             resizable
    MAX LV                0
    Cur LV                1
    Open LV               1
    Max PV                0
    Cur PV                2
    Act PV                2
    VG Size               1023.99 GiB
    
  • 實體磁碟區 (連結的 Azure 受控磁碟):

    pvdisplay
    
    --- Physical volume ---
    PV Name               /dev/sdd
    VG Name               hanadata
    PV Size               512.00 GiB / not usable 4.00 MiB
    Allocatable           yes (but full)
    PE Size               4.00 MiB
    Total PE              131071
    Free PE               0
    Allocated PE          131071
    PV UUID               K3yhxN-2713-lk4k-c3Pc-xOJQ-sCkD-8ZE6YX
    --- Physical volume ---
    PV Name               /dev/sdc
    VG Name               hanadata
    PV Size               512.00 GiB / not usable 4.00 MiB
    Allocatable           yes (but full)
    PE Size               4.00 MiB
    Total PE              131071
    Free PE               0
    Allocated PE          131071
    PV UUID               RNCylW-F3OG-G93c-1XL3-W6pw-M0XB-2mYFGV
    

以這種方式安裝及設定 Azure VM 和 Azure 受控磁碟,遵循Microsoft指引來建立 VM 上受控磁碟的邏輯磁碟區段。

將 Azure VM 設定為規定時,AzAcSnap 可以擷取 Azure 受控磁碟的快照集。 快照集作業類似於 AzAcSnap 支援的其他記憶體後端作業;例如,Azure NetApp Files 或 Azure 大型實例(裸機)。 因為 AzAcSnap 會與 Azure Resource Manager 通訊以擷取快照集,因此也需要具有正確許可權的服務主體來擷取受控磁碟快照集。

這項功能可讓客戶在較小的系統上測試 AzAcSnap,並相應增加至 Azure NetApp Files 和/或 Azure 大型實例(裸機)。

Azure 受控磁碟支援的azacsnap命令功能為 configure、、backuptest、、 deletedetails,但尚未restore支援 。

從 Azure 受控磁碟快照集還原

雖然 azacsnap 目前缺少 -c restore Azure 受控磁碟的選項,但可以手動還原,如下所示:

  1. 透過 Azure 入口網站 從快照集建立磁碟。

    請務必在與目標 VM 相同的可用性區域中建立磁碟。

  2. 透過 Azure 入口網站 將磁碟連線到 VM。

  3. 以根使用者身分登入 VM,並使用 dmesgpvscan掃描新連結的磁碟:

    • 使用 dmesg

      dmesg | tail -n30
      
      [2510054.252801] scsi 5:0:0:2: Direct-Access     Msft     Virtual Disk     1.0  PQ:0 ANSI: 5
      [2510054.262358] scsi 5:0:0:2: Attached scsi generic sg4 type 0
      [2510054.268514] sd 5:0:0:2: [sde] 1073741824 512-byte logical blocks: (550 GB/512 GiB)
      [2510054.272583] sd 5:0:0:2: [sde] 4096-byte physical blocks
      [2510054.275465] sd 5:0:0:2: [sde] Write Protect is off
      [2510054.277915] sd 5:0:0:2: [sde] Mode Sense: 0f 00 10 00
      [2510054.278566] sd 5:0:0:2: [sde] Write cache: disabled, read cache: enabled, supports DPO and FUA
      [2510054.314269] sd 5:0:0:2: [sde] Attached SCSI disk
      [2510054.573135] scsi 5:0:0:3: Direct-Access     Msft     Virtual Disk     1.0  PQ: 0 ANSI: 5
      [2510054.579931] scsi 5:0:0:3: Attached scsi generic sg5 type 0
      [2510054.584505] sd 5:0:0:3: [sdf] 1073741824 512-byte logical blocks: (550 GB/512 GiB)
      [2510054.589293] sd 5:0:0:3: [sdf] 4096-byte physical blocks
      [2510054.592237] sd 5:0:0:3: [sdf] Write Protect is off
      [2510054.594735] sd 5:0:0:3: [sdf] Mode Sense: 0f 00 10 00
      [2510054.594839] sd 5:0:0:3: [sdf] Write cache: disabled, read cache: enabled, supports DPO and FUA
      [2510054.627310] sd 5:0:0:3: [sdf] Attached SCSI disk
      
    • 使用 pvscan

      saphana:~ # pvscan
      
      WARNING: scan found duplicate PVID RNCylWF3OGG93c1XL3W6pwM0XB2mYFGV on /dev/sde
      WARNING: scan found duplicate PVID K3yhxN2713lk4kc3PcxOJQsCkD8ZE6YX on /dev/sdf
      WARNING: Not using device /dev/sde for PV RNCylW-F3OG-G93c-1XL3-W6pw-M0XB-2mYFGV.
      WARNING: Not using device /dev/sdf for PV K3yhxN-2713-lk4k-c3Pc-xOJQ-sCkD-8ZE6YX.
      WARNING: PV RNCylW-F3OG-G93c-1XL3-W6pw-M0XB-2mYFGV prefers device /dev/sdc because device is used by LV.
      WARNING: PV K3yhxN-2713-lk4k-c3Pc-xOJQ-sCkD-8ZE6YX prefers device /dev/sdd because device is used by LV.
      PV /dev/sdd   VG hanadata        lvm2 [512.00 GiB / 0    free]
      PV /dev/sdc   VG hanadata        lvm2 [512.00 GiB / 0    free]
      Total: 2 [1023.99 GiB] / in use: 2 [1023.99 GiB] / in no VG: 0 [0   ]
      
  4. 使用 vgimportclone 作為根使用者,從磁碟匯入磁碟區群組複製:

    vgimportclone --basevgname hanadata_adhoc /dev/sde /dev/sdf
    
    WARNING: scan found duplicate PVID RNCylWF3OGG93c1XL3W6pwM0XB2mYFGV on /dev/sde
    WARNING: scan found duplicate PVID K3yhxN2713lk4kc3PcxOJQsCkD8ZE6YX on /dev/sdf
    WARNING: Not using device /dev/sde for PV RNCylW-F3OG-G93c-1XL3-W6pw-M0XB-2mYFGV.
    WARNING: Not using device /dev/sdf for PV K3yhxN-2713-lk4k-c3Pc-xOJQ-sCkD-8ZE6YX.
    WARNING: PV RNCylW-F3OG-G93c-1XL3-W6pw-M0XB-2mYFGV prefers device /dev/sdc because device is used by LV.
    WARNING: PV K3yhxN-2713-lk4k-c3Pc-xOJQ-sCkD-8ZE6YX prefers device /dev/sdd because device is used by LV.
    
  5. 使用 pvscanvgchange 作為根使用者來啟動邏輯磁碟區:

    pvscan --cache
    
    pvscan[23761] PV /dev/sdc online.
    pvscan[23761] PV /dev/sdd online.
    pvscan[23761] PV /dev/sde online.
    pvscan[23761] PV /dev/sdf online.
    
    vgchange -ay hanadata_adhoc
    
    1 logical volume(s) in volume group "hanadata_adhoc" now active
    
  6. 將邏輯磁碟區掛接為根使用者。

    mount -o rw,nouuid使用選項。 否則,磁碟區掛接將會因為 VM 上的重複 UUID(通用唯一標識元)而失敗。

    mount -o rw,nouuid /dev/hanadata_adhoc/hanadata /mnt/hanadata_adhoc
    
  7. 存取資料:

    ls /mnt/hanadata_adhoc/
    
    software  write-test.txt
    

下一步