

# 为 Amazon Aurora 设置环境
<a name="CHAP_SettingUp_Aurora"></a>

首次使用 Amazon Aurora 前，请完成以下任务。

**Topics**
+ [

## 注册 Amazon Web Services 账户
](#sign-up-for-aws)
+ [

## 保护 IAM 用户
](#secure-an-admin)
+ [

## 授权以编程方式访问
](#getting-started-iam-user-access-keys)
+ [

## 确定要求
](#CHAP_SettingUp_Aurora.Requirements)
+ [

## 通过创建安全组提供对 VPC 中数据库集群的访问
](#CHAP_SettingUp_Aurora.SecurityGroup)

如果您已有 Amazon Web Services 账户，知道您的 Aurora 要求并且喜欢使用 IAM 和 VPC 安全组的默认值，请向前跳到 [开始使用 Amazon Aurora](CHAP_GettingStartedAurora.md)。

## 注册 Amazon Web Services 账户
<a name="sign-up-for-aws"></a>

如果您还没有，Amazon Web Services 账户请完成以下步骤来创建一个。

**注册 Amazon Web Services 账户**

1. 打开 [https://portal.aws.amazon.com/billing/signup](https://portal.amazonaws.cn/billing/signup)。

1. 按照屏幕上的说明操作。

   在注册时，将接到电话或收到短信，要求使用电话键盘输入一个验证码。

   当您注册 Amazon Web Services 账户 时，系统将会创建一个。*Amazon Web Services 账户根用户*根用户有权访问该账户中的所有 Amazon Web Services 服务 和资源。作为最佳安全实践，请为用户分配管理访问权限，并且只使用根用户来执行[需要根用户访问权限的任务](https://docs.amazonaws.cn/IAM/latest/UserGuide/id_root-user.html#root-user-tasks)。

注册过程完成后，Amazon 会向您发送一封确认电子邮件。在任何时候，您都可以通过转至 [https://aws.amazon.com/](https://www.amazonaws.cn/) 并选择**我的账户**来查看当前的账户活动并管理您的账户。

## 保护 IAM 用户
<a name="secure-an-admin"></a>

注册 Amazon Web Services 账户 后，启用多重身份验证（MFA）保护您的管理用户。有关说明，请参阅《IAM 用户指南》**中的 [为 IAM 用户启用虚拟 MFA 设备（控制台）](https://docs.amazonaws.cn/IAM/latest/UserGuide/id_credentials_mfa_enable_virtual.html#enable-virt-mfa-for-iam-user)。

要授予其他用户访问您的 Amazon Web Services 账户资源的权限，请创建 IAM 用户。为了保护您的 IAM 用户，请启用 MFA 并仅向 IAM 用户授予执行任务所需的权限。

有关创建和保护 IAM 用户的更多信息，请参阅《IAM 用户指南》中的以下主题：**
+ [在您的 Amazon Web Services 账户中创建 IAM 用户](https://docs.amazonaws.cn//IAM/latest/UserGuide/id_users_create.html)
+ [适用于 Amazon 资源的访问权限管理](https://docs.amazonaws.cn/IAM/latest/UserGuide/access.html)
+ [基于 IAM 身份的策略示例](https://docs.amazonaws.cn/IAM/latest/UserGuide/access_policies_examples.html)

## 授权以编程方式访问
<a name="getting-started-iam-user-access-keys"></a>

如果用户需要在 Amazon Web Services 管理控制台之外与 Amazon 交互，则需要编程式访问权限。Amazon API 和 Amazon Command Line Interface 需要访问密钥。可能的话，创建临时凭证，该凭证由一个访问密钥 ID、一个秘密访问密钥和一个指示凭证何时到期的安全令牌组成。

要向用户授予编程式访问权限，请选择以下选项之一。


****  

| 哪个用户需要编程式访问权限？ | 目的 | 方式 | 
| --- | --- | --- | 
| IAM | 使用短期凭证签署对 Amazon CLI 或 Amazon API 的编程式请求（直接或使用 Amazon SDK）。 | 按照《IAM 用户指南》中[将临时凭证用于 Amazon 资源](https://docs.amazonaws.cn//IAM/latest/UserGuide/id_credentials_temp_use-resources.html)中的说明进行操作。 | 
| IAM | （不推荐使用）使用长期凭证签署对 Amazon CLI 或 Amazon API 的编程式请求（直接或使用 Amazon SDK）。 | 按照《IAM 用户指南》中[管理 IAM 用户的访问密钥](https://docs.amazonaws.cn//IAM/latest/UserGuide/id_credentials_access-keys.html)中的说明进行操作。 | 

## 确定要求
<a name="CHAP_SettingUp_Aurora.Requirements"></a>

Aurora 的基本构建基块是数据库集群。一个或多个数据库实例可以属于一个数据库集群。数据库集群提供了称为 *集群终端节点*的网络地址。每次您的应用程序需要访问在数据库集群中创建的数据库时，它们将连接到该数据库集群公开的集群终端节点。在创建数据库集群时指定的信息控制各种配置元素，如内存、数据库引擎和版本、网络配置、安全性以及维护时段。

在创建数据库集群和安全组之前，您必须知道数据库集群和网络需求。下面是要考虑的一些重要事项：
+ **资源要求** – 应用程序或服务的内存和处理器要求是什么？ 在确定用于创建数据库集群的数据库实例类时，将会使用这些设置。有关数据库实例类的规范，请参阅 [Amazon Aurora数据库实例类](Concepts.DBInstanceClass.md)。
+ **VPC、子网和安全组 – **您的数据库集群将在 Virtual Private Cloud (VPC) 中。必须配置安全组规则以连接到数据库集群。下面的列表说明每个 VPC 选项的规则：
  + **默认 VPC** – 如果您的Amazon账户在Amazon区域中具有一个默认 VPC，将配置该 VPC 以支持数据库集群。如果您在创建数据库集群时指定默认 VPC：
    + 确保创建一个 *VPC 安全组*，该安全组对从应用程序或服务到 Aurora 数据库集群的连接进行授权。使用 VPC 控制台中的 **Security Group (安全组)** 选项或 Amazon CLI 创建 VPC 安全组。有关信息，请参阅 [步骤 3：创建 VPC 安全组](USER_VPC.WorkingWithRDSInstanceinaVPC.md#USER_VPC.CreateVPCSecurityGroup)。
    + 您必须指定默认数据库子网组。如果这是您在Amazon区域中创建的第一个数据库集群，Amazon RDS 将在创建数据库集群时创建默认数据库子网组。
  + **用户定义的 VPC** – 如果您希望在创建数据库集群时指定用户定义的 VPC：
    + 确保创建一个 *VPC 安全组*，该安全组对从应用程序或服务到 Aurora 数据库集群的连接进行授权。使用 VPC 控制台中的 **Security Group (安全组)** 选项或 Amazon CLI 创建 VPC 安全组。有关信息，请参阅 [步骤 3：创建 VPC 安全组](USER_VPC.WorkingWithRDSInstanceinaVPC.md#USER_VPC.CreateVPCSecurityGroup)。
    + 该 VPC 必须满足特定要求才能托管数据库集群，例如，至少具有两个子网，每个子网位于单独的可用区中。有关信息，请参阅 [Amazon VPC 和 Amazon Aurora](USER_VPC.md)。
    + 您必须指定一个数据库子网组，以定义数据库集群可以使用该 VPC 中的哪些子网。有关信息，请参阅 [在 VPC 中使用数据库集群](USER_VPC.WorkingWithRDSInstanceinaVPC.md#Overview.RDSVPC.Create) 中的“数据库子网组”部分。
+ **高可用性：**是否需要失效转移支持？ 在 Aurora 上，多可用区部署创建一个主实例和一些 Aurora 副本。您可以将主实例和 Aurora 副本配置为位于不同的可用区以提供失效转移支持。我们建议将多可用区部署用于生产工作负载以保持高可用性。对于开发和测试用途，您可以使用非多可用区部署。有关更多信息，请参阅“[Amazon Aurora 的高可用性](Concepts.AuroraHighAvailability.md)”。
+ **IAM 策略：**您的Amazon账户是否具有相应策略来授予执行 Amazon RDS 操作所需的权限？ 如要使用 IAM 证书连接到Amazon，您的 IAM 账户必须拥有 IAM 政策来授予执行 Amazon RDS 操作所需的权限。有关更多信息，请参阅“[Amazon Aurora 的 Identity and Access Management](UsingWithRDS.IAM.md)”。
+ **开放端口：**您的数据库将要监听哪个 TCP/IP 端口？ 有些公司的防火墙可能会阻止与您的数据库引擎的默认端口进行连接。如果您的公司防火墙阻止使用默认端口，请为新数据库集群选择其他端口。请注意，在创建侦听指定端口的数据库集群后，您可以修改该数据库集群以更改端口。
+ **Amazon区域：**您希望您的数据库位于哪个Amazon区域内？ 通过让数据库紧邻应用程序或 Web 服务，可以减小网络延迟。有关更多信息，请参阅“[ 区域及可用区](Concepts.RegionsAndAvailabilityZones.md)”。

在了解创建安全组和数据库集群所需的信息后，请继续执行下一步。

## 通过创建安全组提供对 VPC 中数据库集群的访问
<a name="CHAP_SettingUp_Aurora.SecurityGroup"></a>

您的数据库集群将在 VPC 中创建。安全组提供了 VPC 中的数据库集群的访问权限。它们充当关联的数据库集群的防火墙，以在集群级别控制入站和出站流量。默认情况下，将创建具有防火墙和默认安全组的数据库集群以禁止访问数据库集群。因此，您必须在安全组中添加规则以允许连接到数据库集群。使用在上一步中确定的网络和配置信息创建规则以允许访问数据库集群。

例如，如果您的应用程序将访问 VPC 中的数据库集群上的数据库，您必须添加自定义 TCP 规则以指定该应用程序用于访问数据库的端口范围和 IP 地址。如果您有位于 Amazon EC2 实例上的应用程序，则可以使用您为 Amazon EC2 实例设置的 VPC 安全组。

创建数据库集群时，您可以配置 Amazon EC2 实例与数据库集群之间的连接。有关更多信息，请参阅 [配置与 EC2 实例的自动网络连接](Aurora.CreateInstance.md#Aurora.CreateInstance.Prerequisites.VPC.Automatic)。

**提示**  
创建数据库集群时，您可以在 Amazon EC2 实例和数据库集群之间自动设置网络连接。有关更多信息，请参阅 [配置与 EC2 实例的自动网络连接](Aurora.CreateInstance.md#Aurora.CreateInstance.Prerequisites.VPC.Automatic)。

有关如何将 Amazon Lightsail 中的资源连接到数据库集群的信息，请参阅 [Connect Lightsail resources to Amazon Web Services 服务 using VPC peering](https://docs.amazonaws.cn/lightsail/latest/userguide/using-lightsail-with-other-aws-services.html)。

有关创建 VPC 以与 Aurora 结合使用的详细信息，请参阅 [教程：创建 VPC 以用于数据库集群（仅限 IPv4）](CHAP_Tutorials.WebServerDB.CreateVPC.md)。有关访问数据库实例的常见场景的信息，请参阅 [在 VPC 中访问数据库集群的场景](USER_VPC.Scenarios.md)。

**创建 VPC 安全组**

1. 登录到Amazon Web Services 管理控制台并打开 Amazon VPC 控制台，网址：[https://console.aws.amazon.com/vpc](https://console.amazonaws.cn/vpc)。
**注意**  
确保您在 VPC 控制台中，而不是 RDS 控制台。

1. 在Amazon Web Services 管理控制台的右上角，选择要在其中创建 VPC 安全组和数据库集群的Amazon区域。在该Amazon区域的 Amazon VPC 资源列表中，您应看到至少一个 VPC 和多个子网。如果您没有看到，则说明您在该 Amazon 区域中没有默认 VPC。

1. 在导航窗格中，选择 **Security Groups**。

1. 选择 **Create security group**（创建安全组）。

   此时将显示 **Create security group (创建安全组)** 页面。

1. 在 **Basic details (基本详细信息)** 中，输入 **Security group name (安全组名称)** 和 **Description (描述)**。对于 **VPC**，选择要在其中创建数据库集群的 VPC。

1. 在 **Inbound rules (入站规则)** 中，请选择 **Add rule (添加规则)**。

   1. 对于 **Type (类型)**，选择 **Custom TCP (自定义TCP)**。

   1. 对于 **Port range (端口范围)**，输入要用于数据库集群的端口值。

   1. 对于 **Source (源)**，选择安全组名称或键入您从中访问数据库集群的 IP 地址范围（CIDR 值）。如果您选择 **My IP (我的 IP)**，这会允许从浏览器中检测到的 IP 地址访问数据库集群。

1. 如果需要添加更多 IP 地址或不同的端口范围，请选择 **Add rule (添加规则)** 并输入规则的信息。

1. （可选）在 **Outbound rules (出站规则)** 中，为出站流量添加规则。默认情况下，允许所有出站流量。

1. 选择**创建安全组**。

在创建数据库集群时，您将使用刚创建的 VPC 安全组作为数据库集群的安全组。

**注意**  
如果您使用默认 VPC，则为您创建跨越该 VPC 的所有子网的默认子网组。在创建数据库集群时，您可以选择默认 VPC 并为 **DB Subnet Group (数据库子网组)** 选择 **default (默认)**。

完成设置要求后，可以按照[创建 Amazon Aurora 数据库集群](Aurora.CreateInstance.md)中的说明使用您的要求和安全组创建数据库集群。有关开始创建使用特定数据库引擎的数据库集群的信息，请参阅 [开始使用 Amazon Aurora](CHAP_GettingStartedAurora.md)。