AWS CDK 中的 VPC 和 cfnVPC 有什么区别?
What is the difference between VPC and cfnVPC in AWS CDK?
两者类都用于创建VPC。当然,cfn 表示 Cloud formation,但是命令“CDK synth”也会将 aws_ec2.Vpc() 转换为 Cloud formation模板对吗?那么到底有什么区别呢?有人可以帮我吗?
CDK 中有不同级别的构造:
Low-level构造,称为CFN Resources(或L1,“level 1”的缩写)或Cfn资源。这些构造直接表示 AWS CloudFormation 中可用的所有资源。 CFN 资源定期从 AWS CloudFormation 资源规范生成。它们被命名为 CfnXyz,其中 Xyz 是资源的名称。 例如,CfnBucket 代表 AWS::S3::Bucket AWS CloudFormation 资源。当您使用 Cfn 资源时,您必须显式配置所有资源属性,这需要全面了解底层 AWS CloudFormation 资源模型的细节。
下一级结构 L2 也代表 AWS 资源,但具有 higher-level、intent-based API。它们提供类似的功能,但提供默认值、样板和粘合逻辑,您将使用 CFN 资源构造自己编写。AWS 构造提供方便的默认值并减少了解有关 AWS 资源的所有详细信息的需要它们表示,同时提供方便的方法,使使用资源更简单。例如,s3.Bucket class 表示具有附加属性和方法的 Amazon S3 存储桶,例如 bucket.addLifeCycleRule(),它向存储桶添加生命周期规则。
最后,AWS 构造库甚至包括 higher-level 构造,称为模式。这些构造旨在帮助您完成 AWS 中的常见任务,通常涉及多种资源。 例如,aws-ecs-patterns.ApplicationLoadBalancedFargateService 构造表示包含使用应用程序的 AWS Fargate 容器集群的架构负载平衡器 (ALB)。 aws-apigateway.LambdaRestApi 构造表示由 AWS Lambda 函数支持的 Amazon API 网关 API。
两者类都用于创建VPC。当然,cfn 表示 Cloud formation,但是命令“CDK synth”也会将 aws_ec2.Vpc() 转换为 Cloud formation模板对吗?那么到底有什么区别呢?有人可以帮我吗?
CDK 中有不同级别的构造:
Low-level构造,称为CFN Resources(或L1,“level 1”的缩写)或Cfn资源。这些构造直接表示 AWS CloudFormation 中可用的所有资源。 CFN 资源定期从 AWS CloudFormation 资源规范生成。它们被命名为 CfnXyz,其中 Xyz 是资源的名称。 例如,CfnBucket 代表 AWS::S3::Bucket AWS CloudFormation 资源。当您使用 Cfn 资源时,您必须显式配置所有资源属性,这需要全面了解底层 AWS CloudFormation 资源模型的细节。
下一级结构 L2 也代表 AWS 资源,但具有 higher-level、intent-based API。它们提供类似的功能,但提供默认值、样板和粘合逻辑,您将使用 CFN 资源构造自己编写。AWS 构造提供方便的默认值并减少了解有关 AWS 资源的所有详细信息的需要它们表示,同时提供方便的方法,使使用资源更简单。例如,s3.Bucket class 表示具有附加属性和方法的 Amazon S3 存储桶,例如 bucket.addLifeCycleRule(),它向存储桶添加生命周期规则。
最后,AWS 构造库甚至包括 higher-level 构造,称为模式。这些构造旨在帮助您完成 AWS 中的常见任务,通常涉及多种资源。 例如,aws-ecs-patterns.ApplicationLoadBalancedFargateService 构造表示包含使用应用程序的 AWS Fargate 容器集群的架构负载平衡器 (ALB)。 aws-apigateway.LambdaRestApi 构造表示由 AWS Lambda 函数支持的 Amazon API 网关 API。