Amazon web services Can';t从cloudl创建多个S3 bucket
我有一个yaml文件来创建带有CloudFormation的堆栈。但是,当创建一些S3存储桶时,脚本失败,控制台中出现400个错误请求错误。我尝试运行一个脚本,它只执行此操作,但结果相同。这是我正在使用的yaml文件Amazon web services Can';t从cloudl创建多个S3 bucket,amazon-web-services,amazon-cloudformation,Amazon Web Services,Amazon Cloudformation,我有一个yaml文件来创建带有CloudFormation的堆栈。但是,当创建一些S3存储桶时,脚本失败,控制台中出现400个错误请求错误。我尝试运行一个脚本,它只执行此操作,但结果相同。这是我正在使用的yaml文件 AWSTemplateFormatVersion: 2010-09-09 Parameters: ArtifactsBucket: Type: String Default: artifacts.bucket Descript
AWSTemplateFormatVersion: 2010-09-09
Parameters:
ArtifactsBucket:
Type: String
Default: artifacts.bucket
Description: S3 Bucket Name for CodeBuild Artifacts
DevBucket:
Type: String
Default: dev.bucket
Description: S3 Bucket Name for Dev environment.
StagingBucket:
Type: String
Default: staging.bucket
Description: S3 Bucket Name for Staging environment
ProductionBucket:
Type: String
Default: production.bucket
Description: S3 Bucket Name for Production environment
Resources:
# S3 Bucket for build artifacts
BuildArtifactsBucket:
Type: AWS::S3::Bucket
Properties:
AccessControl: Private
BucketName: !Sub '${ArtifactsBucket}'
# S3 Bucket for Dev environment
DevS3Bucket:
Type: AWS::S3::Bucket
Properties:
AccessControl: Private
BucketName: !Sub '${DevBucket}'
# S3 Bucket for Staging environment
StagingS3Bucket:
Type: AWS::S3::Bucket
Properties:
AccessControl: Private
BucketName: !Sub '${StagingBucket}'
# S3 Bucket for Production environment
ProductionS3Bucket:
Type: AWS::S3::Bucket
Properties:
AccessControl: Private
BucketName: !Sub '${ProductionBucket}'
我真的不明白这是怎么回事,因为如果我只留下一个S3 Bucket资源,它就可以工作了,这完全有可能是S3控制api遇到了瓶颈 为了避免过多的并行请求,您可以添加
DependsOn
参数来强制按顺序创建存储桶:
AWSTemplateFormatVersion: 2010-09-09
Parameters:
ArtifactsBucket:
Type: String
Default: artifacts.bucket
Description: S3 Bucket Name for CodeBuild Artifacts
DevBucket:
Type: String
Default: dev.bucket
Description: S3 Bucket Name for Dev environment.
StagingBucket:
Type: String
Default: staging.bucket
Description: S3 Bucket Name for Staging environment
ProductionBucket:
Type: String
Default: production.bucket
Description: S3 Bucket Name for Production environment
Resources:
# S3 Bucket for build artifacts
BuildArtifactsBucket:
Type: AWS::S3::Bucket
Properties:
AccessControl: Private
BucketName: !Sub '${ArtifactsBucket}'
# S3 Bucket for Dev environment
DevS3Bucket:
Type: AWS::S3::Bucket
Properties:
AccessControl: Private
BucketName: !Sub '${DevBucket}'
DependsOn: "BuildArtifactsBucket"
# S3 Bucket for Staging environment
StagingS3Bucket:
Type: AWS::S3::Bucket
Properties:
AccessControl: Private
BucketName: !Sub '${StagingBucket}'
DependsOn: "DevS3Bucket"
# S3 Bucket for Production environment
ProductionS3Bucket:
Type: AWS::S3::Bucket
Properties:
AccessControl: Private
BucketName: !Sub '${ProductionBucket}'
DependsOn: "StagingS3Bucket"
在这里,将按顺序创建所有存储桶。你可以把他们分成几个小组,而不是严格的一次一组;进行实验,看看什么是有效的