

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

# 了解 RFC 更新 CTs和 CloudFormation 範本偏離偵測
<a name="ex-rfc-updates-and-dd"></a>

在 AMS 中佈建的資源使用修改過的 CloudFormation 範本。如果資源直接透過服務的 AWS 管理主控台變更參數，則該資源的 CloudFormation 建立記錄會變得不同步。如果發生這種情況，且您嘗試使用 AMS 更新變更類型來更新 AMS 中的資源，則 AMS 會參考原始資源組態，並可能重設變更的參數。此重設可能會損壞，因此如果偵測到任何額外的 AMS 組態變更，AMS 會不允許具有更新變更類型的 RFCs。

如需更新變更類型的清單，請使用 主控台篩選條件。

## 漂移修復FAQs
<a name="drift-remeditate-faqs"></a>

AMS 漂移修復的問題和答案。您可以使用兩種變更類型來啟動偏離修復，一種是執行模式=手動或「需要檢閱」，另一種是執行模式=自動。

### 漂移修復支援的資源 (ct-3kinq0u4l33zf)
<a name="drift-remeditate-faqs-sr"></a>

這些是漂移修復變更類型 (ct-3kinq0u4l33zf) 支援的資源。  若要修復任何資源，請改用「需要檢閱」(ct-34sxfo53yuzah) 變更類型。

```
AWS::EC2::Instance
AWS::EC2::SecurityGroup
AWS::EC2::VPC
AWS::EC2::Subnet
AWS::EC2::NetworkInterface
AWS::EC2::EIP
AWS::EC2::InternetGateway
AWS::EC2::NatGateway
AWS::EC2::NetworkAcl
AWS::EC2::RouteTable
AWS::EC2::Volume
AWS::AutoScaling::AutoScalingGroup
AWS::AutoScaling::LaunchConfiguration
AWS::AutoScaling::LifecycleHook
AWS::AutoScaling::ScalingPolicy
AWS::AutoScaling::ScheduledAction
AWS::ElasticLoadBalancing::LoadBalancer
AWS::ElasticLoadBalancingV2::Listener
AWS::ElasticLoadBalancingV2::ListenerRule
AWS::ElasticLoadBalancingV2::LoadBalancer
AWS::CloudWatch::Alarm
```

### 偏離修復變更類型
<a name="drift-remeditate-faqs-cts"></a>

有關使用 AMS 偏離修復變更類型的問答。

如需偏離修補功能的支援資源清單，請參閱 [漂移修復支援的資源 (ct-3kinq0u4l33zf)](#drift-remeditate-faqs-sr)。

**重要**  
漂移修復會修改堆疊範本和/或參數，而且必須更新本機範本儲存庫或更新這些堆疊的任何自動化，才能使用最新的堆疊範本和參數。使用舊範本和/或參數而不同步可能會導致基礎資源的變更受損。  
不需要的檢閱、自動化、CT (ct-3kinq0u4l33zf) 支援每個 RFC 僅修復 10 個資源。若要以 10 個批次修復剩餘的資源，請建立新的 RFCs，直到所有資源都修復為止。

我應該使用哪種偏離修復變更類型？  
在以下情況下，我們建議您使用**不需要檢閱**的自動化 CT (ct-3kinq0u4l33zf)：  
+ 您嘗試使用自動化 CT 執行現有堆疊資源的更新，而 RFC 會被拒絕，因為堆疊是 `DRIFTED`。
+ 您過去曾使用更新 CT，但因為堆疊已 DRIFTED 而失敗。您不需要再次嘗試更新，可以改用檢閱所需的手動 CT。
我們建議只在漂移修復不支援漂移資源類型時，才使用**所需的檢閱**手動 CT (ct-34sxfo53yuzah)，不需要檢閱、自動化、CT (ct-3kinq0u4l33zf)，或漂移修復不需要檢閱、自動化、CT 失敗。

修補期間對堆疊執行哪些變更？  
修復需要更新堆疊範本和/或參數，具體取決於漂移的屬性。修補也會在修補期間更新堆疊的堆疊政策，並在修補完成後將堆疊政策還原至先前的值。

如何查看對堆疊範本和/或參數執行的變更？  
在 RFC 的回應中，會提供變更摘要，其中包含下列資訊：  
+ `ChangeSummaryJson`：包含堆疊範本和/或參數的變更摘要，做為偏離修復的一部分。修補會以多個階段執行。此變更摘要包含個別階段的變更。如果修復成功，請檢查最後一個階段的變更。如需依順序執行的階段，請參閱 JSON 中的 ExecutionPlan。例如，存在時的 RestoreReferences 區段一律在結尾執行，並包含修正後變更的 JSON。如果修復是在 DryRun 模式下執行，則這些變更都不會套用至堆疊。
+ `PreRemediationStackTemplateAndConfigurationJson`：在堆疊上觸發修復之前，包含 CloudFormation Stack 的組態快照，包括範本、參數、輸出、StackPolicyBody。

執行修復之後，我需要做什麼？  
您需要使用 RFC 摘要中提供的最新範本和參數，更新本機範本儲存庫或任何會更新修復堆疊的自動化。請務必這麼做，因為使用舊範本和/或參數可能會對堆疊資源造成進一步的破壞性變更。

在此修復期間，我的應用程式是否會生效？  
修復是一種離線程序，僅在 CloudFormation 堆疊組態上執行。不會對基礎資源執行更新。

在修復之後，我可以繼續使用管理 \$1 其他 \$1 其他 RFCs 對資源執行更新嗎？  
我們建議您一律使用可用的自動更新 CTs執行堆疊資源的更新。當可用的更新 CTs不支援您的使用案例時，請使用管理 \$1 其他 \$1 其他請求。

修補是否在堆疊中建立新的資源？  
修復不會在堆疊中建立新的資源。不過，修補會建立新的輸出並更新堆疊範本[中繼資料](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html)區段，以存放修補摘要供您參考。

修復永遠成功嗎？  
修復需要仔細分析和驗證範本組態，以判斷是否可以執行。在這些驗證失敗的情況下，修復程序會停止，且堆疊範本或參數不會進行任何變更。此外，只能對支援的資源類型執行修復。

如果修復不成功，如何執行堆疊資源的更新？  
您可以使用 管理 \$1 其他 \$1 其他 \$1 更新 CT (ct-0xdawir96cy7k) 來請求變更。AMS 會監控這類案例，並致力於改善修補解決方案。

我可以修復同時具有支援和不支援資源類型的堆疊嗎？  
是。不過，只有在堆疊中找到支援的資源類型時，才會執行修復。如果任何不支援的資源類型為 DRIFTED，則不會繼續修復。

對於透過非 CFN 擷取 CTs 建立的堆疊，是否可以請求修復？  
是。無論用於建立堆疊的變更類型為何，都可以在堆疊上執行修補。

我是否可以知道在修復之前將對堆疊執行的變更？  
是。這兩種變更類型都提供 **DryRun** 選項，您可以用來請求在堆疊修復時執行的變更。不過，最終修復變更可能會因修復時堆疊上存在的偏離而有所不同。