我正在使用 aws-cdk 并$cdk deploy部署一些堆疊。
但是,會出現這樣的錯誤
21:12:30 | CREATE_FAILED | AWS::S3::Bucket | S3BucketStaticResourceB341FA19
si2-s3-sbu-mytest-xxx-static-resource-5133297d-91 already exists
通常這種錯誤,我可以在 AWS 控制臺中找到該專案。
但是在這種情況下,$aws s3 ls不會顯示名為 this 的存盤桶。
為什么會發生這種情況或我應該在哪里解決?
uj5u.com熱心網友回復:
通常,最好避免為使用 CDK 創建的資源顯式提供物理名稱。
該檔案解釋的理由:
在 AWS CloudFormation 中為資源分配物理名稱有一些缺點。最重要的是,任何需要替換資源的已部署資源的更改,例如對創建后不可變的資源屬性的更改,如果為資源分配了物理名稱,都將失敗。如果您最終處于該狀態,唯一的解決方案是洗掉 AWS CloudFormation 堆疊,然后再次部署 AWS CDK 應用程式。有關詳細資訊,請參閱 AWS CloudFormation 檔案。
因此,如果您引入需要更換存盤桶的更改,您將看到上述錯誤。
在您的特定情況下,如@Omar Rosadio 在評論中所述,存盤桶名稱在所有賬戶和區域中是全域唯一的,這可能是 S3 特定的問題。這使得自己命名您的存盤桶成為一個特別糟糕的主意。
如果你bucketName在創建bucket的時候沒有傳遞這個屬性,CDK會為你生成一個唯一的名字,所以你不用擔心這個,我建議這樣做。
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/408996.html
標籤:
