

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 基於 Windows VSS 的應用程式一致性 Amazon EBS 快照
<a name="application-consistent-snapshots"></a>

使用 [AWS Systems Manager 執行命令](https://docs.aws.amazon.com/systems-manager/latest/userguide/run-command.html)，可對所有連接至 Amazon EC2 Windows 執行個體的 Amazon EBS 磁碟區，擷取應用程式一致性快照。快照程序會使用 Windows [磁碟區陰影複製服務 (VSS)](https://learn.microsoft.com/en-us/windows-server/storage/file-server/volume-shadow-copy-service) 來取得 VSS 感知應用程式的 EBS 磁碟區層級備份。快照包括來自這些應用程式和磁碟之間擱置中交易的資料。若需要備份所有連接的磁碟區，您不需要關閉執行個體或中斷其連結。

使用基於 VSS 的 EBS 快照無需額外付費。您只需為備份程序所建立的 EBS 快照支付費用。如需詳細資訊，請參閱 [Amazon EBS 快照收費方式為何？](https://repost.aws/knowledge-center/ebs-snapshot-billing)

**注意**  
基於 Windows VSS 的應用程式一致性快照僅受 Windows 執行個體支援。

**Topics**
+ [什麼是 IVS？](#application-consistent-snapshots-how)
+ [基於 VSS 的 Amazon EBS 快照解決方案運作方式](#how-vss-works)
+ [VSS 的先決條件](application-consistent-snapshots-prereqs.md)
+ [建立 VSS 快照](create-vss-snaps.md)
+ [疑難排解 VSS 快照](application-consistent-snapshots-troubleshooting.md)
+ [AWS VSS 解決方案的還原選項](application-consistent-snapshots-restore.md)
+ [版本歷史記錄](vss-comps-history.md)

## 什麼是 IVS？
<a name="application-consistent-snapshots-how"></a>

磁碟區陰影複製服務 (VSS) 是一種包含在 Microsoft Windows 中的備份和復原技術。當正在使用電腦檔案或磁碟區時，其可建立其備份複本或快照。如需詳細資訊，請參閱[磁碟區陰影複製服務](https://learn.microsoft.com/en-us/previous-versions/windows/it-pro/windows-server-2008-R2-and-2008/ee923636(v=ws.10)?redirectedfrom=MSDN)。

若要建立應用程式一致性快照，會涉及以下軟體元件。
+ *VSS 服務* – Windows 作業系統的一部分
+ *VSS 請求程式* – 請求建立陰影複製的軟體
+ *VSS 寫入程式* – 通常是作為應用程式 (例如 SQL Server) 的一部分提供，以確保要備份的資料集一致
+ *VSS 供應程式* – 建立基礎磁碟區陰影複本的元件

基於 Windows VSS 的 Amazon EBS 快照解決方案包含多個可協助建立備份的 Systems Manager (SSM) Run Command 文件，以及一個稱為 `AwsVssComponents` 的 [Systems Manager Distributor 套件](https://docs.aws.amazon.com/systems-manager/latest/userguide/distributor.html)，其中包括 *EC2 VSS 請求程式*和 *EC2 VSS 供應程*式。此 `AwsVssComponents` 套件必須安裝在 EC2 Windows 執行個體上，才能擷取 EBS 磁碟區的應用程式一致性快照。下圖說明這些軟體元件之間的關係。

![\[VSS 軟體元件\]](http://docs.aws.amazon.com/zh_tw/AWSEC2/latest/UserGuide/images/vss_components.png)


## 基於 VSS 的 Amazon EBS 快照解決方案運作方式
<a name="how-vss-works"></a>

用於讓應用程式一致，且基於 VSS 的 EBS 快照指令碼的程序包含下列步驟。

1. 完成[建立基於 Windows VSS 的 EBS 快照的先決條件](application-consistent-snapshots-prereqs.md)。

1. 輸入 `AWSEC2-VssInstallAndSnapshot` SSM 文件的參數，然後使用執行命令來執行此文件。如需詳細資訊，請參閱[執行 AWSEC2-VssInstallAndSnapshot 命令文件 (建議採納)](create-vss-snapshots-ssm.md#create-with-AWSEC2-VssInstallAndSnapshot)。

1. 執行個體上的 Windows VSS 服務會針對執行中的應用程式，協調所有正在進行的 I/O 操作。

1. 系統會排清所有 I/O 緩衝區，並暫時暫停所有 I/O 操作。暫停時間最多持續 10 秒。

1. 在暫停期間，系統會為連接至執行個體的所有磁碟區建立快照。

1. 系統會取消暫停，並恢復 I/O 操作。

1. 系統會將所有新建立的快照新增至 EBS 快照清單。此程序成功建立基於 VSS 的 EBS 快照時，系統一律會為其加上 **AppConsistent:true** 標記。

1. 如果您需要從快照還原，則可採用從快照建立磁碟區的標準 EBS 程序。或者，您能夠透過範例指令碼將所有磁碟區還原至執行個體 (如 [使用 AWS VSS 解決方案還原執行個體的資料](application-consistent-snapshots-restore.md) 中所述)。

# 建立基於 Windows VSS 的 EBS 快照的先決條件
<a name="application-consistent-snapshots-prereqs"></a>

您可以使用 Systems Manager Run Command AWS Backup或 Amazon Data Lifecycle Manager 建立 VSS 型 EBS 快照。以下先決條件適用所有解決方案。

**[系統要求](#vss-sys-reqs)**  
確保您的 EC2 Windows 執行個體符合建立 VSS 型快照的所有系統需求，包括支援的 Windows 作業系統、.NET 架構 AWS Tools for Windows PowerShell、PowerShell 和 AWS Systems Manager Agent 版本。

**[IAM 許可](vss-iam-reqs.md)**  
附加到 Amazon EC2 Windows 執行個體的 IAM 角色必須擁有許可，才能使用 VSS 建立應用程式一致性快照。若要授予必要許可，您可以將 `AWSEC2VssSnapshotPolicy` 受管政策附加到執行個體設定檔。

**[VSS 元件](application-consistent-snapshots-getting-started.md)**  
若要在 Windows 作業系統上建立應用程式一致快照，則必須在執行個體上安裝 `AwsVssComponents` 套件。該套件包含執行個體上的 EC2 VSS 代理程式，它可作為 EBS 磁碟區的 VSS 請求程式和 EC2 VSS 供應程式。

## 系統要求
<a name="vss-sys-reqs"></a>

**安裝 Systems Manager Agent**  
VSS 由 Systems Manager Agent 使用 PowerShell 進行協調。請確保已在 EC2 執行個體上安裝 SSM Agent `3.0.502.0` 版或更高版本。如果已在使用舊版 SSM Agent，則可利用 Run Comman 進行更新。如需詳細資訊，請參閱「AWS Systems Manager 使用者指南」**中的[針對 Amazon EC2 執行個體設定 Systems Manager](https://docs.aws.amazon.com/systems-manager/latest/userguide/systems-manager-setting-up-ec2.html) 以及[在適用於 Windows Server 的 Amazon EC2 執行個體上使用 SSM Agent](https://docs.aws.amazon.com/systems-manager/latest/userguide/ssm-agent-windows.html)。

**Amazon EC2 Windows 執行個體需求**  
執行 Windows Server 2016 和更新版本的執行個體皆支援基於 VSS 的 EBS 快照。

**.NET Framework 版本**  
`AwsVssComponents` 套件需要 .NET Framework 版本 `4.6` 或更高版本。Windows Server 2016 之前的 Windows 作業系統版本預設為 .NET Framework 的舊版本。如果您的執行個體使用舊版 .NET Framework，則必須使用 Windows 更新安裝版本 `4.6` 或更高版本。

**AWS Tools for Windows PowerShell 版本**  
確保您的執行個體執行 AWS Tools for Windows PowerShell 版本 `3.3.48.0`或更新版本。若要查看版本，請在執行個體的 PowerShell 終端中執行以下命令。  

```
C:\> Get-AWSPowerShellVersion
```
如果您需要 AWS Tools for Windows PowerShell 更新執行個體，請參閱*AWS Tools for PowerShell 《 使用者指南*》中的[安裝 AWS Tools for Windows PowerShell](https://docs.aws.amazon.com/powershell/latest/userguide/pstools-getting-set-up-windows.html) 。

**Windows PowerShell 版本**  
請確保執行個體正在執行 Windows PowerShell 主要版本 `3`、`4` 或 `5`。若要查看版本，請在執行個體的 PowerShell 終端中執行以下命令。  

```
C:\> $PSVersionTable.PSVersion
```

**PowerShell 語言模式**  
請確定您的執行個體已將 PowerShell 語言模式設定為 `FullLanguage`。如需詳細資訊，請參閱 Microsoft 文件中的 [about\$1Language\$1Modes](https://learn.microsoft.com/en-us/powershell/module/microsoft.powershell.core/about/about_language_modes?view=powershell-7.3)。

# 使用 IAM 受管政策，授予 VSS 型快照
<a name="vss-iam-reqs"></a>

AWSEC2VssSnapshotPolicy 受管政策讓 Systems Manager 可在您的 Windows 執行個體上執行以下動作：
+ 建立和標記 EBS 快照
+ 建立和標記 Amazon Machine Image (AMI)
+ 將中繼資料 (例如裝置 ID) 連接至 VSS 建立的預設快照標籤。

本主題涵蓋 VSS 受管政策的許可詳細資訊，以及如何將其連接至您的 EC2 執行個體設定檔 IAM 角色。

**Topics**
+ [AWSEC2VssSnapshotPolicy 受管政策詳細資訊](#vss-iam-manpol-AWSEC2VssSnapshotPolicy)
+ [將 VSS 快照受管政策連接至執行個體設定檔角色](#vss-snapshots-attach-policy)

## AWSEC2VssSnapshotPolicy 受管政策詳細資訊
<a name="vss-iam-manpol-AWSEC2VssSnapshotPolicy"></a>

 AWS 受管政策是 Amazon 為客戶提供的獨立政策 AWS 。 AWS 受管政策旨在授予常見使用案例的許可。您無法變更 AWS 受管政策中定義的許可。然而，您可以複製政策，並將使用其作為使用案例特定[客戶管理政策](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_managed-vs-inline.html#customer-managed-policies)的基準。

 如需 AWS 受管政策的詳細資訊，請參閱《*IAM 使用者指南*》中的 [AWS 受管政策](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_managed-vs-inline.html#aws-managed-policies)。

若要使用 **AWSEC2VssSnapshotPolicy** 受管政策，您可將其連接至已連接至 EC2 Windows 執行個體的 IAM 角色。此政策讓 EC2 VSS 解決方案可建立標籤，並將標籤新增至 Amazon Machine Image (AMI) 和 EBS 快照。若要連接政策，請參閱 [將 VSS 快照受管政策連接至執行個體設定檔角色](#vss-snapshots-attach-policy)。

### AWSEC2VssSnapshotPolicy 授予的許可
<a name="vss-iam-manpol-AWSEC2VssSnapshotPolicy-details"></a>

**AWSEC2VssSnapshotPolicy** 政策包含以下 Amazon EC2 許可，以允許 Amazon EC2 代表您建立和管理 VSS 快照。您可將此受管政策連接至用於 EC2 Windows 執行個體的 IAM 執行個體設定檔角色。
+ **ec2:CreateTags** – 將標籤新增至 EBS 快照和 AMIs，協助識別和分類資源。
+ **ec2:DescribeInstanceAttribute** – 擷取連接至目標執行個體的 EBS 磁碟區和對應之區塊型儲存設備映射。
+ **ec2:CreateSnapshots** – 建立 EBS 磁碟區的快照。
+ **ec2:CreateImage** – 從執行中的 EC2 執行個體建立 AMI。
+ **ec2:DescribeImages** – 擷取 EC2 AMI 和快照的資訊。
+ **ec2:DescribeSnapshots** – 判斷快照的建立時間和狀態，以驗證應用程式一致性。

**注意**  
若要檢視此政策的許可，請參閱「AWS 受管政策參考」**中的 [https://docs.aws.amazon.com/aws-managed-policy/latest/reference/AWSEC2VssSnapshotPolicy.html](https://docs.aws.amazon.com/aws-managed-policy/latest/reference/AWSEC2VssSnapshotPolicy.html)。

### 簡化特定使用案例的許可 - 進階
<a name="scope-down-perms"></a>

`AWSEC2VssSnapshotPolicy` 受管政策會包含您可建立 VSS 型快照之所有方式的許可。您可以建立僅包含您所需許可的自訂政策。

**使用案例：建立 AMI、使用案例：使用 AWS Backup 服務**

如果您只使用 `CreateAmi`選項，或者您只透過 AWS Backup 服務建立 VSS 型快照，則可以簡化政策陳述式，如下所示。
+ 省略由以下陳述式 ID (SID) 識別的政策陳述式：
  + `CreateSnapshotsWithTag`
  + `CreateSnapshotsAccessInstance`
  + `CreateSnapshotsAccessVolume`
+ 調整 `CreateTagsOnResourceCreation` 陳述式，如下所示：
  + 從資源中移除 `arn:aws:ec2:*:*:snapshot/*` 標籤。
  + 從 `ec2:CreateAction` 條件中移除 `CreateSnapshots`。
+ 調整 `CreateTagsAfterResourceCreation` 陳述式，以從資源中移除 `arn:aws:ec2:*:*:snapshot/*`。
+ 調整 `DescribeImagesAndSnapshots` 陳述式，以從陳述式動作中移除 `ec2:DescribeSnapshots`。

**使用案例：僅限快照**

若您不使用 `CreateAmi` 選項，則可簡化政策陳述式，如下所示。
+ 省略由以下陳述式 ID (SID) 識別的政策陳述式：
  + `CreateImageAccessInstance`
  + `CreateImageWithTag`
+ 調整 `CreateTagsOnResourceCreation` 陳述式，如下所示：
  + 從資源中移除 `arn:aws:ec2:*:*:image/*` 標籤。
  + 從 `ec2:CreateAction` 條件中移除 `CreateImage`。
+ 調整 `CreateTagsAfterResourceCreation` 陳述式，以從資源中移除 `arn:aws:ec2:*:*:image/*`。
+ 調整 `DescribeImagesAndSnapshots` 陳述式，以從陳述式動作中移除 `ec2:DescribeImages`。

**注意**  
為了確保自訂政策會如預期執行，建議您定期檢閱並納入受管政策的更新內容。

## 將 VSS 快照受管政策連接至執行個體設定檔角色
<a name="vss-snapshots-attach-policy"></a>

若要授予 VSS 型快照之許可給 EC2 Windows 執行個體，您可將 **AWSEC2VssSnapshotPolicy** 受管政策連接至執行個體設定檔角色，如下所示。請務必確保您的執行個體符合所有 [系統要求](application-consistent-snapshots-prereqs.md#vss-sys-reqs)。

**注意**  
若要使用受管政策，您的執行個體必須安裝 `AwsVssComponents` 套件版本 `2.3.1` 或更新版本。如需版本歷史記錄，請參閱 [AwsVssComponents 套件版本](vss-comps-history.md#AwsVssComponents-history)。

1. 前往 [https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/) 開啟 IAM 主控台。

1. 在導覽窗格中，選擇**角色**以查看您可存取的 IAM 角色清單。

1. 選取連接至執行個體之角色的**角色名稱**連結。這會開啟角色詳細資訊頁面。

1. 若要連接受管政策，請選擇位於清單面板右上角的**新增許可**。接著，請在下拉式清單中，選擇**連接政策**。

1. 若要簡化結果，請在搜尋列中輸入政策名稱 (`AWSEC2VssSnapshotPolicy`)。

1. 選取要連接之政策名稱旁的核取方塊，然後選擇**新增許可**。

# 管理 Windows VSS 型 EBS 快照的 VSS 元件套件
<a name="application-consistent-snapshots-getting-started"></a>

在建立 VSS 型 EBS 快照之前，請確定您的 Windows 執行個體已安裝最新版本的 VSS 元件套件。有幾種方式可以將 `AwsVssComponents` 套件安裝到現有執行個體上，如下所示：
+ (建議) [執行 AWSEC2-VssInstallAndSnapshot 命令文件 (建議採納)](create-vss-snapshots-ssm.md#create-with-AWSEC2-VssInstallAndSnapshot)。這會在每次執行時視需要自動安裝或更新。
+ [在 EC2 Windows 執行個體上手動安裝 VSS 元件](#install-vss-comps).
+ [更新 EC2 Windows 執行個體上的 VSS 元件套件](#update-vss-comps).

您也可以使用 EC2 Image Builder 建立 AMI，以使用 `aws-vss-components-windows` 受管元件安裝映像的 `AwsVssComponents` 套件。受管元件使用 AWS Systems Manager Distributor 來安裝套件。Image Builder 建立映像後，您從相關聯 AMI 啟動的每個執行個體都會安裝 VSS 套件。如需如何在安裝 VSS 套件的情況下建立 AMI 的詳細資訊，請參閱 *EC2 Image Builder 使用者指南*中的 [Windows 的 Distributor 套件受管元件](https://docs.aws.amazon.com/imagebuilder/latest/userguide/mgdcomponent-distributor-win.html)。

**Topics**
+ [手動安裝](#install-vss-comps)
+ [更新元件](#update-vss-comps)

## 在 EC2 Windows 執行個體上手動安裝 VSS 元件
<a name="install-vss-comps"></a>

您的 EC2 Windows 執行個體須已安裝 VSS 元件，您才能使用 Systems Manager 建立應用程式一致快照。如果您不執行 `AWSEC2-VssInstallAndSnapshot` 命令文件，以便在每次建立應用程式一致快照時自動安裝或更新套件，則必須手動安裝套件。

如果您打算使用以下其中一種方法，從 EC2 執行個體建立應用程式一致快照，也必須手動安裝。
+ 使用 建立 VSS 快照 AWS Backup
+ 使用 Amazon Data Lifecycle Manager 建立 VSS 快照

如果您需要執行手動安裝，我們建議您使用最新的 AWS VSS 元件套件來改善 EC2 Windows 執行個體上應用程式一致性快照的可靠性和效能。

**注意**  
若要在建立應用程式一致快照時自動安裝或更新 `AwsVssComponents` 套件，建議您使用 Systems Manager 來執行 `AWSEC2-VssInstallAndSnapshot` 文件。如需詳細資訊，請參閱[執行 AWSEC2-VssInstallAndSnapshot 命令文件 (建議採納)](create-vss-snapshots-ssm.md#create-with-AWSEC2-VssInstallAndSnapshot)。

若要在 Amazon EC2 Windows 執行個體上安裝 VSS 元件，請依照適用您偏好之環境的步驟執行。

------
#### [ Console ]

**使用 SSM Distributor 安裝 VSS 元件**

1. 在 https：//[https://console.aws.amazon.com/systems-manager/](https://console.aws.amazon.com/systems-manager/) 開啟 AWS Systems Manager 主控台。

1. 在導覽窗格中，選擇 **執行命令**。

1. 選擇 **執行命令**。

1. 在 **Command document (命令文件)** 清單中，選擇 **AWS-ConfigureAWSPackage** 旁的按鈕。

1. 在 **Command parameters (命令參數)** 中，執行以下操作：

   1. 驗證 **Action (動作)** 設為 **Install (安裝)**。

   1. 對於**名稱**，輸入 `AwsVssComponents`。

   1. 在**版本**中，輸入版本或將欄位留空，以便 Systems Manager 安裝最新版本。

1. 在 **Targets (目標)** 中，手動指定標籤或選取執行個體，以識別您要執行這項操作的執行個體。
**注意**  
如果您選取手動選取執行個體，但您預期看到的執行個體並未出現在清單上，請參閱 [https://docs.aws.amazon.com/systems-manager/latest/userguide/troubleshooting-remote-commands.html#where-are-instances](https://docs.aws.amazon.com/systems-manager/latest/userguide/troubleshooting-remote-commands.html#where-are-instances) 使用者指南*中的AWS Systems Manager 我的執行個體在哪裡？*以取得故障診斷秘訣。

1. 對於 **Other parameters (其他參數)**：
   + (選用) 在 **Comment (註解)** 中，輸入此命令的相關資訊。
   + 在 **Timeout (seconds) (逾時 (秒))** 中，指定在命令執行全面失敗之前，系統要等候的秒數。

1. (選用) 在 **Rate control (速率控制)** 中：
   + 在 **Concurrency (並行)** 中，指定可同時執行命令的執行個體數目或百分比。
**注意**  
如果您已透過選取 Amazon EC2 標籤來選取目標，而且不確定有多少執行個體會使用所選的標籤，請指定百分比來限制可同時執行文件的執行個體數目。
   + 在 **Error threshold (錯誤閾值)** 中，指定在特定數目或百分比之執行個體上的命令失敗之後，停止在其他執行個體上執行命令。例如，如果您指定三個錯誤，則 Systems Manager 會在收到第四個錯誤時停止傳送命令。仍在處理命令的執行個體也可能會傳送錯誤。

1. (選用) 在 **Output options (輸出選項)** 區段中，如果您想要將命令輸出儲存至檔案，請選取 **Enable writing to an S3 bucket (啟用寫入至 S3 儲存貯體)** 旁的按鈕。指定儲存貯體和 (選用) 字首 (資料夾) 名稱。
**注意**  
授予能力以將資料寫入至 S3 儲存貯體的 S3 許可，會是指派給執行個體之執行個體描述檔的許可，而不是執行此工作之使用者的許可。如需詳細資訊，請參閱《AWS Systems Manager 使用者指南》**中的[設定 EC2 執行個體許可](https://docs.aws.amazon.com/systems-manager/latest/userguide/setup-instance-permissions.html#instance-profile-add-permissions)。

1. (選用) 指定 **SNS notifications (SNS 通知)** 的選項。

   如需針對執行命令設定 Amazon SNS 通知的資訊，請參閱[針對 AWS Systems Manager設定 Amazon SNS 通知](https://docs.aws.amazon.com/systems-manager/latest/userguide/monitoring-sns-notifications.html)。

1. 選擇**執行**。

------
#### [ AWS CLI ]

透過以下程序，即可使用 `AwsVssComponents` 中的執行命令來下載 AWS CLI套件，並在執行個體上進行安裝。該套件安裝兩個元件：VSS 請求程式和 VSS 供應程式。系統會將這些元件複製到執行個體上的目錄，接著註冊供應程式 DLL，以將其做為 VSS 供應程式。

**若要安裝 VSS 套件**  
執行下列命令，藉此下載並安裝 Systems Manager 所需的 VSS 元件。

```
aws ssm send-command \
    --document-name "AWS-ConfigureAWSPackage" \
    --instance-ids "i-1234567890abcdef0" \
    --parameters '{"action":["Install"],"name":["AwsVssComponents"]}'
```

------
#### [ PowerShell ]

透過以下程序，即可使用 Tools for Windows PowerShell 中的執行命令來下載 `AwsVssComponents` 套件，並在執行個體上進行安裝。該套件安裝兩個元件：VSS 請求程式和 VSS 供應程式。系統會將這些元件複製到執行個體上的目錄，接著註冊供應程式 DLL，以將其做為 VSS 供應程式。

**若要安裝 VSS 套件**  
執行下列命令，藉此下載並安裝 Systems Manager 所需的 VSS 元件。

```
Send-SSMCommand `
    -DocumentName "AWS-ConfigureAWSPackage" `
    -InstanceId "i-1234567890abcdef0" `
    -Parameter @{'action'='Install';'name'='AwsVssComponents'}
```

------

### 驗證 AWS VSS 元件上的簽章
<a name="verify-ssm-comps"></a>

請使用下列程序驗證 `AwsVssComponents` 套件上的簽章。

1. 連接至 Windows 執行個體。如需詳細資訊，請參閱[使用 RDP 連線至您的 Windows 執行個體](connecting_to_windows_instance.md)。

1. 導覽至 C:\$1Program Files\$1Amazon\$1AwsVssComponents。

1. 開啟 `ec2-vss-agent.exe` 的內容選單 (按一下右鍵)，然後選擇**屬性**。

1. 導覽至**數位簽章**索引標籤，並確認簽署者的名稱是否為 Amazon Web Services Inc.

1. 使用上述步驟驗證 `Ec2VssInstaller` 和 `Ec2VssProvider.dll` 上的簽章。

## 更新 EC2 Windows 執行個體上的 VSS 元件套件
<a name="update-vss-comps"></a>

建議維持將 VSS 元件更新為最新的建議版本。在新版 `AwsVssComponents` 套件發行時，您可以透過多種不同方式更新元件。

**更新方法**
+ 您可以在發行新版本的 AWS VSS 元件[在 EC2 Windows 執行個體上手動安裝 VSS 元件](#install-vss-comps)時重複中所述的步驟。
+ 您可以將 Systems Manager State Manager 關聯設定為在 `AwsVssComponents` 套件可用時自動下載並安裝全新或更新後的 VSS 元件。
+ 您可以在使用 Systems Manager 執行 `AWSEC2-VssInstallAndSnapshot` 文件時，隨時在建立應用程式一致快照時自動安裝或更新 `AwsVssComponents` 套件。

**注意**  
建議您使用 Systems Manager 執行 `AwsVssComponents` 命令文件，其會在建立應用程式一致快照時，自動安裝或更新 `AWSEC2-VssInstallAndSnapshot` 套件。如需詳細資訊，請參閱[執行 AWSEC2-VssInstallAndSnapshot 命令文件 (建議採納)](create-vss-snapshots-ssm.md#create-with-AWSEC2-VssInstallAndSnapshot)。

若要建立 Systems Manager State Manager 關聯，請依照適用於您偏好之環境的步驟執行。

------
#### [ Console ]

當您建立 Systems Manager State Manager 關聯時，有兩種更新 `AwsVssComponents` 套件的選項，如下所示：

**解除安裝並重新安裝**  
此方法會下載並安裝套件，無需額外的先決條件。

**就地更新**  
這會執行套件的就地更新，並具有下列先決條件：  
+ 在執行個體上安裝的 SSM Agent 版本必須是版本 `3.3.808.0` 或更新版本。如需詳細資訊，請參閱《AWS Systems Manager 使用者指南》**中的[在適用於 Windows Server 的 EC2 執行個體上使用 SSM Agent](https://docs.aws.amazon.com/systems-manager/latest/userguide/ssm-agent-windows.html)。
+ 如果已指定，則 `AwsVssComponents` 套件版本必須是版本 `2.5.0` 或更新版本。早期版本不支援就地更新。
如果執行個體不符合這些先決條件，就地更新將會失敗。請改用**解除安裝並重新安裝**選項。

**若要建立 State Manager 關聯**

1. 在 https：//[https://console.aws.amazon.com/systems-manager/](https://console.aws.amazon.com/systems-manager/) 開啟 AWS Systems Manager 主控台。

1. 在導覽窗格中，選擇 **State Manager (狀態管理員)**。

   或者，如果 Systems Manager 首頁先開啟，請開啟導覽窗格，然後選擇 **State Manager**。

1. 選擇 **Create association (建立關聯)**。

1. 在 **Name** (名稱) 欄位中，輸入描述性名稱。

1. 在**文件**清單中，選擇 **AWS-ConfigureAWSPackage**。

1. 在 **Parameters** (參數) 區段中，從 **Action** (動作) 清單中選擇 **Install** (安裝)。

1. 針對**安裝類型**，選擇**解除安裝並重新安裝**或**就地更新**。

1. 在 **Name (名稱)** 欄位中，輸入 `AwsVssComponents`。可將 **Version** (版本) 和 **Additional Arguments** (其他引數) 保留為空白。

1. 在 **Targets** (目標) 區段中，選擇一個選項。
**注意**  
如果您選擇使用標籤將執行個體設為目標，且指定映射到 Linux 執行個體的標籤，則關聯會在 Windows 執行個體上執行成功，但在 Linux 執行個體上執行失敗。關聯的整體狀態會顯示為 **Failed (失敗)**。

1. 在 **Specify schedule (指定排程)** 區段中，選擇一個選項。

1. 在 **Advanced options (進階選項)** 區段中，針對 **Compliance severity (合規嚴重性)**，選擇關聯的嚴重性等級。如需詳細資訊，請參閱[了解關聯合規性](https://docs.aws.amazon.com/systems-manager/latest/userguide/compliance-about.html)。針對**變更行事曆**，請選取預先設定的變更行事曆。如需詳細資訊，請參閱 [AWS Systems Manager 變更行事曆](https://docs.aws.amazon.com/systems-manager/latest/userguide/systems-manager-change-calendar.html)。

1. 針對**比率控制**，請執行下列操作：
   + 在**並行**中，指定可同時執行命令的受管節點數目或百分比。
   + 在 **Error threshold** (錯誤閾值) 中，指定在特定數目或百分比之節點上的命令失敗之後，停止在其他受管節點上執行命令。

1. (選用) 針對**輸出選項**，若要將命令輸出儲存至檔案，請選取**啟用將輸出寫入 S3**。在方塊中輸入儲存貯體和字首 (資料夾) 名稱。

1. 選擇 **Create association** (建立關聯)，接著選擇 **Close** (關閉)。系統會嘗試在執行個體上建立關聯，並立即套用狀態。
**注意**  
如果 Windows Server 的 EC2 執行個體顯示**失敗**狀態，請確認 SSM 代理程式正在執行個體上執行，並確認執行個體已設定 Systems Manager 的 AWS Identity and Access Management (IAM) 角色。如需詳細資訊，請參閱[設定 AWS Systems Manager](https://docs.aws.amazon.com/systems-manager/latest/userguide/systems-manager-setting-up-ec2.html)。

------
#### [ AWS CLI ]

使用 [create-association](https://docs.aws.amazon.com/cli/latest/reference/ssm/create-association.html) 命令，以依照排程更新 Distributor 套件，而無需讓相關聯的應用程式離線。只會取代套件中的新檔案或更新檔案。

**若要建立 State Manager 關聯**  
執行下列命令以建立關聯。`--name` 值 (文件名稱) 一律為 `AWS-ConfigureAWSPackage`。以下命令會使用索引鍵 `InstanceIds` 來指定目標執行個體。

```
aws ssm create-association \
    --name "AWS-ConfigureAWSPackage" \
    --parameters action=Install,installationType="Uninstall and reinstall",name=AwsVssComponents \
    --targets Key=InstanceIds,Values=i-1234567890abcdef0,i-000011112222abcde
```

------
#### [ PowerShell ]

**若要建立 State Manager 關聯**  
使用 [New-SSMAssociation](https://docs.aws.amazon.com/powershell/latest/reference/items/New-SSMAssociation.html) cmdlet。

```
New-SSMAssociation `
    -Name "AWS-ConfigureAWSPackage" `
    -Parameter  @{
        "action" = "Install"
        "installationType" = "Uninstall and reinstall"
        "name" = "AwsVssComponents"
    } `
    -Target @{
        "Key" = "InstanceIds" 
        "Values" = @("i-1234567890abcdef0", "i-000011112222abcde")
    }
```

------

# 為您的 EC2 Windows 執行個體建立 VSS 型 EBS 快照
<a name="create-vss-snaps"></a>

在您符合所有 [建立基於 Windows VSS 的 EBS 快照的先決條件](application-consistent-snapshots-prereqs.md) 後，便可使用以下任一方法，從 EC2 執行個體建立 VSS 型快照。

**AWS Systems Manager 命令文件**  
[使用 Systems Manager 命令文件](create-vss-snapshots-ssm.md) 以建立 VSS 型快照。  
若要自動化備份，您可以建立使用 `AWSEC2-VssInstallAndSnapshot`命令文件的 AWS Systems Manager 維護時段任務。如需詳細資訊，請參閱*「AWS Systems Manager 使用者指南」*中的 [使用維護時段 Windows (主控台)](https://docs.aws.amazon.com/systems-manager/latest/userguide/sysman-maintenance-working.html)。

**AWS Backup**  
您可以在主控台或 CLI 中啟用 VSS， AWS Backup 以在使用 時建立 VSS 備份。如需詳細資訊，請參閱「AWS Backup 開發人員指南」**中的[建立 Windows VSS 備份](https://docs.aws.amazon.com/aws-backup/latest/devguide/windows-backups.html)。  
AWS Backup 不會在您的執行個體上自動安裝`AwsVssComponents`套件。您必須在執行個體上執行手動安裝。如需詳細資訊，請參閱[在 EC2 Windows 執行個體上手動安裝 VSS 元件](application-consistent-snapshots-getting-started.md#install-vss-comps)。

**Amazon Data Lifecycle Manager**  
您可以在快照生命週期政策中啟用前置和後置指令碼，以使用 Amazon Data Lifecycle Manager 建立 VSS 快照。如需詳細資訊，請參閱「Amazon EBS 使用者指南」**中的[自動化應用程式一致性快照](https://docs.aws.amazon.com/ebs/latest/userguide/automate-app-consistent-backups.html)。  
Amazon Data Lifecycle Manager 不會在您的執行個體上自動安裝 `AwsVssComponents` 套件。您必須在執行個體上執行手動安裝。如需詳細資訊，請參閱[在 EC2 Windows 執行個體上手動安裝 VSS 元件](application-consistent-snapshots-getting-started.md#install-vss-comps)。

# 您可以使用 Systems Manager 命令文件來建立 VSS 型快照
<a name="create-vss-snapshots-ssm"></a>

您可以使用 AWS Systems Manager 命令文件來建立 VSS 型快照。下列內容會介紹可用的命令文件，以及文件用來建立快照的執行期參數。

在您使用任何 Systems Manager 命令文件之前，請確保您已符合所有 [建立基於 Windows VSS 的 EBS 快照的先決條件](application-consistent-snapshots-prereqs.md)。

**Topics**
+ [Systems Manager VSS 快照文件的參數](#create-vss-snapshots-ssm-params)
+ [執行 Systems Manager VSS 快照命令文件](#create-vss-snapshots-ssm-methods)

## Systems Manager VSS 快照文件的參數
<a name="create-vss-snapshots-ssm-params"></a>

建立 VSS 快照的 Systems Manager 文件全部都會使用下列參數，除非另有說明：

**AmiName** (字串，選用)  
如果 **CreateAmi** 選項設定為 `True`，請指定備份所建立之 AMI 的名稱。

**description** (字串，選用)  
指定此程序所建立之快照或映像的描述。

**CollectDiagnosticLogs** (字串，選用)  
若要在快照和 AMI 建立步驟期間收集更多資訊，請將此參數設定為「`True`」。此參數的預設值為「`False`」。合併診斷日誌會儲存為 `.zip` 格式封存檔，並位於執行個體上的以下位置：  
`C:\ProgramData\Amazon\AwsVss\Logs\timestamp.zip`

**CopyOnly** (字串，選用)  
如果您除了 AWS VSS 使用原生 SQL Server 備份，執行僅限複製備份可防止 AWS VSS 中斷原生差異備份鏈。若要執行僅限複製備份操作，請將此參數設定為 `True`。  
此參數的預設值為 `False`，這會導致 AWS VSS 執行完整的備份操作。

**CreateAmi** (字串，選用)  
若要建立 VSS 型 Amazon Machine Image (AMI) 來備份您的執行個體，請將此參數設定為 `True`。此參數的預設值為 `False`，因此會改為使用 EBS 快照備份您的執行個體。  
如需從執行個體建立 AMI 的詳細資訊，請參閱[建立 Amazon EBS 支援的 AMI](creating-an-ami-ebs.md)。

**executionTimeout** (字串，選用)  
指定在執行個體上執行快照建立程序或從執行個體建立 AMI 的時間上限 (以秒為單位)。增加此逾時時間可讓命令等待更長時間，使 VSS 開始凍結並完成標記其建立的資源。此逾時僅適用於快照或 AMI 建立步驟。安裝或更新 `AwsVssComponents` 套件的初始步驟不包含在逾時中。

**ExcludeBootVolume** (字串，選用)  
若您建立快照，此設定會從備份程序中排除開機磁碟區。若要從快照中排除開機磁碟區，請將 **ExcludeBootVolume** 設定為 `True`，將 **CreateAmi** 設定為 `False`。  
如果您為備份建立 AMI，則應將此參數設定為 `False`。此參數的預設值為 `False`。

**NoWriters** (字串，選用)  
若要從快照程序中排除應用程式 VSS 寫入程式，請將此參數設定為 `True`。排除應用程式 VSS 寫入程式有助於您解決與第三方 VSS 備份元件的衝突。此參數的預設值為 `False`。  
若 `SaveVssMetadata` 為 `True`，則此參數必須設為 `False`。

**SaveVssMetadata** (字串，選用)  
若要在每個快照期間儲存 VSS 中繼資料檔案，請將此參數設定為 `True`。預設值為 `False`。這些檔案有助於深入了解備份操作中包含哪些元件或寫入器，以及每個快照的相關檔案和磁碟區。使用 VSS 還原解決方案還原 SQL 資料庫時，會使用中繼資料檔案。如需如何從 VSS 快照還原 SQL 資料庫的詳細資訊，請參閱[使用自動化 Runbook 從 AWS VSS 解決方案快照還原資料庫](https://docs.aws.amazon.com/sql-server-ec2/latest/userguide/ms-ssdb-ec2-restore-vss.html)。  
中繼資料檔案之名稱中會具有相關聯的快照集 id。您可以在執行個體的下列位置找到它們：  

```
C:\ProgramData\Amazon\AwsVss\VssMetadata\
```
+ 儲存 VSS 中繼資料檔案會需要 2.4.0 版或更新版本的 `AwsVssComponents` 套件。如果您的執行個體已安裝較舊版本，將 `SaveVssMetadata` 設定為 `True` 會導致快照建立失敗。
+ `NoWriters` 和 `SaveVssMetadata` 參數互斥。若兩者皆設為 `True`，則快照建立會失敗。

**tags** (字串，選用)  
我們建議您標記快照和映像，有助於尋找和管理資源，例如從快照清單還原磁碟區。系統會新增 `Name` 金鑰，並加上空白值，您可在其中指定要套用至輸出快照或映像的名稱。  
如果您要指定其他標籤，請在標籤之間使用分號來分隔。例如 `Key=Environment,Value=Test;Key=User,Value=TestUser1`。  
標籤索引鍵和值只能包含英數字元和下列特殊字元：`() ./\-"'@_+:={}`。
根據預設，系統會為 VSS 型快照和映像新增以下預留標籤。  
+ **裝置** – 針對 VSS 型快照，這是快照擷取之 EBS 磁碟區的裝置名稱。
+ **AppConsistent** – 此標籤表示成功建立 VSS 型快照或 AMI。
+ **AwsVssConfig** – 這會識別啟用 VSS 時所建立的快照和 AMIs。標籤會包含中繼資訊，例如 `AwsVssComponents` 版本和快照集 ID。
在您的參數清單中指定任何這些預留標籤，將會導致錯誤。

**VssVersion** (字串，選用)  
在使用 `AWSEC2-VssInstallAndSnapshot` 文件的情況下，您可以指定 `VssVersion` 參數以在執行個體上安裝特定版本的 `AwsVssComponents` 套件。將此參數保留空白，以安裝建議的預設版本。  
如果已安裝指定版本的 `AwsVssComponents` 套件，則指令碼會略過安裝步驟，並繼續進行備份步驟。如需 `AwsVssComponents` 套件版本和操作支援的清單，請參閱[AWS VSS 解決方案版本歷史記錄](vss-comps-history.md)。

## 執行 Systems Manager VSS 快照命令文件
<a name="create-vss-snapshots-ssm-methods"></a>

您可以使用 AWS Systems Manager 命令文件建立 VSS 型 EBS 快照，如下所示。

### 執行 AWSEC2-VssInstallAndSnapshot 命令文件 (建議採納)
<a name="create-with-AWSEC2-VssInstallAndSnapshot"></a>

當您使用 AWS Systems Manager 執行`AWSEC2-VssInstallAndSnapshot`文件時，指令碼會執行下列步驟。

1. 該指令碼會先在執行個體上安裝或更新 `AwsVssComponents` 套件，具體取決於是否已安裝執行個體。

1. 指令碼會在完成第一個步驟後，建立應用程式一致快照。

若要執行 `AWSEC2-VssInstallAndSnapshot` 文件，請依照適用於您偏好之環境的步驟執行。

------
#### [ Console ]

**從主控台建立建立 VSS 型 EBS 快照**

1. 在 https：//[https://console.aws.amazon.com/systems-manager/](https://console.aws.amazon.com/systems-manager/) 開啟 AWS Systems Manager 主控台。

1. 從導覽窗格中選取**執行命令**。這會顯示您帳戶中目前正在執行的命令清單 (若適用)。

1. 選擇**執行命令**。這會開啟您具有存取權限的命令文件清單。

1. 從命令文件清單中選取 `AWSEC2-VssInstallAndSnapshot`。若要簡化結果，可輸入全部或部分文件名稱。您也可以依擁有者、平台類型或標籤進行篩選。

   在您選取命令文件時，系統會將詳細資訊填入清單下方。

1. 從**文件版本**清單中選取 `Default version at runtime`。

1. 設定**命令參數**，以定義 `AWSEC2-VssInstallAndSnapshot` 如何安裝 `AwsVssComponents` 套件並使用 VSS 快照或 AMI 來備份。如需參數詳細資訊，請參閱 [Systems Manager VSS 快照文件的參數](#create-vss-snapshots-ssm-params)。

1. 針對**目標選取**，手動指定標籤或選取執行個體，以識別要執行這項操作的執行個體。
**注意**  
如果您手動選取執行個體，但預期看到的執行個體並未出現在清單中，請參閱[我的執行個體在哪裡？](https://docs.aws.amazon.com/systems-manager/latest/userguide/troubleshooting-remote-commands.html#where-are-instances)，以取得疑難排解秘訣。

1. 如需定義 Systems Manager Run Command 行為的其他參數 (例如**速率控制**)，請依照[從主控台執行命令](https://docs.aws.amazon.com/systems-manager/latest/userguide/running-commands-console.html)中的說明輸入值。

1. 選擇 **Run (執行)**。

   如果操作成功，該命令就會將新快照填入 EBS 快照清單中。您可以搜尋指定的標籤，或是搜尋 `AppConsistent`，藉此在 EBS 快照清單中找到這些快照。如果命令執行失敗，請檢視 Systems Manager 命令輸出的詳細資訊，以了解執行失敗的原因。若系統成功完成命令，但無法備份特定磁碟區，則您可以在 EBS 磁碟區清單中進行疑難排解。

------
#### [ AWS CLI ]

您可以在 中執行下列命令 AWS CLI ，以建立以 VSS 為基礎的 EBS 快照，並取得快照建立的狀態。

**建立 VSS 型 EBS 快照**  
執行下列命令，藉此建立 VSS 型 EBS 快照。若要建立快照，您必須使用 `--instance-ids` 參數來識別執行個體。如需您可以查看之其他參數的詳細資訊，請參閱 [Systems Manager VSS 快照文件的參數](#create-vss-snapshots-ssm-params)。

```
aws ssm send-command \
	--document-name "AWSEC2-VssInstallAndSnapshot" \
	--instance-ids "i-01234567890abcdef" \
	--parameters '{"ExcludeBootVolume":["False"],"description":["Description"],"tags":["Key=key_name,Value=tag_value"],"VssVersion":[""]}'
```

如果操作成功，該命令文件就會將新快照填入 EBS 快照清單中。您可以搜尋指定的標記，或是搜尋 `AppConsistent`，藉此在 EBS 快照清單中找到這些快照。如果命令執行失敗，請檢視命令輸出的詳細資訊，以了解執行失敗的原因。

**取得命令狀態**  
若要取得快照目前的狀態，請使用從 **send-command** 傳回的命令 ID 執行下列命令。

```
aws ssm get-command-invocation
	--instance-ids "i-01234567890abcdef" \
	--command-id "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111" \
	--plugin-name "CreateVssSnapshot"
```

------
#### [ PowerShell ]

使用 執行下列命令 AWS Tools for Windows PowerShell ，以建立 VSS 型 EBS 快照，並取得目前建立輸出的執行時間狀態。指定前面清單中描述的參數，以修改快照處理程序的行為。

**使用適用於 Windows PowerShell 的工具建立 VSS 型 EBS 快照**  
執行下列命令，以建立 VSS 型 EBS 快照或 AMI。

```
Send-SSMCommand -DocumentName "AWSEC2-VssInstallAndSnapshot" -InstanceId "i-01234567890abcdef" -Parameter @{'ExcludeBootVolume'='False';'description'='a_description'
	;'tags'='Key=key_name,Value=tag_value';'VssVersion'=''}
```

**取得命令狀態**  
若要取得快照目前的狀態，請使用從 **Send-SSMCommand** 傳回的命令 ID 執行下列命令。

```
Get-SSMCommandInvocationDetail -InstanceId "i-01234567890abcdef" -CommandId "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111" -PluginName "CreateVssSnapshot"
```

如果操作成功，該命令就會將新快照填入 EBS 快照清單中。您可以搜尋指定的標記，或是搜尋 `AppConsistent`，藉此在 EBS 快照清單中找到這些快照。如果命令執行失敗，請檢視命令輸出的詳細資訊，以了解執行失敗的原因。

------

### 執行 AWSEC2-CreateVssSnapshot 命令文件
<a name="create-with-AWSEC2-CreateVssSnapshot"></a>

若要執行 `AWSEC2-CreateVssSnapshot` 文件，請依照適用於您偏好之環境的步驟執行。

------
#### [ Console ]

**從主控台建立建立 VSS 型 EBS 快照**

1. 在 https：//[https://console.aws.amazon.com/systems-manager/](https://console.aws.amazon.com/systems-manager/) 開啟 AWS Systems Manager 主控台。

1. 從導覽窗格中選取**執行命令**。這會顯示您帳戶中目前正在執行的命令清單 (若適用)。

1. 選擇**執行命令**。這會開啟您具有存取權限的命令文件清單。

1. 從命令文件清單中選取 `AWSEC2-CreateVssSnapshot`。若要簡化結果，可輸入全部或部分文件名稱。您也可以依擁有者、平台類型或標籤進行篩選。

   在您選取命令文件時，系統會將詳細資訊填入清單下方。

1. 從**文件版本**清單中選取 `Default version at runtime`。

1. 設定**命令參數**，以定義如何使用 VSS 快照或 AMI 來備份 `AWSEC2-CreateVssSnapshot`。如需參數詳細資訊，請參閱 [Systems Manager VSS 快照文件的參數](#create-vss-snapshots-ssm-params)。

1. 針對**目標選取**，手動指定標籤或選取執行個體，以識別要執行這項操作的執行個體。
**注意**  
如果您手動選取執行個體，但預期看到的執行個體並未出現在清單中，請參閱[我的執行個體在哪裡？](https://docs.aws.amazon.com/systems-manager/latest/userguide/troubleshooting-remote-commands.html#where-are-instances)，以取得疑難排解秘訣。

1. 如需定義 Systems Manager Run Command 行為的其他參數 (例如**速率控制**)，請依照[從主控台執行命令](https://docs.aws.amazon.com/systems-manager/latest/userguide/running-commands-console.html)中的說明輸入值。

1. 選擇 **Run (執行)**。

   如果操作成功，該命令就會將新快照填入 EBS 快照清單中。您可以搜尋指定的標籤，或是搜尋 `AppConsistent`，藉此在 EBS 快照清單中找到這些快照。如果命令執行失敗，請檢視 Systems Manager 命令輸出的詳細資訊，以了解執行失敗的原因。若系統成功完成命令，但無法備份特定磁碟區，則您可以在 EBS 磁碟區清單中進行疑難排解。

------
#### [ AWS CLI ]

您可以在 中執行下列命令 AWS CLI ，以建立 VSS 型 EBS 快照。

**建立 VSS 型 EBS 快照**  
執行下列命令，藉此建立 VSS 型 EBS 快照。若要建立快照，您必須使用 `--instance-ids` 參數來識別執行個體。如需您可以查看之其他參數的詳細資訊，請參閱 [Systems Manager VSS 快照文件的參數](#create-vss-snapshots-ssm-params)。

```
aws ssm send-command \
	--document-name "AWSEC2-CreateVssSnapshot" \
	--instance-ids "i-01234567890abcdef" \
	--parameters '{"ExcludeBootVolume":["False"],"description":["Description"],"tags":["Key=key_name,Value=tag_value"]}'
```

如果操作成功，該命令文件就會將新快照填入 EBS 快照清單中。您可以搜尋指定的標記，或是搜尋 `AppConsistent`，藉此在 EBS 快照清單中找到這些快照。如果命令執行失敗，請檢視命令輸出的詳細資訊，以了解執行失敗的原因。

------
#### [ PowerShell ]

使用 執行下列命令 AWS Tools for Windows PowerShell ，以建立 VSS 型 EBS 快照。

**使用適用於 Windows PowerShell 的工具建立 VSS 型 EBS 快照**  
執行下列命令，藉此建立 VSS 型 EBS 快照。若要建立快照，您必須使用 `InstanceId` 參數來識別執行個體。您可以指定多個執行個體，藉此為其建立快照。如需您可以查看之其他參數的詳細資訊，請參閱 [Systems Manager VSS 快照文件的參數](#create-vss-snapshots-ssm-params)。

```
Send-SSMCommand -DocumentName AWSEC2-CreateVssSnapshot -InstanceId "i-01234567890abcdef" -Parameter @{'ExcludeBootVolume'='False';'description'='a_description'
	;'tags'='Key=key_name,Value=tag_value'}
```

如果操作成功，該命令就會將新快照填入 EBS 快照清單中。您可以搜尋指定的標記，或是搜尋 `AppConsistent`，藉此在 EBS 快照清單中找到這些快照。如果命令執行失敗，請檢視 命令輸出的詳細資訊，以了解執行失敗的原因。若系統成功完成命令，但無法備份特定磁碟區，則您可以在 EBS 快照清單中進行疑難排解。

------

### 使用共用 EBS 儲存體，為 Windows 容錯移轉叢集執行命令文件
<a name="create-vss-win-failover-cluster"></a>

可以使用上一節所述的任何命令列程序來建立 VSS 型快照。命令文件 (`AWSEC2-VssInstallAndSnapshot` 或 `AWSEC2-CreateVssSnapshot`) 必須在叢集中的主節點上執行。次要節點上的文件將會失敗，因為其無法存取共用磁碟。如果您的主要和次要變更是動態變更，您可以在多個節點上執行 AWS Systems Manager Run Command 文件，預期該命令會在主要節點上成功，並在次要節點上失敗。

**注意**  
若要自動化備份，您可以建立使用 `AWSEC2-VssInstallAndSnapshot` 文件的 AWS Systems Manager 維護時段任務。如需詳細資訊，請參閱*「AWS Systems Manager 使用者指南」*中的 [使用維護時段 Windows (主控台)](https://docs.aws.amazon.com/systems-manager/latest/userguide/sysman-maintenance-working.html)。

# 疑難排解基於 Windows VSS 的 EBS 快照
<a name="application-consistent-snapshots-troubleshooting"></a>

在嘗試任何其他疑難排解步驟之前，建議您先確認下列詳細資料。
+ 確保您符合所有 [建立基於 Windows VSS 的 EBS 快照的先決條件](application-consistent-snapshots-prereqs.md)。
+ 確認您使用您作業系統適用的 `AwsVssComponents` 套件最新 [支援 Windows OS 版本](vss-comps-history.md#windows-version-support)。您觀察到的問題可能已在較新版本中得到解決。

**Topics**
+ [檢查日誌檔](#general-log-files)
+ [收集其他診斷日誌](#vss-ts-collect-diagnostic-logs)
+ [在已設定代理的執行個體上使用 VSS](#general-using-vss-with-proxy)
+ [錯誤：Thaw 管道連線逾時、Thaw 發生錯誤、VSS Freeze 等候逾時或其他逾時錯誤](#error-thaw)
+ [錯誤：無法叫用方法。僅在此語言模式下的核心類型上支援方法調用](#error-invoke)

## 檢查日誌檔
<a name="general-log-files"></a>

如果建立基於 VSS 的 EBS 快照時遇到問題或收到錯誤訊息，則可在 Systems Manager 主控台中檢視命令輸出。

對於建立 VSS 快照的 Systems Manager 文件，您可以在執行時期將 `CollectDiagnosticLogs` 參數設定為「`True`」。當 `CollectDiagnosticLogs` 參數設定為「`True`」時，VSS 會收集其他日誌來協助偵錯。如需詳細資訊，請參閱[收集其他診斷日誌](#vss-ts-collect-diagnostic-logs)。

如果您收集診斷日誌，Systems Manager 文件會將其儲存在以下位置的執行個體：`C:\ProgramData\Amazon\AwsVss\Logs\timestamp.zip`。`CollectDiagnosticLogs` 參數的預設值為「`False`」。

**注意**  
如需其他偵錯說明，您可以將`.zip`檔案傳送到 支援。

無論您是否收集診斷日誌檔，都可以使用下列其他日誌檔：
+ `%ProgramData%\Amazon\SSM\InstanceData\InstanceID\document\orchestration\SSMCommandID\awsrunPowerShellScript\runPowerShellScript\stdout`
+ `%ProgramData%\Amazon\SSM\InstanceData\InstanceID\document\orchestration\SSMCommandID\awsrunPowerShellScript\runPowerShellScript\stderr`

您也可以開啟事件檢視器 Windows 應用程式，然後選擇 ** Windows 日誌 **、**應用程式**來檢視其他日誌。若要特別查看 EC2 Windows VSS 供應程式和磁碟區陰影複製服務的事件，請依條款 **Ec2VssSoftwareProvider** 和 **VSS** 的**來源**進行篩選。

如果您正透過 VPC 端點使用 Systems Manager，且 Systems Manager [send-command](https://docs.aws.amazon.com/cli/latest/reference/ssm/send-command.html) API 動作 (主控台的 **Run Command**) 失敗，請確認已正確設定下列端點：**com.amazonaws.*region*.ec2**。

如果沒有定義 Amazon EC2 端點，則用來列舉所連接 EBS 磁碟區的呼叫會失敗，進而導致 Systems Manager 命令失敗。如需有關使用 Systems Manager 設定 VPC 端點的詳細資訊，請參閱*「AWS Systems Manager 使用者指南」*中的[建立 Virtual Private Cloud 端點](https://docs.aws.amazon.com/systems-manager/latest/userguide/setup-create-vpc.html)。

## 收集其他診斷日誌
<a name="vss-ts-collect-diagnostic-logs"></a>

若要在使用 Systems Manager 發送命令執行 VSS 快照文件時，收集其他診斷日誌，請在執行時期將 `CollectDiagnosticLogs` 輸入參數設定為「`True`」。我們建議您在疑難排解時將此參數設定為「`True`」。

若要檢視命令列範例，請選取下列其中一個索引標籤。

------
#### [ AWS CLI ]

以下範例在 AWS CLI執行 `AWSEC2-CreateVssSnapshot` Systems Manager 文件：

```
aws ssm send-command \ 
    --document-name "AWSEC2-CreateVssSnapshot" \
    --instance-ids "i-1234567890abcdef0" \
    --parameters '{"description":["Example - create diagnostic logs at runtime."],"tags":["Key=tag_name,Value=tag_value"],"CollectDiagnosticLogs":["True"]}'
```

------
#### [ PowerShell ]

以下範例在 PowerShell 執行 `AWSEC2-CreateVssSnapshot` Systems Manager 文件：

```
Send-SSMCommand `
    -DocumentName "AWSEC2-CreateVssSnapshot" `
    -InstanceId "i-1234567890abcdef0" `
    -Parameter @{'description'='Example - create diagnostic logs at runtime.';'tags'='Key=tag_name,Value=tag_value';'CollectDiagnosticLogs'='True'}
```

------

## 在已設定代理的執行個體上使用 VSS
<a name="general-using-vss-with-proxy"></a>

如果在使用代理連線 EC2 端點的執行個體上建立基於 VSS 的 EBS 快照時發生問題，請確認執行個體的下列設定：
+ 確認代理已設定，以便以 SYSTEM 身分 AWS Tools for Windows PowerShell 執行，以存取執行個體區域和 IMDS 中的 EC2 服務端點。
+ 若要支援使用系統設定的 WinHTTP Proxy，請確定您已在執行個體安裝最新 `AwsVssComponents` 版本。如需設定 WinHTTP 代理的詳細資訊，請前往 Microsoft 網站參閱 [Windows 超文字傳輸通訊協定 (WINHTTP) 的 Netsh 命令](https://learn.microsoft.com/en-us/previous-versions/windows/it-pro/windows-server-2008-r2-and-2008/cc731131(v=ws.10))。

## 錯誤：Thaw 管道連線逾時、Thaw 發生錯誤、VSS Freeze 等候逾時或其他逾時錯誤
<a name="error-thaw"></a>

EC2 Windows VSS 供應程式可能會因為執行個體上的活動或服務導致基於 VSS 的 EBS 快照無法及時進行而逾時。Windows VSS 架構會提供無法設定的 10 秒時段，暫停與檔案系統的通訊。在這段期間，`AWSEC2-CreateVssSnapshot` 會對磁碟區執行快照。

下列問題可能造成 EC2 Windows VSS 供應程式在快照期間遇到時間限制：
+ 磁碟區的過多 I/O
+ 執行個體上的 EC2 API 回應緩慢
+ 分段的磁碟區
+ 與某些防毒軟體不相容
+ VSS 應用程式寫入器的問題
+ 當大量 PowerShell 模組啟用模組記錄時，可能會導致 PowerShell 指令碼執行緩慢

執行 `AWSEC2-CreateVssSnapshot` 命令文件時遇到的大部分逾時問題是與備份時執行個體的工作負載過高相關。下列動作可協助您成功建立快照：
+ 重試 `AWSEC2-CreateVssSnapshot` 命令來查看快照是否成功。若在某些情況下重試成功，減少執行個體負載可能使快照更加成功。
+ 等候一段時間，待執行個體上的工作負載減少，再重試 `AWSEC2-CreateVssSnapshot` 命令。或者，您可以在執行個體處於低壓力時嘗試快照。
+ 當系統上的防毒軟體關閉時，請嘗試 VSS 快照。若這樣可解決問題，請見防毒軟體說明，並將其設定為允許 VSS 快照。
+ 如果您的帳戶在執行快照的相同區域內出現大量 Amazon EC2 API 呼叫，則 API 限流可能會延遲快照作業。若要減少限流影響，請使用最新 `AwsVssComponents` 套件。此套件利用 EC2 `CreateSnapshots` API 動作來減少每磁碟區快照建立和標記等變更動作的數量。
+ 如果您同時執行多個 `AWSEC2-CreateVssSnapshot` 命令指令碼，您可以採取下列步驟來減少並行問題。
  + 請考慮在 API 活動較低期間安排快照時間。
  + 如果您在 Systems Manager 主控台 (或 API 中的 **SendCommand**) 使用 **Run Command** 來執行命令指令碼，您可以使用 Systems Manager 速率控制來減少並行。

    您也可以使用 Systems Manager 速率控制來減少服務並行 AWS Backup ，例如使用 Systems Manager 執行命令指令碼的服務。
+ 在 Shell 中執行命令 `vssadmin list writers`，並查看是否有回報系統上任何寫入器的**上次錯誤**欄位中任何錯誤。如有任何寫入器回報**逾時**錯誤，請考慮在執行個體負載較少時重試快照。
+ 當您使用較小的執行個體類型 (例如 *t2 \$1 t3 \$1 t3a*.nano 或 *t2 \$1 t3 \$1 t3a*.micro)，可能會因記憶體和 CPU 限制而發生逾時。下列動作可能有助於減少逾時問題。
  + 在建立快照之前，請嘗試關閉記憶體或 CPU 密集型應用程式。
  + 嘗試在執行個體活動較低期間建立快照。

## 錯誤：無法叫用方法。僅在此語言模式下的核心類型上支援方法調用
<a name="error-invoke"></a>

當 PowerShell 語言模式未設定為 `FullLanguage` 時，您將會遇到此錯誤。`AWSEC2-CreateVssSnapshot` SSM 文件需要將 PowerShell 設定為 `FullLanguage` 模式。

若要確認語言模式，請在 PowerShell 主控台中的執行個體上執行以下命令：

```
$ExecutionContext.SessionState.LanguageMode
```

如需語言模式的詳細資訊，請參閱 Microsoft 文件中的 [about\$1Language\$1Modes](https://learn.microsoft.com/en-us/powershell/module/microsoft.powershell.core/about/about_language_modes)。

# 使用 AWS VSS 解決方案還原執行個體的資料
<a name="application-consistent-snapshots-restore"></a>

您可以從 VSS 解決方案建立的 VSS 型快照還原 Windows 執行個體的 AWS EBS 磁碟區。如果您的 AWS VSS 解決方案快照包含 Microsoft SQL Server 資料庫的備份，您可以使用 `AWSEC2-RestoreSqlServerDatabaseWithVss` AWS Systems Manager Automation Runbook 還原資料庫。

資料庫還原執行手冊可自動執行整個還原程序，包括透過快照建立磁碟區，以及將其連接至執行個體。自動化可善用 VSS 技術來還原資料庫，從而讓您在還原時無需停止 SQL Server 應用程式，或者中斷任何作用中連線。

若要了解如何使用 Microsoft SQL Server 資料庫執行手冊的詳細說明，請參閱 *Microsoft SQL Server on Amazon EC2 使用者指南*中的[透過基於 VSS 的快照進行還原](https://docs.aws.amazon.com/sql-server-ec2/latest/userguide/ms-ssdb-ec2-restore-vss.html)。

## 自訂指令碼以從 AWS VSS 解決方案快照還原 EBS 磁碟區
<a name="vss-restore-script"></a>

您可以使用`RestoreVssSnapshotSampleScript.ps1`指令碼做為模型，建立自己的自訂指令碼，從 AWS VSS 解決方案快照還原 EBS 磁碟區。範例指令碼會執行以下任務：
+ 停止執行個體
+ 移除執行個體上的所有現有磁碟機 (若已排除開機磁碟區，則其將不會涵蓋在內)
+ 從快照建立新的磁碟區
+ 使用快照上的裝置 ID 標記來將磁碟區連接至執行個體
+ 重新啟動執行個體

**重要**  
下列指令碼會分離所有連接至執行個體的磁碟區，然後從快照建立新的磁碟區。請確認您已正確地備份執行個體。系統不會刪除舊的磁碟區。如果您想刪除舊磁碟區，則可編輯指令碼。

**從基於 VSS 的 EBS 快照還原磁碟區**

1. 下載 [RestoreVssSnapshotSampleScript.zip](https://docs.aws.amazon.com/systems-manager/latest/userguide/samples/RestoreVssSnapshotSampleScript.zip) 檔案，並解壓縮檔案內容。

1. 在文字編輯器中開啟 `RestoreVssSnapshotSampleScript.ps1`，並編輯指令碼底端的範例呼叫，加上有效的 EC2 執行個體 ID 和 EBS 快照 ID，然後從 PowerShell 執行指令碼。

# AWS VSS 解決方案版本歷史記錄
<a name="vss-comps-history"></a>

此頁面包含依 AWS VSS 元件套件版本列出的版本備註，以及每個 Windows Server 支援版本的元件和指令碼版本需求。

**Topics**
+ [AwsVssComponents 套件版本](#AwsVssComponents-history)
+ [支援 Windows OS 版本](#windows-version-support)

## AwsVssComponents 套件版本
<a name="AwsVssComponents-history"></a>

下表說明 AWS VSS 元件套件的發行版本。


| 版本 | 詳細資訊 | 發行日期 | 可下載 | 
| --- | --- | --- | --- | 
| 2.5.1 |  修正了 SQL 資料庫還原在指定目標資料庫參數時可能出現故障的情況。  | 2025 年 3 月 13 日 | 是 | 
| 2.5.0 |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_tw/AWSEC2/latest/UserGuide/vss-comps-history.html)  | 2025 年 1 月 17 日 | 是 | 
| 2.4.0 |  新增功能以在建立快照時儲存 VSS 中繼資料檔案。若要啟用此功能，請參閱 [Systems Manager VSS 快照文件的參數](create-vss-snapshots-ssm.md#create-vss-snapshots-ssm-params) 的 SaveVssMetadata。  | 2024 年 10 月 7 日 | 是 | 
| 2.3.3 |  已更新 VSS 代理程式，以確保在建立快照期間使用 `Ec2VssProvider`。  | 2024 年 6 月 25 日 | 是 | 
| 2.3.2 |  已修正在解除安裝時未移除 VSS 提供者註冊的情況。  | 2024 年 5 月 9 日 | 是 | 
| 2.3.1 |  新增了新的預設標籤`AwsVssConfig`，以識別 AWS VSS 建立的快照和 AMIs。  | 2024 年 3 月 7 日 | 是 | 
| 2.2.1 |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_tw/AWSEC2/latest/UserGuide/vss-comps-history.html)  | 2024 年 1 月 18 日 | 是 | 
| 2.1.0 |  已新增 `CreateSnapshots` API 使用支援。  | 2023 年 11 月 6 日 | 是 | 
| 2.0.1 |  新增 WinHTTP 代理設定的使用支援。  | 2023 年 10 月 26 日 | 否 | 
| 2.0.0 |  為 AWS VSS 元件新增了建立快照和 AMIs 的功能，可相容於 PowerShell 模組記錄、指令碼區塊記錄和轉錄功能。  | 2023 年 4 月 28 日 | 否 | 
| 1.3.2.0 |  修復了未正確報告安裝失敗的情況。  | 2022 年 5 月 10 日 | 否 | 
| 1.3.1.0 |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_tw/AWSEC2/latest/UserGuide/vss-comps-history.html)  | 2020 年 2 月 6 日 | 是 | 
| 1.3.00 |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_tw/AWSEC2/latest/UserGuide/vss-comps-history.html)  | 2019 年 3 月 19 日 | 否 | 
| 1.2.00 |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_tw/AWSEC2/latest/UserGuide/vss-comps-history.html)  | 2018 年 11 月 15 日 | 否 | 
| 1.1 | 已修正做為預設 Windows Backup and Restore 提供者不正確使用的 AWS VSS 元件。 | 2017 年 12 月 12 日 | 否 | 
| 1.0 | 初始版本。 | 2017 年 11 月 20 日 | 否 | 

## 支援 Windows OS 版本
<a name="windows-version-support"></a>

下表顯示您應該在 Amazon EC2 上的每個 Windows Server 版本上執行的 AWS VSS 解決方案版本。


| Windows Server 版本 | AwsVssComponents 版本 | AWSEC2-VssInstallAndSnapshot 版本名稱 | AWSEC2-CreateVssSnapshot 版本名稱 | 
| --- | --- | --- | --- | 
| Windows Server 2025 | 預設 | 預設 | 預設 | 
| Windows Server 2022 | 預設 | 預設 | 預設 | 
| Windows Server 2019 | 預設 | 預設 | 預設 | 
| Windows Server 2016 | 預設 | 預設 | 預設 | 
| Windows Server 2012 R2 | 2.1.0 | 不支援 | 2012R2 | 
| Windows Server 2012 | 2.1.0 | 不支援 | 2012R2 | 
| Windows Server 2008 R2 | 1.3.1.0 | 不支援 | 2008R2 | 