设置 AWS 环境

入门指南

模块 3:设置 AWS CLI

在此模块中,您将配置 AWS 命令行界面 (CLI)

简介

AWS 命令行界面 (CLI) 是用于管理 AWS 产品的统一工具。只需要下载和配置一个工具,您就可以使用命令行控制多个 AWS 产品并利用脚本来自动执行这些服务。要使用 CLI 与 AWS 交互,我们需要配置凭证以供其在进行 API 调用时使用。我们还将展示如何设置多个配置文件以访问多个 AWS 账户,期间可使用附加凭证或通过 IAM 角色切换。

您将学到的内容

  • 为您的操作系统安装 AWS CLI
  • 配置凭证以访问您的 AWS 账户
  • 如何配置多个配置文件以访问不同的 AWS 账户

 完成时间

5 分钟

 模块要求

  • 互联网浏览器

实施

安装 AWS CLI

可通过不同的方式安装 AWS CLI,具体取决于您的操作系统或使用容器的偏好。请按照可在此处找到的有关如何安装 AWS CLI v2 的最新指南进行操作。安装后,您应该能够运行 aws --version 并看到以下输出 (版本可能有所不同):

aws --version
aws-cli/2.2.17 Python/3.9.6 Darwin/20.5.0 source/x86_64 prompt/off

AWS CLI 现已正确安装,我们需要配置凭证。您可以尝试运行诸如 aws ec2 describe-vpcs 之类的命令来查看是否一切运转正常。由于缺少凭证,您可能会看到以下错误消息:

aws ec2 describe-vpcs

# You may not see this error if you have already configured the CLI previously.
Unable to locate credentials. You can configure credentials by running aws configure.

配置 AWS CLI 凭证

要配置凭证,请使用命令 aws configure 并利用在本指南上一模块中创建的凭证。系统将要求您提供 AWS 访问密钥 IDAWS 秘密访问密钥原定设置区域原定设置输出格式。 

专家提示:您始终可以在任何命令上使用区域标志 (--region us-east-1) 指定或覆盖原定设置区域。可以在此处找到区域代码列表。 

最后,格式类型是原定设置显示输出的方式,包括但不限于:json、yaml、text。请查看此处的文档以获取所有可用选项。完成后,您应该在终端中看到以下内容 (如果您选择 eu-west-1 作为原定设置区域):

aws configure 

AWS Access Key ID [None]: ANOTREALACCESSKEYID
AWS Secret Access Key [None]: ANOTREALSECRETACCESSKEY
Default region name [None]: eu-west-1
Default output format [None]: json

现在我们可以运行之前的命令并查看结果,因为每个新的 AWS 账户都配置了原定设置 VPC:

aws ec2 describe-vpcs

# Output
{
    "Vpcs": [
        {
            "CidrBlock": "10.0.0.0/16",
            "DhcpOptionsId": "dopt-d12345",
            "State": "available",
            "VpcId": "vpc-0123456789abcdef",
            "OwnerId": "123456789012",
            ....

这就确认您的 AWS CLI 现在已正确设置。它在 ~/.aws (Linux / MacOS) 或 %UserProfile%\.aws (Windows) 中创建了两个文件:configcredentialscredentials 文件包含您指定的凭证:

[default]
aws_access_key_id = AKNOTREALACCESSKEYID
aws_secret_access_key = AyNOTREALSECRETACCESSKEY

配置文件的任何其他配置都存储在 config 文件中。使用 aws configure 时,它将包含以下内容 (可能具有不同的区域):

[default]
region = eu-west-1
output = json

下一节将介绍如何配置多个配置文件,如果您计划使用单个 AWS 账户,则请跳过该节。

(可选) 配置多个配置文件

如果您访问多个 AWS 账户,则可以设置配置文件。这可让您使用 --profile my-profile 标志,以指定账户运行特定命令。例如,如果您有不同的开发和生产环境账户。可以通过 2 种方式设置附加配置文件:

  • 使用 AWS CLI:aws configure --profile my-profile
  • 手动编辑 ~/.aws/credentials~/.aws/config 文件

使用 aws configure --profile my-profile 时,my-profile 值将是所创建配置文件的名称,并将导致 configcredentials 文件发生以下更改:

示例 config 文件:

[default]
region = eu-west-1
output = json

[profile my-profile]
region = us-west-1
output = yaml

示例 credentials 文件:

[default]
aws_access_key_id = ANOTREALACCESSKEYID
aws_secret_access_key = ANOTREALSECRETACCESSKEY

[my-profile]
aws_access_key_id = ANOTREALACCESSKEYID2
aws_secret_access_key = ANOTREALSECRETACCESSKEY2

请务必注意,配置文件仅在 config 文件中以 profile 为前缀,而在 credentials 文件中则没有此前缀。

此方法要求您在每个账户中都有一个 IAM 用户,并且还具有凭证集。访问多个账户的另一种方法是设置 IAM 角色和策略以允许您使用角色切换。要设置 IAM 角色和策略,请参阅文档

现在我们已经配置 AWS CLI,如果您不想在下一个模块中进行本地开发,则可以选择使用 AWS Cloud9 设置开发环境。

结论

恭喜! 您已经了解如何设置 AWS 命令行界面 (CLI)。在下一个模块中,您将学习如何设置 Cloud9:基于云的 IDE。

下一步:设置 Cloud9

请就我们的表现提供反馈。

感谢您的反馈
很高兴此页面对您有所帮助。您是否乐意分享更多详细信息,以帮助我们继续改进?
关闭
感谢您的反馈
很抱歉,此页面未能帮到您。您是否乐意分享更多详细信息,以帮助我们继续改进?
关闭