AWS CDK 的环境 - AWS Cloud Development Kit (AWS CDK) v2

这是 AWS CDK v2 开发者指南。旧版 CDK v1 于 2022 年 6 月 1 日进入维护阶段,并于 2023 年 6 月 1 日终止支持。

AWS CDK 的环境

环境由 AWS 账户 和 AWS 区域 组成,您可以将 AWS Cloud Development Kit (AWS CDK) 堆栈部署到其中。

AWS 账户

创建 AWS 账户 时,您会收到一个账户 ID。此 ID 是一个 12 位数字(如 012345678901),用于唯一标识账户。要了解更多信息,请参阅《AWS Account Management Reference Guide》中的 View AWS 账户 identifiers

AWS 区域

AWS 区域 使用地理位置和代表区域内可用区的数字的组合命名。例如,us-east-1 表示美国东部(弗吉尼亚州北部)区域中的可用区。要了解有关 AWS 区域 的更多信息,请参阅区域和可用区。有关区域代码的列表,请参阅《AWS General Reference》参考指南中的 Regional endpoints

AWS CDK 可通过凭证和配置文件确定环境。可以使用 AWS Command Line Interface(AWS CLI)创建和管理这些文件。以下是这些文件的基本示例:

凭证文件

[default] aws_access_key_id=ASIAIOSFODNN7EXAMPLE aws_secret_access_key=wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY aws_session_token = IQoJb3JpZ2luX2IQoJb3JpZ2luX2IQoJb3JpZ2luX2IQoJb3JpZ2luX2IQoJb3JpZVERYLONGSTRINGEXAMPLE [user1] aws_access_key_id=ASIAI44QH8DHBEXAMPLE aws_secret_access_key=je7MtGbClwBF/2Zp9Utk/h3yCo8nvbEXAMPLEKEY aws_session_token = fcZib3JpZ2luX2IQoJb3JpZ2luX2IQoJb3JpZ2luX2IQoJb3JpZ2luX2IQoJb3JpZVERYLONGSTRINGEXAMPLE

配置文件

[default] region=us-west-2 output=json [profile user1] region=us-east-1 output=text

您可以通过 CDK 提供的环境变量在 CDK 代码中传递这些文件中的环境信息。在运行 CDK CLI 命令(例如 cdk deploy)时,您需要提供凭证和配置文件中的配置文件以从中收集环境信息。

以下是在 CDK 代码中指定这些环境的示例:

new MyDevStack(app, 'dev', { env: { account: process.env.CDK_DEFAULT_ACCOUNT, region: process.env.CDK_DEFAULT_REGION }});

以下是使用 --profile 选项将与 user1 配置文件关联的值从凭证和配置文件传递给 CDK CLI 的示例。这些文件中的值将传递给环境变量:

$ cdk deploy myStack --profile user1

您还可以在 CDK 代码中对环境值进行硬编码,而不必使用凭证和配置文件中的值。以下是 示例:

const envEU = { account: '238383838383', region: 'eu-west-1' }; const envUSA = { account: '837873873873', region: 'us-west-2' }; new MyFirstStack(app, 'first-stack-us', { env: envUSA }); new MyFirstStack(app, 'first-stack-eu', { env: envEU });

了解更多

要开始在 AWS CDK 中使用环境,请参阅配置可使用 AWS CDK 的环境