Avamar 容量管理:如何使用「modify-snapups」工具,大量刪除或使備份到期

Summary: 如何使用「modify-snapups」工具,大量刪除或使備份到期。

This article applies to This article does not apply to This article is not tied to any specific product. Not all product versions are identified in this article.

Symptoms

本文將記錄如何在 Avamar 系統上使用修改快照工具來協助解決下列一些挑戰。
  • 系統管理員想要大量刪除備份,以解決或防止高容量情況。
  • 系統已滿,雖然已減少保留原則,但此動作只會影響新的備份。您也必須變更現有備份的到期日期。
  • 現有備份設定了錯誤的到期日期。
  • 業務需求變更,組織部門必須儲存比原先所規劃更多或更少的備份數量。

    Cause

    modify-snapups.sh」公用程式是預設存在的指令檔,位於 /usr/local/avamar/bin 下的 Avamar Utility Node 上。

    Resolution

    此公用程式取代「expire-snapups」和「delete-snapups」指令檔,這些是較早的工具形式。這兩個較舊的腳本皆已過期,而且命令現在會直接呼叫 modify-snapups (如果執行的話) (請參閱備註中的專案 #1)。

    到期和刪除模式:    
    執行 modify-snapups 以使模式到期或刪除模式。
     
    modify-snapups --help
    modify-snapups - 修改快照
    版本:7.1.0-370 (1.11)
    Usage: modify-snapups [--mode={delete|expire}] [--help] [options ]
    This program does nothing when invoked as modify-snapups.
    Instead, invoke this program as delete-snapups or expire-snapups,
    or else with --mode={delete|expire} before any other options.

    傳遞至每個模式的旗標幾乎完全相同,並可透過在命令附加 --help 以檢視。(請參閱附注中的專案 #2)

    指令檔會執行什麼動作?  
    自行執行 modify-snapups 是安全的,因為它不會對 Avamar 伺服器進行任何變更。

    使用正確的引數執行時,公用程式會產生包含命令清單的腳本。執行指令檔時會執行序列命令清單,以變更每個備份的到期日期或刪除。

    命令是根據傳遞至修改快照的旗標產生。  

    使用者可決定備份中是否要納入:      
    • 在特定日期範圍內 (--after / --before)
    • 在特定網域下 (--domain)
    • 針對特定用戶端
    • 是否要包含適用於 AVI、EM、MC 的內部 Avamar 資料庫備份
    • 是否要在複寫目標上納入備份



    命令範例範例 1:檢查「mydomain」下的所有備份,並建立指令檔,使在 2015 年 3 月 1 日前建立的指令檔到期。
     
    modify-snapups --mode=expire --domain=/mydomain --before=2015-03-01 > expire-backups-output-script.txt

    此指令檔會產生 mccli 備份編輯命令的清單,以「修改」適當的備份 (在此情況下為使其到期)。也會列出不符合條件的項目,但首碼會為井字 (#) 和說明 CONSERVE:   
     
    # MODIFY    Snapup date: 2015-02-17 08:04:30 GMT Lab#: 418     Replicated: N/A
    echo running: "mccli backup edit --domain=/mydomain --name=myclient.avamar.com --labelNum=418 --created=2015-02-17 --expiration=2015-05-18"
    mccli backup edit --domain=/mydomain --name=myclient.avamar.com --labelNum=418 --created=2015-02-17 --expiration=2015-05-18
    # CONSERVE Snapup date: 2015-04-17 08:05:18 IST Lab#: 457     Replicated: N/A
    # echo running: "mccli backup edit --domain=/mydomain --name=myclient.avamar.com --labelNum=457 --created=2015-04-17 --expiration=2015-07-16"
    # mccli backup edit --domain=/mydomain --name=myclient.avamar.com --labelNum=457 --created=2015-04-17 --expiration=2015-07-16
    # CONSERVE Snapup date: 2015-04-16 08:03:46 IST Lab#: 456     Replicated: N/A
    # echo running: "mccli backup edit --domain=/mydomain --name=myclient.avamar.com --labelNum=456 --created=2015-04-16 --expiration=2015-07-15"
    # mccli backup edit --domain=/mydomain --name=myclient.avamar.com --labelNum=456 --created=2015-04-16 --expiration=2015-07-15

    範例 2:刪除在 mydomain 下建立超過一個月的所有備份。
     
    modify-snapups --mode=delete --domain=/mydomain --before='1 month ago' > output-script.txt

    請使用 1 號範例中的正確日期,但舉例來說,此處使用的是「友善」的 Linux 日期標記法 (1 個月前)。

    腳本包含如下所示的輸出 (因空間原因截斷)。在標題中,指令檔會準確說明其執行的作業和生效的參數。此指令檔於 2015 年 4 月 17 日執行。
    # ======================================================================
    # CLIENT: /mydomain/server
    #     Operation: DELETE selected snapups
    #     After: "June 1 1999 00:00:00" (928191600) Tue Jun  1 00:00:00 IST 1999
    #     Before: "1 month ago" (1426614045) Tue Mar 17 17:40:45 GMT 2015
    # ======================================================================
    # *** NO SNAPUPS FOUND ***
    # ======================================================================
    # CLIENT: /mydomain/myclient.avamar.com
    #     Operation: DELETE selected snapups
    #     After: "June 1 1999 00:00:00" (928191600) Tue Jun  1 00:00:00 IST 1999
    #     Before: "1 month ago" (1426614045) Tue Mar 17 17:40:45 GMT 2015
    # ======================================================================
    # CONSERVE Snapup date: 2015-03-18 08:03:31 GMT Lab#: 437     Replicated: N/A
    # echo running: "mccli backup delete --domain=/mydomain --name=myclient.avamar.com --labelNum=437 --created=2015-03-18 --force=true"
    # mccli backup delete --domain=/mydomain --name=myclient.avamar.com --labelNum=437 --created=2015-03-18 --force=true
    # MODIFY    Snapup date: 2015-03-16 08:03:57 GMT Lab#: 435     Replicated: N/A
    echo running: "mccli backup delete --domain=/mydomain --name=myclient.avamar.com --labelNum=435 --created=2015-03-16 --force=true"
    mccli backup delete --domain=/mydomain --name=myclient.avamar.com --labelNum=435 --created=2015-03-16 --force=true
    # MODIFY    Snapup date: 2015-03-13 08:01:30 GMT Lab#: 434     Replicated: N/A
    echo running: "mccli backup delete --domain=/mydomain --name=myclient.avamar.com --labelNum=434 --created=2015-03-13 --force=true"
    mccli backup delete --domain=/mydomain --name=myclient.avamar.com --labelNum=434 --created=2015-03-13 --force=true
    # MODIFY    Snapup date: 2015-03-12 08:09:20 GMT Lab#: 433     Replicated: N/A
    echo running: "mccli backup delete --domain=/mydomain --name=myclient.avamar.com --labelNum=433 --created=2015-03-12 --force=true"
    mccli backup delete --domain=/mydomain --name=myclient.avamar.com --labelNum=433 --created=2015-03-12 --force=true

    列出「MODIFY」的備份會使用「mccli backup delete」命令變更。這些備份的「created」日期皆早於 1 個月 (2015 年 3 月 17 日)。

    範例 3:延長現有備份的到期時間。
    下列命令會針對 /clients 網域下的用戶端在 2018 年 5 月 1 日 15 日之間建立的備份,並建立在執行時取代這些備份到期時間的指令檔,使其在備份建立後 100 天到期。
     
    modify-snapups --domain=/clients/ --mode=expire --after='2018-05-01' --before='2018-05-15'  --days=100 > expire-backups-output-script.txt

    .
    8.
    #======================================================================
    # CLIENT: /clients/server.asl.lab.emc.com
    #     Operation: EXPIRE selected snapups
    #     After: "2018-05-01" (1525158000) Tue May  1 00:00:00 PDT 2018
    #     Before: "2018-05-15 " (1526367600) Tue May 15 00:00:00 PDT 2018
    # ======================================================================
    # MODIFY    Snapup date: 2018-05-07 22:00:52 PDT   Lab#: 498     Replicated: N/A
    echo running: "mccli backup edit --domain=/clients --name=server --labelNum=498 --created=2018-05-07 --expiration=2018-08-15"
    mccli backup edit --domain=/clients --name=server --labelNum=498 --created=2018-05-07 --expiration=2018-08-15
    # MODIFY    Snapup date: 2018-05-06 22:00:46 PDT   Lab#: 497     Replicated: N/A
    echo running: "mccli backup edit --domain=/clients --name=server --labelNum=497 --created=2018-05-06 --expiration=2018-08-14"
    mccli backup edit --domain=/clients --name=server --labelNum=497 --created=2018-05-06 --expiration=2018-08-14
    8#CONSERVE  Snapup date: 2018-06-25 22:00:41 PDT   Lab#: 501     Replicated: N/A
    # echo running: "mccli backup edit --domain=/clients --name=server --labelNum=501 --created=2018-06-25 --expiration=2018-10-03"
    # mccli backup edit --domain=/clients --name=server --labelNum=501 --created=2018-06-25 --expiration=2018-10-03
    # CONSERVE  Snapup date: 2018-04-30 22:00:57 PDT   Lab#: 491     Replicated: N/A
    # echo running: "mccli backup edit --domain=/clients --name=server --labelNum=491 --created=2018-04-30 --expiration=2018-08-08"
    # mccli backup edit --domain=/clients --name=server --labelNum=491 --created=2018-04-30 --expiration=2018-08-08


    執行指令檔以修改或刪除備份

    強烈建議在執行此程序前先設定檢查點。

    建立指令檔後,請仔細檢查內容。當您滿意要執行的動作後,請將指令檔設定為可執行檔。

    例如,建立要刪除 /mydomain 下所有超過 6 個月備份的指令檔。

    將指令檔設定為可執行檔,並檢查許可權:    
     
    admin@utility:~/modsnap/>: chmod +x delete-backups-mydomain-before-6monthsago.txt
    admin@utility:~/modsnap/>:  ls -l
    -rwx------ 1 admin admin 15016 Apr 17 18:55 delete-backups-mydomain-before-6monthsago.txt

    執行指令檔。將輸出重新導向至另一個檔案,以記錄所做的變更。
     
    admin@utility:~/modsnap/>: ./delete-backups-mydomain-before-6monthsago.txt
    running: mccli backup delete --domain=/mydomain --name=myclient.customer.com --labelNum=323 --created=2014-09-25 --force=true
    0,22553,Backup deleted.
    Attribute  Value
    ---------- --------------------------------------
    path       /mydomain/myclient.customer.com
    retention  N
    labelnum   323
    createtime 2014-09-25 18:07:04 IST
    plugin     3001

    如果指令檔已執行完成,並執行第二次,您會看到:    
    1,22552,Backup does not exist

    如果執行指令檔需要較長的時間,且必須暫停,則可以執行第二次。為避免重新檢查先前已刪除的備份,請手動編輯指令檔,刪除已處理過的命令。或者您可以重新產生指令檔。

    產生和執行指令檔可能需要大量的時間。將工作分割成較短的時間或個別網域,有助於「分批完成」。

    Additional Information

    項目 1
    ls -ls /usr/local/avamar/bin/ | grep modify-snapups
         0 lrwxrwxrwx 1 root  root         14 Nov 28 19:42 delete-snapups -> modify-snapups
         0 lrwxrwxrwx 1 root  root         14 Nov 28 19:42 expire-snapups -> modify-snapups
        24 -rwxr-xr-x 1 root  root      24185 Sep  8 23:46 modify-snapups

    「snapup」一詞是過時的 Avamar 術語,可作為備份。它是快照和備文字的混合式。

    專案 #2
    有關如何使用刪除和到期模式的完整說明文件可透過附加 --help 至命令取得。
     
    modify-snapups --mode=expire --help
    modify-snapups --mode=delete --help

    項目 #3
    請留意以下文章。 請參閱此影片:  
     

    Affected Products

    Avamar

    Products

    Avamar, Avamar Client, Avamar Server
    Article Properties
    Article Number: 000058216
    Article Type: Solution
    Last Modified: 19 Nov 2024
    Version:  9
    Find answers to your questions from other Dell users
    Support Services
    Check if your device is covered by Support Services.