本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
在狀態檔案遺失後,安全地清除 AWS Account Factory for Terraform (AFT) 資源
由 Gokendra Malviya (AWS) 建立
Summary
當您使用 AWS Account Factory for Terraform (AFT) 來管理 AWS Control Tower 環境時,AFT 會產生 Terraform 狀態檔案,以追蹤 Terraform 所建立資源的狀態和組態。遺失 Terraform 狀態檔案可能會對資源管理和清除造成重大挑戰。此模式提供系統性方法,可安全地識別和移除 AFT 相關資源,同時維護您 AWS Control Tower 環境的完整性。
此程序旨在確保適當移除所有 AFT 元件,即使沒有原始狀態檔案參考。此程序提供明確的路徑,可在您的環境中成功重新建立和重新設定 AFT,以協助確保對 AWS Control Tower 操作的干擾降到最低。
如需 AFT 的詳細資訊,請參閱 AWS Control Tower 文件。
先決條件和限制
先決條件
徹底了解 AFT 架構。
下列帳戶的管理員存取權:
AFT 管理帳戶
AWS Control Tower 管理帳戶
Log Archive 帳戶
稽核帳戶
驗證沒有服務控制政策 SCPs) 包含會封鎖刪除 AFT 相關資源的限制。
限制
此程序可以有效地清除資源,但無法復原遺失的狀態檔案,有些資源可能需要手動識別。
清除程序的持續時間取決於您環境的複雜性,可能需要數小時的時間。
此模式已使用 AFT 1.12.2 版進行測試,並刪除下列資源。如果您使用的是不同版本的 AFT,您可能需要刪除其他資源。
服務名稱
資源數量
AWS CodeBuild
6
AWS CodeCommit
4
AWS CodePipeline
4
Amazon DynamoDB
5
Amazon Elastic Compute Cloud (Amazon EC2)
16
Amazon EventBridge
4
AWS Identity and Access Management (IAM) 角色
40
AWS Key Management Service (AWS KMS)
2
AWS Lambda
17
Amazon Simple Storage Service (Amazon S3)
2
Amazon Simple Notification Service (Amazon SNS)
2
Amazon Simple Queue Service (Amazon SQS)
2
AWS Systems Manager
62
AWS Step Functions
4
重要
無法復原此模式中步驟刪除的資源。遵循這些步驟之前,請仔細驗證資源名稱,並確認它們是由 AFT 建立。
架構
下圖顯示 AFT 元件和高階工作流程。AFT 會設定 Terraform 管道,協助您在其中佈建和自訂帳戶 AWS Control Tower。AFT 遵循 GitOps 模型來自動化其中帳戶佈建的程序 AWS Control Tower。您可以為帳戶請求建立 Terraform 檔案並將其遞交至儲存庫,該儲存庫提供觸發帳戶佈建之 AFT 工作流程的輸入。帳戶佈建完成後,AFT 可以自動執行其他自訂步驟。

在此架構中:
AWS Control Tower 管理帳戶是 服務專用的 AWS 帳戶 AWS Control Tower 。這通常也稱為AWS 付款人帳戶或AWS Organizations 管理帳戶。
AFT Management 帳戶是專用於 AFT 管理操作 AWS 帳戶 的 。這與您組織的管理帳戶不同。
已取代的帳戶是 AWS 帳戶 ,其中包含您選取的所有基準元件和控制項。AFT 使用 AWS Control Tower 來提供新帳戶。
如需此架構的詳細資訊,請參閱 AWS Control Tower 研討會中的 AFT 簡介
工具
AWS 服務
AWS Control Tower 可協助您設定和管理 AWS 多帳戶環境,並遵循規範最佳實務。
AWS Account Factory for Terraform (AFT) 會設定 Terraform 管道,協助您佈建和自訂其中的帳戶和資源 AWS Control Tower。
AWS Organizations 隨著資源的成長和擴展, 可協助您集中管理和控管您的環境 AWS 。使用 Organizations,您可以建立帳戶並配置資源、分組帳戶來組織工作流程、套用控管政策,以及使用所有帳戶的單一付款方式來簡化計費。
AWS Identity and Access Management (IAM) 透過控制已驗證並獲授權使用的人員,協助您安全地管理對 AWS 資源的存取。此模式需要 IAM 角色和許可。
其他工具
Terraform
是 HashiCorp 的基礎設施即程式碼 (IaC) 工具,可協助您建立和管理雲端和內部部署資源。
最佳實務
如需 AWS Control Tower,請參閱 AWS Control Tower 文件中的AWS Control Tower 管理員最佳實務。
對於 IAM,請參閱 IAM 文件中的安全最佳實務。
史詩
任務 | 描述 | 所需的技能 |
---|---|---|
刪除由 AFT 標籤識別的資源。 |
| AWS 管理員、AWS DevOps、DevOps 工程師 |
刪除 IAM 角色。 |
| AWS 管理員、AWS DevOps、DevOps 工程師 |
刪除 AWS Backup 備份保存庫。 |
| AWS 管理員、AWS DevOps、DevOps 工程師 |
刪除 Amazon CloudWatch 資源。 |
| AWS 管理員、AWS DevOps、DevOps 工程師 |
刪除 AWS KMS 資源。 |
| AWS 管理員、AWS DevOps、DevOps 工程師 |
任務 | 描述 | 所需的技能 |
---|---|---|
刪除 S3 儲存貯體。 |
| AWS 管理員、AWS DevOps、DevOps 工程師 |
刪除 IAM 角色。 |
| AWS 管理員、AWS DevOps、DevOps 工程師 |
任務 | 描述 | 所需的技能 |
---|---|---|
刪除 IAM 角色。 |
| AWS 管理員、AWS DevOps、DevOps 工程師 |
任務 | 描述 | 所需的技能 |
---|---|---|
刪除 IAM 角色。 |
| AWS 管理員、AWS DevOps、DevOps 工程師 |
刪除 EventBridge 規則。 |
| AWS 管理員、AWS DevOps、DevOps 工程師 |
故障診斷
問題 | 解決方案 |
---|---|
分離網際網路閘道失敗。 | 當您刪除 AFT 標籤識別的資源時,如果您在分離或刪除網際網路閘道時遇到此問題,您必須先刪除 VPC 端點:
|
找不到指定的 CloudWatch 查詢。 | 如果您找不到 AFT 建立的 CloudWatch 查詢,請依照下列步驟執行:
|
相關資源
其他資訊
若要在 CloudWatch Logs Insights 儀表板上檢視 AFT 查詢,請從右上角選擇已儲存和範例查詢圖示,如下列螢幕擷取畫面所示:
