Avamar:如何安全地從 Avamar Grid 移除 Data Domain 系統。
Summary: 本文提供從 Avamar Grid 移除 Data Domain 系統的步驟。
Instructions
本文提供從 Avamar Grid 移除 Data Domain 系統的步驟。
- 在整篇文章中,凡是提到「Avamar Utility Node」,便是指多節點環境中的工具節點、單一節點實體環境中的單一節點,或虛擬環境中的 AVE。
- 管理主控台伺服器 (MCS) UI 是指 Java Avamar Administrator UI。Avamar 使用者介面 (AUI) 是指 Web 介面
(https://<avamar-grid>/aui)
avmaint config --ava |grep "immutable\|governancemode"
immutablebackups="false"
periodimmutablebackups="false"
governancemode="false"
-
在移除程序之前,應先刪除此 Avamar 儲存在 Data Domain 上的所有備份。
-
刪除所有備份後,建議執行完整的維護週期 (手動或排程)。
-
完整的維護週期包括垃圾收集 (GC)、檢查點 (CP)、檢查點驗證
(hfscheck)、檢查點和移除舊檢查點 (RMCP)。
-
請確定已刪除 Data Domain 上的所有備份資料,以及 Avamar 上的中繼資料,然後再繼續 Data Domain 系統的最後移除。
本文旨在解決兩種情況:
案例 1:不完整移除:Data Domain 系統已不再使用,或無法從 Avamar 連線。
- Data Domain 系統已關閉。
- 從 Avamar 移除之前,Data Domain 已中斷與網路的連線。
- 從 Avamar 移除 Data Domain 之前,Data Domain 上的檔案系統已銷毀或重新初始化 (換句話說,Data Domain 上的 Avamar MTree 已不復存在)
案例 2:完整移除:Data Domain 系統作用中,並可從 Avamar 連線。仍可存取與儲存在 Avamar 上的中繼資料相對應之所有備份資料。
對此進行測試的最簡單方法是執行「 ddrmaint cplist」命令 (從 Avamar Utility Node)。如果出現這種情況,Avamar 可以連線至 Data Domain、讀取 Data Domain 上的 Avamar MTree (儲存裝置),並列出檢查點。
範例:
ddrmaint cplist
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<checkpointlist
cmd="cplist"
lsu="avamar-1643691625"
count="3">
<ddrservers count="1">
<ddrserver
name="dd01.company.com"
index="1"
ddrcreatetime="1685672902"/>
</ddrservers>
<checkpoint
tag="cp.20240724220026"
mtime="1721858446"
isvalid="true"
validcheck="true"/>
<checkpoint
tag="cp.20240801021435"
mtime="1722478550"
isvalid="true"
validcheck="false"/>
<checkpoint
tag="cp.20240801045429"
mtime="1722488144"
isvalid="true"
validcheck="false"/>
</checkpointlist>
案例 1 和案例 2 常見步驟:
對於完整移除和不完整移除,應遵循以下常見步驟:
1.以系統管理員身分登入 Avamar Utility Node。
2.找到要移除之 Data Domain 的 Data Domain 主機名稱和索引。
(DDR 索引是一個數值,代表連接至 Avamar 的 Data Domain 系統數量。)
以系統管理員身分在 Avamar Utility Node 上執行下列命令,即可找到索引:
ddrmaint read-ddr-info
範例輸出:
<ddrconfig client-map-default="true" cloud_enabled="false" cloud_unit_name="" dd-cert-chain="" ddos-version="7.13.0.20-1082704" ddrcreatetime="1685672902" ddrid="A42AF86128712C2361D8E072BA5E20E745C5F8A5" gsan-backup-target-default="true" hostname="dd01.company.com" index="1" instant-access-limit="32" ipv4-hostname="dd01.company.com" ipv6-hostname="" max-streams="50" max-streams-for-cp-backup="2" modelno="DD VE" mtree_name="/data/col1/avamar-1234567890" password="Onlh2XP9xEpvI2exqGQwqA==" policy_id="%2Fdata%2Fcol1%2Favamar-1643691625%3AECS_Unit1" serialno="xxxxxxxxxxxxxxx" token="AQAjwjOLe0cAcXbsTvn4AYhPc274/LNOErIAjGbfELzhoQ==" username="ddboost">
...
<ddrconfig client-map-default="false" cloud_enabled="false" cloud_unit_name="" dd-cert-chain="" ddos-version="6.2.1.80-692201" ddrcreatetime="1722482083" ddrid="3EBBA48A04A3DE3D2CAC662CF32E5DDBD0E68C58" gsan-backup-target-default="false" hostname="dd02.company.com" index="2" instant-access-limit="32" ipv4-hostname="dd02.company.com" ipv6-hostname="" max-streams="50" max-streams-for-cp-backup="0" modelno="DD VE Version 4.0" mtree_name="/data/col1/avamar-1234567890" password="Si+8QUMErXcQuq99uQ+IpQ==" policy_id="" serialno="xxxxxxxxxxxxxxx" token="AQA51kB/zWJVUc2Hso5NqQVla+XC71ucYATwtbP4Rq1f8A==" username="ddboost">
在此範例輸出中,有兩個附加的 Data Domain。
-
Data-Domain-hostname: dd01.company.com
-
ddr-index-value: 1.
3.檢查已選取 Data Domain 的資料集 (如果有):
執行此操作的最簡單方法,是從 CLI 執行命令,以確定必須編輯哪些資料集。然後可以使用所選的 UI (AUI 或 MCS) 來更新資料集。
針對僅附加一個 Data Domain 的 Avamar Grid,請使用下列命令:
psql -p 5555 mcdb -c "select dataset_name,plugin_name,domain from v_ds_commands where command_name='ddr-index' and value NOT IN ('0') order by dataset_name asc;"
範例:
psql -p 5555 mcdb -c "select dataset_name,plugin_name,domain from v_ds_commands where command_name='ddr-index' and value NOT IN ('0') order by dataset_name asc;"
dataset_name | plugin_name | domain
-----------------+-------------------------+--------
Default Dataset | Linux Fast Incrementals | /
Default Dataset | VMware vCloud vApp | /
Default Dataset | Windows File System | /
dd01_dst | Windows File System | /clients
(4 rows)
-- 或 --
如果是已附加多個 Data Domain 系統的 Avamar Grid,請執行下列命令:
psql -p 5555 mcdb -c "select dataset_name,plugin_name,domain from v_ds_commands where command_name='ddr-index' and value='<ddr-index-value>' order by dataset_name asc;"
其中 <ddr-index-value> 是上面步驟 2 中提到的索引 (在我們的範例輸出中,這是 1)
範例:
psql -p 5555 mcdb -c "select dataset_name,plugin_name,domain from v_ds_commands where command_name='ddr-index' and value='1' order by dataset_name asc;"
dataset_name | plugin_name | domain
-----------------+-------------------------+--------
Default Dataset | Linux Fast Incrementals | /
Default Dataset | VMware vCloud vApp | /
Default Dataset | Windows File System | /
dd01_dst | Windows File System | /clients
(4 rows)
如果沒有回報任何資料集,請前往步驟 6,否則請從步驟 4 繼續。
4.登入 Avamar UI (AUI 或 MCS),然後從列出的每個資料集移除 Data Domain:
Avamar Administrator - AUI:
a. 從系統管理標題中,選取「設定」。
b. 按一下「資料集」。
c. 對於每個資料集:
i. 選取所需的資料集,然後按一下「編輯」。
ii.從步驟 3 的輸出,依次選取列出的每個附掛程式。
在「預設資料集」的範例輸出中,會是「Linux Fast Incrementals」、「VMware vCloud vApp」和「Windows 檔案系統」。
iii.取消勾選「在 Data Domain 系統上儲存備份」,或者在已附加多個 Data Domain 的情況下,更換 Data Domain 名稱 (若適用)。
iv.按一下「提交」。
v. 對所有列出的附掛程式重複此操作
-- 或 --
Avamar Administrator - MCS:
a. 前往「工具」功能表。
b. 選取「管理資料集」。
c. 對於每個資料集:
i. 選取所需的資料集,然後按一下「編輯」。
ii.前往「選項」標籤。
iii.從預設資料集,選取步驟 3 輸出中列出的每個附掛程式,例如「Linux Fast Incrementals」、「VMware vCloud vApp」和「Windows 檔案系統」。
iv.取消勾選「在 Data Domain 系統上儲存備份」選項,或者在已附加多個 Data Domain 系統的情況下,更換 Data Domain 名稱 (若適用)。
v. 按一下「確定」。
vi.對每個必要資料集重複此操作
5.完成後,請重新執行先前步驟 2b 中執行的相同命令。此情況下不應列出任何資料集:
範例:
psql -p 5555 mcdb -c "select dataset_name,plugin_name,domain from v_ds_commands where command_name='ddr-index' and value='1' order by dataset_name asc;"
-- 或 --
psql -p 5555 mcdb -c "select dataset_name,plugin_name,domain from v_ds_commands where command_name='ddr-index' and value='<ddr-index-value>' order by dataset_name asc;"
任一命令的預期輸出相同:
dataset_name | plugin_name | domain
--------------+-------------+--------
(0 rows)
6.如果附加多個 Data Domain,且 Avamar 為複寫來源,請確定要移除的 DD 未設為預設的複寫儲存系統:
登入 Avamar UI (AUI 或 MCS)
Avamar Administrator - AUI:
a. 從系統管理標題中,選取「系統」。
b. 按一下「Data Domain」。
c. 選取要移除的 Data Domain。
d. 如果「預設複寫儲存系統」值為「是」,請前往步驟 e,否則前往步驟 7。

e. 按一下「取消」。
f. 從剩餘的 Data Domain (未移除) 中,選取成為預設複寫儲存系統的替代系統。
g. 按一下「編輯」。
h. 輸入並重新輸入 ddboost 帳戶密碼。
i. 選取「使用系統作為預設複寫儲存」
j. 選取「驗證」、「下一步」、「下一步」、「完成」。可能需要一些時間才能完成更新。
-- 或 --
Avamar Administrator - MCS:
a. 從主要儀表板中選取「伺服器」。
b. 選取「伺服器管理」標籤。
c. 如果僅看到「位元組受保護摘要」視窗,請按一下分隔線並展開視窗,直到看到伺服器 (Avamar 和 Data Domain):

d. 反白顯示要移除的 Data Domain。
e. 若在「節點資訊」視窗內,「預設複寫儲存系統」為「是」,請前往步驟 f,否則請前往步驟 7。

f. 從剩餘的 Data Domain (未移除) 中,選取成為預設複寫儲存系統的替代系統。
g. 從「動作」功能表中,選取「編輯 Data Domain 系統」
h. 選取「使用系統作為預設複寫儲存」核取方塊,然後按一下「確定」。
i. 按一下「是」,確認變更預設複寫儲存對應。可能需要一些時間才能完成更新。
-
針對不完整移除 (案例 1),請前往步驟 8
-
針對完整移除 (案例 2),請前往步驟 11
案例 1:不完整移除的特定步驟
-
Data Domain 在從 Avamar 移除之前,就已關閉。
-
Data Domain 在從 Avamar 移除之前,已中斷與網路的連線。
-
Data Domain 上的檔案系統在從 Avamar 移除之前就已重新初始化 (換句話說,Avamar MTree 已不存在於 Data Domain 系統上)。
-
Data Domain 上的檔案系統已破壞或損毀
8.執行下列命令:
mccli dd delete --name=<Data-Domain-hostname> --force
其中 <Data-Domain-hostname> 是從步驟 2 取得的名稱 (在範例輸出中為 dd01.company.com)
範例:
mccli dd delete --name=dd01.company.com --force
0,30936,Deleted Data Domain system.
Attribute Value
------------------------- -------------------------------------------------------------------
ipv6Hostname
ipv4Hostname dd01.company.com
0,30936,Deleted Data Domain system.
Attribute Value
------------------------- -------------------------------------------------------------------
replication-storage-check Data Domain system is the only default replication storage system.
ipv6Hostname
force-delete Force delete option was in use for the Data Domain system deletion.
ipv4Hostname dd01.company.com
如果發生任何其他錯誤,請停止並建立服務要求。建立服務要求時,應包含本文以及任何錯誤。
9.刪除任何儲存在 Data Domain 上的備份參考:
如果備份參考儲存在無法存取的 Data Domain 上,則必須刪除。雖然無法存取 Data Domain 和備份資料,但 Avamar 上仍有中繼資料。
指令檔 remove_ddr_backups 可用於偵測和顯示參考 Data Domain 的備份,位於 /usr/local/avamar/bin 目錄 (在 Avamar Utility Node 上)。
a. 以非破壞性模式執行指令檔:
remove_ddr_backups <ddr-index-value>
其中 <ddr-index-value> 是步驟 2 中註明的 Data Domain 索引 (在範例輸出中,此為 1)
範例:
remove_ddr_backups 1
Running in non-destructive mode. No data will be destroyed.
To run in destructive mode add the command line parameter '--delete-backups'.
Total Data Domain backups 5422.
Total Avamar backups 10296.
Total backups 15718.
Matched 2232 out of 5422 total Data Domain backups with ddrindex 1.
Total Data Domain backups to be deleted 8014.
Backup counts for each ddr index before any backup deletions:
ddrindex 001: 2232
ddrindex 002: 3190
remove_ddr_backups completed successfully in non-destructive mode.
如輸出所述,上述命令以「非破壞性」模式執行,且不會刪除任何備份。
此輸出顯示 ddrindex 1 上儲存了 2232 個備份。
b. 移除在無法存取的 Data Domain 上的備份參考,方法是新增「--delete-backups」旗標:
remove_ddr_backups <ddr-index-value> --delete-backups
其中 <ddr-index-value> 是步驟 2 中註明的 Data Domain 索引 (在我們的範例輸出中,此為 1)
範例:
remove_ddr_backups 1 --delete-backups
remove_ddr_backups will irrevocably destroy backup data on server 'dd01.company.com'.
Type 'yes' to permanently remove backup data on this server:
c. 再次確認這是正確的 Data Domain,因為此程序無法回復。
d. 輸入「是」
預期輸出:
1 Request succeeded
0 ERROR! Exit code 116: Cannot delete client's last backup remove_ddr_backups:
Error: remove_ddr_backups:
Error: Failed to execute 'avmgr delb --path=/MC_RETIRED/test_client_A2014.01.23.16.18.41 --date=0x1CEF631A5EDEA52', result code '29696', error string 'Bad file descriptor'
Error: Failed to execute 'avmgr delb --path=/clients/test_client_B --date=0x1CEF631A5EDEB922', result code '29696', error string 'Bad file descriptor'
請參閱「其他資訊」一節,以取得如何手動刪除已鎖定備份的指示。
移除所有已鎖定備份後,請重複步驟 9b-9d 以移除 Data Domain。
10.從步驟 14 繼續。
案例 2:完整移除的特定步驟
11.在所要移除的 Data Domain 上,必須刪除所有儲存的備份:
指令檔 remove_ddr_backups 可用於偵測和顯示參考 Data Domain 的備份,位於 /usr/local/avamar/bin 目錄 (在 Avamar Utility Node 上)。
a. 以非破壞性模式執行指令檔:
remove_ddr_backups <ddr-index-value>
其中 <ddr-index-value> 是步驟 2 中註明的 Data Domain 索引 (在我們的範例輸出中,此為 1)
範例:
remove_ddr_backups 1
Running in non-destructive mode. No data will be destroyed.
To run in destructive mode add the command line parameter '--delete-backups'.
Total Data Domain backups 5422.
Total Avamar backups 10296.
Total backups 15718.
Matched 2232 out of 5422 total Data Domain backups with ddrindex 1.
Total Data Domain backups to be deleted 8014.
Backup counts for each ddr index before any backup deletions:
ddrindex 001: 2232
ddrindex 002: 3190
remove_ddr_backups completed successfully in non-destructive mode.
如輸出所述,上述命令以「非破壞性」模式執行,且不會刪除任何備份。
此輸出顯示 ddrindex 1 上儲存了 2232 個備份。
b. 移除在無法存取的 Data Domain 上的備份參考,方法是新增「--delete-backups」旗標:
remove_ddr_backups <ddr-index-value> --delete-backups
其中 <ddr-index-value> 是步驟 2 中註明的 Data Domain 索引 (在我們的範例輸出中,此為 1)
範例:
remove_ddr_backups 1 --delete-backups
remove_ddr_backups will irrevocably destroy backup data on server 'dd01.company.com'.
Type 'yes' to permanently remove backup data on this server:
c. 再次確認這是正確的 Data Domain,因為此程序無法回復。
d. 輸入「是」
預期輸出:
1 Request succeeded
0 ERROR! Exit code 116: Cannot delete client's last backup remove_ddr_backups:
Error: remove_ddr_backups:
Error: Failed to execute 'avmgr delb --path=/MC_RETIRED/test_client_A2014.01.23.16.18.41 --date=0x1CEF631A5EDEA52', result code '29696', error string 'Bad file descriptor'
Error: Failed to execute 'avmgr delb --path=/clients/test_client_B --date=0x1CEF631A5EDEB922', result code '29696', error string 'Bad file descriptor'
請參閱「其他資訊」一節,以取得如何手動刪除已鎖定備份的指示。
移除已鎖定備份後,請重複步驟 11b-11d 以移除 Data Domain。
12.一旦移除用戶端備份,就必須從 Avamar Grid 移除與任何 Data Domain 備份相關聯的所有檢查點:
a. 檢查最後一個檢查點的完成時間:
status.dpn |grep "Last checkpoint"
b. 執行 MCS 排清:
mcserver.sh --flush
範例:
mcserver.sh --flush
=== BEGIN === check.mcs (preflush)
check.mcs passed
=== PASS === check.mcs PASSED OVERALL (preflush)
Flushing Administrator Server...
Administrator Server flushed.
c. 使用新的檢查點:
avmaint checkpoint --ava --wait
在檢查點完成之前,提示不會傳回。
d. 檢查最後一個檢查點:
status.dpn |grep "Last checkpoint"
確認這與 12a 的輸出不同。
e. 驗證檢查點:
avmaint hfscheck --full --keep --ava
f. 監控 hfscheck 直到完成。
g. 一旦 hfscheck 成功完成,請使用另一個檢查點:
avmaint checkpoint --ava --wait
同樣,在檢查點完成之前,提示不會傳回。
h. 移除任何舊的檢查點:
avmaint rmcp --full --ava
13.使用 CLI 或 UI 從 Avamar 移除 Data Domain:
CLI
mccli dd delete --name=<Data-Domain-hostname>
其中 <Data-Domain-hostname> 是從步驟 2 取得的名稱 (在我們的範例輸出中為 dd01.company.com)
範例:
mccli dd delete --name=dd01.company.com
0,30936,Deleted Data Domain system.
Attribute Value
------------------------- -------------------------------------------------------------------
ipv6Hostname
ipv4Hostname dd01.company.com
命令可能需要一些時間才能返回提示。讓命令不間斷地完成。
-- 或 --
Avamar Administrator - AUI:
a. 從系統管理標題中,選取「系統」。
b. 按一下「Data Domain」。
c. 選取要移除的 Data Domain。
d. 按一下「刪除」。
e. 檢閱確認內容,確定其中有要移除的 Data Domain 名稱。
f. 按一下「是」,以確認刪除 Data Domain。可能需要一些時間才能完成更新。
g. Data Domain 應該不復存在。
-- 或 --
Avamar Administrator - MCS:
a. 從主要儀表板中選取「伺服器」。
b. 選取「伺服器管理」標籤。
c. 如果僅看到「位元組受保護摘要」視窗,請按一下分隔線並展開視窗,直到看到伺服器 (Avamar 和 Data Domain):

d. 選取要移除的 Data Domain。
e. 從「動作」功能表中,選取「刪除 Data Domain 系統」
f. 檢閱確認內容,確定其中有要移除的 Data Domain 名稱。
g. 按一下「是」,以確認刪除 Data Domain。可能需要一些時間才能完成更新。
h. Data Domain 應該不復存在。
14.執行手動維護週期 (即使已在步驟 12 中執行過):
a. 檢查最後一個檢查點的完成時間:
status.dpn |grep "Last checkpoint"
b. 執行 MCS 排清:
mcserver.sh --flush
範例:
mcserver.sh --flush
=== BEGIN === check.mcs (preflush)
check.mcs passed
=== PASS === check.mcs PASSED OVERALL (preflush)
Flushing Administrator Server...
Administrator Server flushed.
c. 使用新的檢查點:
avmaint checkpoint --ava --wait
在檢查點完成之前,提示不會傳回。
d. 檢查最後一個檢查點:
status.dpn |grep "Last checkpoint"
確認這與 14a 的輸出不同。
e. 驗證檢查點:
avmaint hfscheck --full --keep --ava
f. 監控 hfscheck 直到完成。
g. 一旦 hfscheck 成功完成,請使用另一個檢查點:
avmaint checkpoint --ava --wait
同樣,在檢查點完成之前,提示不會傳回。
h. 移除任何舊的檢查點:
avmaint rmcp --full --ava
Additional Information
如何手動刪除已鎖定備份:
您可以使用 UI (MCS 或 AUI) 或 CLI,來完成已鎖定備份的手動備份刪除。
1.從以下位置取用輸出內容: remove_ddr_backups ,並記下無法移除其備份的所有路徑。
0 ERROR! Exit code 116: Cannot delete client's last backup remove_ddr_backups:
Error: remove_ddr_backups:
Error: Failed to execute 'avmgr delb --path=/MC_RETIRED/test_client_A2014.01.23.16.18.41 --date=0x1CEF631A5EDEA52', result code '29696', error string 'Bad file descriptor'
Error: Failed to execute 'avmgr delb --path=/clients/test_client_B --date=0x1CEF631A5EDEB922', result code '29696', error string 'Bad file descriptor'
在此範例輸出中,這些是 /MC_RETIRED/test_client_A2014.01.23.16.18.41 和 /clients/test_client_B。
2.使用偏好的方法,移除每個用戶端的已鎖定備份:
CLI:
a. 使用 getb 命令擷取備份資訊:
avmgr getb --format=xml --incpartials --path=<full-path-to-client> |grep -i <date>
,其中 <full-path-to-client> 是範例輸出中的用戶端名稱,而 <date> 是日期欄位中的十六進位值。
範例與範例輸出:
avmgr getb --format=xml --incpartials --path=/MC_RETIRED/test_client_A2014.01.23.16.18.41 | grep -i 0x1CEF631A5EDEA52
<backuplistrec flags="20185089" labelnum="165" label="Production 2300-Virtual Servers - Production-138" created="1386739633" roothash="d244f1dd698949e71022b9c975e311913236dc87" totalbytes="25585092608.00" ispresentbytes="0.00" pidnum="3016" percentnew="0" expires="1389157200" created_prectime="0x1cef631a5edea52" partial="0" retentiontype="daily,weekly" backuptype="Full" ddrindex="1" locked="1"/>
b. 使用 delb 命令刪除備份:
avmgr delb --path=<full-path-to-client> --date=<date> --risklosingallbackups
範例與範例輸出:
avmgr delb --path=/MC_RETIRED/test_client_backup_A2014.01.23.16.18.41 --date=0x1CEF631A5EDEA52 --risklosingallbackups
1 Request succeeded
c. 重新執行 getb 命令,以確認備份已刪除:
avmgr getb --format=xml --incpartials --path=<full-path-to-client> |grep -i <date>
範例:
avmgr getb --format=xml --incpartials --path=/MC_RETIRED/test_client_A2014.01.23.16.18.41 | grep -i 0x1CEF631A5EDEA52
d. 對每個用戶端重複此操作 (用戶端列於「remove_ddr_backups」輸出)。
-- 或 --
從 Avamar Administrator - AUI:
a. 選取管理標題,然後選取資產管理。
b. 瀏覽樹狀結構,找出清單中的第一個用戶端。
c. 按一下「檢視更多」以查看與用戶端相關聯的備份。
d. 選取要刪除的備份。
e. 按一下「刪除」。
g. 出現提示時確認。
h. 對每個用戶端重複此操作 (用戶端列於「remove_ddr_backups」輸出)。
-- 或 --
從 Avamar Administrator - MCS:
a. 選取「備份和還原」。
b. 瀏覽樹狀結構,找出清單中的第一個用戶端。
c. 確保已選取「管理」,並選取「依保留」下的所有內容:
d. 按一下「擷取」。
e. 傳回備份後,以滑鼠右鍵按一下備份。
f. 選取「刪除備份」
g. 出現提示時確認。
h. 對每個用戶端重複此操作 (用戶端列於「remove_ddr_backups」輸出)。