本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
針對 的一致性套件進行故障診斷 AWS Config
檢查下列問題,以協助疑難排解您在使用一致性套件時可能遇到的問題。
一致性套件的失敗狀態
如果您在建立、更新和刪除一致性套件時收到錯誤指出一致性套件失敗,您可以檢查一致性套件的狀態。
aws configservice describe-conformance-pack-status --conformance-pack-name MyConformancePack1
您應該會看到類似下列的輸出。
"ConformancePackStatusDetails": [ { "ConformancePackName": "
ConformancePackName
", "ConformancePackId": "ConformancePackId
", "ConformancePackArn": "ConformancePackArn
", "ConformancePackState": "CREATE_FAILED", "StackArn": "CloudFormation stackArn
", "ConformancePackStatusReason": "Failure Reason
", "LastUpdateRequestedTime": 1573865201.619, "LastUpdateCompletedTime": 1573864244.653 } ]
檢查 ConformancePackStatusReason 以取得發生失敗的相關資訊。
When the stackArn is present in the response (當回應中存在 stackArn 時)
如果錯誤訊息不清楚,或是失敗是由於內部錯誤造成,請移至 AWS CloudFormation 主控台並執行下列動作:
-
在輸出中搜尋 stackArn。
-
選擇 CloudFormation 堆疊的事件索引標籤,並檢查失敗的事件。
狀態原因指出一致性套件失敗的原因。
When the stackArn is not present in the response (當回應中不存在 stackArn 時)
如果您在建立一致性套件時收到失敗,但狀態回應中沒有 stackArn,可能的原因為堆疊建立失敗,且 CloudFormation 復原並刪除堆疊。前往 CloudFormation 主控台並搜尋處於已刪除狀態的堆疊。該處可能有提供失敗的堆疊。CloudFormation 堆疊包含一致性套件名稱。如果您找到失敗的堆疊,請選擇 CloudFormation 堆疊的事件索引標籤,並檢查失敗的事件。
如果這些步驟都無效,而且失敗原因是內部服務錯誤,請再次嘗試操作或聯絡 AWS 支援 中心
在一致性套件中捨棄規則
部署一致性套件涉及在背景中建立基礎 AWS CloudFormation 堆疊,以在一致性套件範本中部署規則。這些規則是服務連結規則,無法在一致性套件之外更新或刪除。
如果您變更基礎 CloudFormation 堆疊,這會導致一致性套件及其規則變得無法管理的情況。這些無法管理的規則是懸置規則。
CloudFormation 堆疊與一致性套件之間的偏離
您可以直接從 CloudFormation 主控台更新一致性套件範本中的規則名稱。如果您直接從 CloudFormation 主控台更新範本,則不會更新部署的一致性套件。
此偏離會建立懸置規則。如果您嘗試從一致性套件中刪除規則,則會收到與下列項目類似的錯誤:
"An AWS service owns ServiceLinkedConfigRule. You do not have permissions to take action on this rule. (Service: AmazonConfig; Status Code: 400; Error Code: AccessDeniedException; Request ID:
my-request-ID
; Proxy: null)".
如果您嘗試刪除一致性套件,則無法刪除懸置規則,而且您收到與下列項目類似的錯誤:
"User: arn:aws:sts::
111122223333
:assumed-role/AWSServiceRoleForConfigConforms/AwsConfigConformsWorkflow is not authorized to perform: config:DeleteConfigRule on resource:my-dangling-rule
若要修正此問題,請執行下列步驟:
刪除堆疊 如需詳細資訊,請參閱 CloudFormation 使用者指南中的刪除 AWS CloudFormation 主控台上的堆疊。
使用 AWS Config 主控台或使用 DeleteConformancePack API 刪除一致性套件。如果它是組織一致性套件,而且您使用的是 管理或委派的管理員帳戶,請使用 DeleteOrganizationConformancePack API。
使用一致性套件中懸置規則的 Amazon Resource Name (ARN) 聯絡 AWS 支援 中心
,以協助清除您的帳戶。
為了避免此問題,請記住下列最佳實務:
切勿直接更新一致性套件的 CloudFormation 堆疊。
請勿嘗試進行變更,以建立一致性套件與其基礎 CloudFormation 堆疊之間的偏離。
無法修改一致性套件的服務連結角色 (SLR)。請確定您正在更新的資源是 SLR 許可政策的一部分。
已刪除一致性套件的 CloudFormation 堆疊
除非 CloudFormation 堆疊與一致性套件之間有偏離,否則絕不建議直接從 CloudFormation 主控台刪除一致性套件或其 CloudFormation CloudFormation 堆疊中的規則。
若要修正此問題,請使用一致性套件中懸置規則的 Amazon Resource Name (ARN) 聯絡 AWS 支援 中心
為了避免此問題,請記住下列最佳實務:
切勿刪除一致性套件的基礎 CloudFormation 堆疊。
使用 DeleteConformancePack API 刪除一致性套件。如果它是組織一致性套件,且您使用的是 管理或委派的管理員帳戶,請使用 DeleteOrganizationConformancePack API。