本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
了解 RFC 更新 CTs和 CloudFormation 範本偏離偵測
在 AMS 中佈建的資源使用修改過的 AWS CloudFormation 範本。如果資源直接透過服務的 AWS 管理主控台變更參數,則該資源的 CloudFormation 建立記錄會變得不同步。如果發生這種情況,且您嘗試使用 AMS 更新變更類型來更新 AMS 中的資源,則 AMS 會參考原始資源組態,並可能重設變更的參數。此重設可能會損壞,因此如果偵測到任何額外的 AMS 組態變更,AMS 會不允許具有更新變更類型的 RFCs。
如需更新變更類型的清單,請使用 主控台篩選條件。
漂移修復FAQs
AMS 漂移修復的問題和答案。您可以使用兩種變更類型來啟動偏離修復,一種是執行模式=手動或「需要檢閱」,另一種是執行模式=自動。
漂移修復支援的資源 (ct-3kinq0u4l33zf)
這些是漂移修復變更類型 (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
偏離修復變更類型
有關使用 AMS 偏離修復變更類型的問答。
如需偏離修補功能的支援資源清單,請參閱 漂移修復支援的資源 (ct-3kinq0u4l33zf)。
重要
漂移修復會修改堆疊範本和/或參數,而且必須更新本機範本儲存庫或更新這些堆疊的任何自動化,才能使用最新的堆疊範本和參數。使用舊範本和/或參數而不同步可能會導致基礎資源的變更受損。
不需要的檢閱、自動化、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 堆疊組態上執行。不會對基礎資源執行更新。
- 在修復之後,我可以繼續使用管理 | 其他 | 其他 RFCs 對資源執行更新嗎?
我們建議您一律使用可用的自動更新 CTs執行堆疊資源的更新。當可用的更新 CTs不支援您的使用案例時,請使用管理 | 其他 | 其他請求。
- 修補是否在堆疊中建立新的資源?
修復不會在堆疊中建立新的資源。不過,修補會建立新的輸出並更新堆疊範本中繼資料區段,以存放修補摘要供您參考。
- 修復永遠成功嗎?
修復需要仔細分析和驗證範本組態,以判斷是否可以執行。在這些驗證失敗的情況下,修復程序會停止,且堆疊範本或參數不會進行任何變更。此外,只能對支援的資源類型執行修復。
- 如果修復不成功,如何執行堆疊資源的更新?
您可以使用 管理 | 其他 | 其他 | 更新 CT (ct-0xdawir96cy7k) 來請求變更。AMS 會監控這類案例,並致力於改善修補解決方案。
- 我可以修復同時具有支援和不支援資源類型的堆疊嗎?
是。不過,只有在堆疊中找到支援的資源類型時,才會執行修復。如果任何不支援的資源類型為 DRIFTED,則不會繼續修復。
- 對於透過非 CFN 擷取 CTs 建立的堆疊,是否可以請求修復?
是。無論用於建立堆疊的變更類型為何,都可以在堆疊上執行修補。
- 我是否可以知道在修復之前將對堆疊執行的變更?
是。這兩種變更類型都提供 DryRun 選項,您可以用來請求在堆疊修復時執行的變更。不過,最終修復變更可能會因修復時堆疊上存在的偏離而有所不同。