取消佈建或刪除 Azure 檔案同步伺服器端點

移除伺服器端點表示停止該伺服器位置與相同同步處理群組中雲端端點 (Azure 檔案共用) 的同步處理。 在取消佈建伺服器端點之前,您必須採取幾個步驟來維護資料完整性和可用性。 本文涵蓋數個取消佈建方法和適當的指引 (依案例排序)。 遵循最適合您的使用案例步驟。

如果永久遺失您目前同步處理的資料也沒有關係,您可以略過以直接取消佈建您的伺服器端點。

警告

請勿透過取消佈建伺服器端點來嘗試解決同步問題。 如需疑難排解說明,請參閱疑難排解 Azure 檔案同步。若刪除伺服器端點而未使伺服器或雲端完全與另一端同步,則可能會發生永久資料遺失。 移除伺服器端點是破壞性作業,而且重新建立伺服器端點之後,伺服器端點內的階層式檔案並不會「重新連接」至其在 Azure 檔案共用的位置,進而導致同步錯誤。 另外,位在伺服器端點命名空間外部的階層式檔案可能會永久遺失。 即使從未啟用雲端階層,伺服器端點仍可能有階層式檔案存在。

案例 1:您想要刪除伺服器端點,並停止使用您的本機伺服器/VM

這裡的目標是要確保您的資料在您的雲端端點中處於最新狀態。 若要改為讓您的完整檔案集合在您的伺服器端點中保持最新狀態,請參閱案例 2:您想要刪除伺服器端點,並停止使用這個特定 Azure 檔案共用

屬於此類別的一些使用案例包括:

  • 移轉至 Azure 檔案共用
  • 進入無伺服器
  • 停止使用特定伺服器端點路徑,同時讓其餘的同步處理群組保持不變

在此案例中,刪除伺服器端點之前需要執行三個步驟:移除使用者存取權、起始特殊的 VSS 上傳工作階段,以及等候最後的同步處理工作階段完成。

移除伺服器端點的使用者存取權

在取消佈建伺服器端點之前,您必須確定伺服器上的所有變更都可以同步至雲端。 讓雲端跟上同步的第一個步驟,是移除伺服器端點上檔案和資料夾更多變更的機會。

移除存取權表示停機時間。 若要減少停機時間,您也可以考慮將使用者存取權重新導向至您的雲端端點。

為您自己的記錄,記錄移除使用者存取權的日期和時間,然後移至下一個區段。

起始特殊磁碟區快照集服務 (VSS) 上傳工作階段

Azure 檔案同步每天都會在伺服器上建立一個暫時的 VSS 快照集,用以同步具有開啟控制代碼的檔案。 為了確保您的最後一個同步處理工作階段會上傳最新的資料,並減少每個項目的錯誤,請起始 VSS 上傳的特殊工作階段。 這也會觸發在拍攝快照集之後開始的特殊同步處理上傳工作階段。

若要這樣做,請開啟本機伺服器上的 [工作排程器],瀏覽至 Microsoft\StorageSync,以滑鼠右鍵按一下 VssSyncScheduledTask 工作,然後選取 [執行]

重要

記下您完成此步驟的日期和時間。 您在下一節將會用到此號碼。

A screenshot of scheduling a VSS upload session.

等候最後的同步處理上傳工作階段完成

若要確保最新的資料位於雲端中,您必須等候最後一個同步處理上傳工作階段完成。

若要檢查同步處理工作階段的狀態,請開啟本機伺服器上的 [事件檢視器]。 瀏覽至遙測事件記錄檔 (Applications and Services\Microsoft\FileSync\Agent)。 確定您在手動起始 VSS 上傳工作階段之後,看到具有 'sync direction' = upload、'HResult' = 0 和 'PerItemErrorCount' = 0 的 9102 事件。

A screenshot of checking if a final sync session has completed.

如果 'PerItemErrorCount' 大於 0,則檔案無法同步。使用 FileSyncErrorsReport.ps1 查看無法同步的檔案。此 PowerShell 指令碼通常位於這個已安裝 Azure 檔案同步代理程式的伺服器路徑上:C:\Program Files\Azure\StorageSyncAgent\FileSyncErrorsReport.ps1

如果這些檔案並不重要,您可以刪除伺服器端點。 如果這些檔案很重要,請修正其錯誤並且在刪除伺服器端點之前,等候具有 'sync direction' = upload、'HResult' = 0 和 'PerItemErrorCount' = 0 的另一個 9102 事件。

案例 2:您想要刪除伺服器端點,並停止使用此特定 Azure 檔案共用

這裡的目標是要確保您的資料在本機伺服器/VM 中保持最新狀態。 若要改為讓您的完整檔案集合在您的雲端端點中保持最新狀態,請參閱案例 1:您想要刪除伺服器端點,並停止使用您的本機伺服器/VM

針對此案例,請在刪除伺服器端點之前採取四個步驟:停用雲端階層處理、重新叫用階層式檔案、起始雲端變更偵測,並等候最後的同步處理工作階段完成。

停用雲端階層處理

針對您想要取消佈建並停用雲端階層處理的伺服器端點,瀏覽至 [伺服器端點屬性] 中的雲端階層處理區段。

重新叫用所有階層式檔案

即使已停用雲端階層處理,您還是需要重新叫用所有階層式檔案,以確保每個檔案都儲存在本機。

在您重新叫用任何檔案之前,請確定您在本機有足夠的可用空間來儲存所有檔案。 您的可用空間必須大約是雲端中的 Azure 檔案共用大小減去伺服器上的快取大小。

使用 Invoke-StorageSyncFileRecall PowerShell Cmdlet 並且指定 SyncGroupName 參數以重新叫用所有檔案。

Invoke-StorageSyncFileRecall -SyncGroupName "samplesyncgroupname" -ThreadCount 4

此 Cmdlet 完成執行之後,可以移動到下一個區段。

起始雲端變更偵測

在雲端中起始變更偵測,可確保您的最新變更已同步。

您可以使用 Invoke-AzStorageSyncChangeDetection Cmdlet 來起始變更偵測:

Invoke-AzStorageSyncChangeDetection -ResourceGroupName "myResourceGroup" -StorageSyncServiceName "myStorageSyncServiceName" -SyncGroupName "mySyncGroupName" -CloudEndpointName "myCloudEndpointGUID"

此步驟可能需要一些時間才能完成。

重要

一旦此起始的雲端變更偵測掃描完成,請記下其完成的日期和時間。 下一節會用到。

等候最後的同步處理工作階段完成

為了確保您的資料在本機伺服器上是最新的,您需要等候最後一個同步處理上傳工作階段完成。

若要檢查這一點,請移至本機伺服器上的 [事件檢視器]。 瀏覽至遙測事件記錄檔 (Applications and Services\Microsoft\FileSync\Agent)。 確定您在日期/時間雲端變更偵測完成之後,看到具有 'sync direction' = download、'HResult' = 0 和 'PerItemErrorCount' = 0 的 9102 事件。

A screenshot of checking if a final sync session has completed.

如果 'PerItemErrorCount' 大於 0,則檔案無法同步。使用 FileSyncErrorsReport.ps1 查看無法同步的檔案。此 PowerShell 指令碼通常位於這個已安裝 Azure 檔案同步代理程式的伺服器路徑上:C:\Program Files\Azure\StorageSyncAgent\FileSyncErrorsReport.ps1

如果這些檔案並不重要,您可以刪除伺服器端點。 如果這些檔案很重要,請修正其錯誤並且在刪除伺服器端點之前,等候具有 'sync direction' = download、'HResult' = 0 和 'PerItemErrorCount' = 0 的另一個 9102 事件。

後續步驟