教程:使用控制台创建 IPAM 和池
在本教程中,您将创建 IPAM、与 AWS Organizations 集成、创建 IP 地址池,并使用 IPAM 池中的 CIDR 创建 VPC。
本教程将向您展示如何根据不同的开发需求使用 IPAM 来组织 IP 地址空间。完成本教程后,您将拥有一个用于预生产资源的 IP 地址池。然后,您可以根据路由和安全需求创建其他池,例如用于生产资源的池。
尽管您可以作为单个用户使用 IPAM,但如果与 AWS Organizations 集成,您将能够在组织中跨账户管理 IP 地址。本教程将介绍如何将 IPAM 与组织中的账户集成,不包括如何 将 IPAM 与组织外部的账户集成。
注意
本教程中的说明将向您介绍如何以特定方式命名 IPAM 资源、在特定区域中创建 IPAM 资源,以及为池使用特定的 IP 地址 CIDR 范围。此举旨在简化 IPAM 中的可用选择,便于您快速开始使用 IPAM。完成本教程后,您可能会决定创建一个新的 IPAM 并对其进行不同的配置。
内容
先决条件
开始之前,必须设置具有至少一个成员账户的 AWS Organizations 账户。有关更多信息,请参阅《AWS Organizations 用户指南》中的创建并管理组织。
AWS Organizations 如何与 IPAM 集成
本部分显示了您在本教程中使用的 AWS Organizations 账户的示例。在本教程中,与 IPAM 集成时,您将使用组织中的三个账户:
-
用于登录 IPAM 控制台并委派 IPAM 管理员的管理账户(下图中称为 example-management-account)。您不能将组织的管理账户作为 IPAM 管理员。
-
作为 IPAM 管理员账户的成员账户(下图中称为 example-member-account-1)。IPAM 管理员账户负责创建 IPAM 并使用它来管理和监控整个组织的 IP 地址使用情况。您可以将组织中的任何成员账户委派为 IPAM 管理员。
-
作为开发者账户的成员账户(上文中称为 example-member-account-2)。此账户会创建一个 VPC,其具有一个从 IPAM 池分配的 CIDR。
除账户外,您还需要组织单位(包含将其用作开发者账户的成员账户,上图中的 ou-fssg-q5brfv9c)的 ID。您需要使用此 ID,以便在后面的步骤中共享 IPAM 池时可以与该 OU 共享。
注意
有关管理账户和成员账户等 AWS Organizations 账户类型的更多信息,请参阅AWS Organizations 术语和概念。
步骤 1:委派 IPAM 管理员
在此步骤中,您将委派 AWS Organizations 成员账户作为 IPAM 管理员。当您委派 IPAM 管理员时,每个 AWS Organizations 成员账户中都会自动创建一个服务相关角色。IPAM 通过在每个成员账户中担任服务相关角色,来监控这些账户中的 IP 地址使用情况。然后,无论其组织单位如何,它都可以发现资源及其 CIDR。
您必须拥有所需的 AWS Identity and Access Management(IAM)权限,才能完成此步骤。有关更多信息,请参阅 将 IPAM 与 AWS Organization 中的账户集成。
委派 IPAM 管理员账户
使用 AWS Organizations 管理账户打开 IPAM 控制台,地址:https://console.aws.amazon.com/ipam/
。 在 AWS 管理控制台中,选择您要在其中与 IPAM 合作的 AWS 区域。
-
在导航面板中选择组织设置。
-
选择 Delegate(委派)。仅当您以 AWS Organizations 管理账户身份登录控制台时,委派选项才可用。
-
输入组织成员账户的 AWS 账户 ID。IPAM 管理员必须是 AWS Organizations 成员账户,而不是管理账户。
-
选择 Save changes(保存更改)。使用与成员账户相关的详细信息填充委派管理员信息。
步骤 2:创建 IPAM
在本步骤中,您将创建一个 IPAM。创建 IPAM 时,IPAM 会自动为 IPAM 创建两个作用域:用于所有私有空间的私有作用域和用于所有公有空间的公有作用域。范围以及池和分配是 IPAM 的关键组成部分。有关更多信息,请参阅 IPAM 的工作原理。
创建 IPAM
-
使用上一步中委派作为 IPAM 管理员的 AWS Organizations 成员账户,打开 IPAM 控制台,地址:https://console.aws.amazon.com/ipam/
。 在 AWS 管理控制台中,选择您要在其中创建 IPAM 的 AWS 区域。在主操作区域创建 IPAM。
-
在服务主页上,选择创建 IPAM。
选择 Allow Amazon VPC IP Address Manager to replicate data from source account(s) into the IPAM delegate account(允许 Amazon VPC IP 地址管理器将数据从源账户复制到 IPAM 委托账户中)。如果未选中此选项,则无法创建 IPAM。
在运营区域下,选择此 IPAM 可以在其中管理和发现资源的 AWS 区域。您要在其中创建 IPAM 的 AWS 区域将自动被选为运营区域之一。在本教程中,IPAM 的主区域是 us-east-1,因此我们将选择 us-west-1 和 us-west-2 作为其他运营区域。如果忘记了运营区域,可以稍后编辑 IPAM 设置并添加或删除区域。
选择创建 IPAM。
步骤 3:创建顶级 IPAM 池
在本教程中,您将从顶层 IPAM 池开始创建池层次结构。在后续步骤中,您将创建一对区域池和其中一个区域池中的预生产开发池。
有关可以使用 IPAM 构建的池层次结构的更多信息,请参阅 示例 IPAM 池计划。
创建顶层池
-
使用 IPAM 管理员账户打开 IPAM 控制台,地址:https://console.aws.amazon.com/ipam/
。 -
在导航窗格中,选择池。
-
选择私有作用域。
-
选择创建池。
-
在 IPAM 范围下,确保选中私有范围。
(可选)添加池的名称标签和对池的描述,如“Global pool”。
在源下,选择 IPAM 范围。这是我们的顶层池,它没有源池。
-
在地址系列下,选择 IPv4。
-
在资源规划下,保持选中在范围内规划 IP 空间。有关使用此选项规划 VPC 内的子网 IP 空间的更多信息,请参阅 教程:为子网 IP 分配规划 VPC IP 地址空间。
对于区域设置,选择无。区域设置是您希望此 IPAM 池可用于分配的 AWS 区域。您将在本教程的下一部分中为您创建的区域池设置区域设置。
-
选择要为池预置的 CIDR。在此示例中,预置的是 10.0.0.0/16。
将配置此池的分配规则设置保留为禁用状态。这是我们的顶层池,您无法直接从该池中将 CIDR 分配给 VPC。相反,您将从从该池创建的子池中进行分配。
选择创建池。池已创建,且 CIDR 处于等待预置状态:
请等待状态切换为已预置,然后再执行下一步操作。
现在,您已创建顶层池,将在 us-west-1 和 us-west-2 中创建区域池。
步骤 4:创建区域 IPAM 池
本部分将介绍如何使用两个区域池组织 IP 地址。在本教程中,我们将遵循其中一个示例 IPAM 池计划,并创建两个区域池,供您组织中的成员账户用于向其 VPC 分配 CIDR。
创建区域池
-
使用 IPAM 管理员账户打开 IPAM 控制台,地址:https://console.aws.amazon.com/ipam/
。 -
在导航窗格中,选择池。
-
选择私有作用域。
-
选择创建池。
在 IPAM 范围下,确保选中私有范围。
(可选)添加池的名称标签和池的描述,例如区域池 us-west-1。
-
在源下,选择 IPAM 池,然后选择您在 步骤 3:创建顶级 IPAM 池 中创建的顶层池(“全局池”)。然后,在区域设置下,选择 us-west-1。
-
在资源规划下,保持选中在范围内规划 IP 空间。有关使用此选项规划 VPC 内的子网 IP 空间的更多信息,请参阅 教程:为子网 IP 分配规划 VPC IP 地址空间。
-
在要预置的 CIDR 下,输入 10.0.0.0/18,这将为该池提供大约 16,000 个可用 IP 地址。
将配置此池的分配规则设置保留为禁用状态。您无法直接从该池中将 CIDR 分配给 VPC。相反,您将从从该池创建的子池中进行分配。
选择创建池。
返回到池视图查看您创建的 IPAM 池的层次结构。
重复本节中的步骤,在 us-west-2 区域设置中创建第二个区域池,并为其预置 CIDR 10.0.64.0/18。完成该过程后,您将在与此层次结构类似的层次结构中拥有三个池:
步骤 5:创建预生产开发池
按照本部分中的步骤,在其中一个区域池中创建用于预生产资源的开发池。
创建预生产开发池
-
采用上一部分中的相同方式,使用 IPAM 管理员账户创建一个名为 Pre-prod 池的池,但这次使用区域池 us-west-1 作为源池。
指定 10.0.0.0/20 的 CIDR 进行预置,这将为该池提供大约 4,000 个 IP 地址。
切换配置此池的分配规则设置选项。执行以下操作:
在 CIDR 管理下,对于自动导入已发现的资源,将默认的不允许选项保留为选中状态。此选项将使 IPAM 自动导入其在池的区域设置中发现的资源 CIDR。本教程不提供此选项的详细说明,但您可以在 创建顶级 IPv4 池 中阅读有关该选项的更多信息。
在网络掩码合规性下,为网络掩码长度最小值、默认值和最大值选择 /24。本教程不提供此选项的详细说明,但您可以在 创建顶级 IPv4 池 中阅读有关该选项的更多信息。需要注意的是,您稍后使用该池中的 CIDR 创建的 VPC 将根据此处设置限制为 /24。
在标签合规性下,输入 environment/pre-prod。VPC 需要此标签才能从池中分配空间。稍后我们将演示其工作原理。
选择创建池。
-
现在,池层次结构在区域池 us-west-1 下添加了一个额外的子池:
现在,您已准备好与组织中的另一个成员账户共享 IPAM 池,并允许该账户从池中分配 CIDR 来创建 VPC。
步骤 6:共享 IPAM 池
按照本部分中的步骤使用 AWS Resource Access Manager(RAM)共享预生产的 IPAM 池。
本部分包含两个子部分:
-
步骤 6.1. 在 AWS RAM 中启用资源共享:此步骤必须由 AWS Organizations 管理账户完成。
-
步骤 6.2. 使用 AWS RAM 共享 IPAM 池:此步骤必须由 IPAM 管理员完成。
步骤 6.1. 在 AWS RAM 中启用资源共享
创建 IPAM 后,您需要与组织中的其他账户共享 IP 地址池。在共享 IPAM 池之前,请先完成本部分中的步骤,启用与 AWS RAM 的资源共享。
启用资源共享
-
使用 AWS Organizations 管理账户打开 AWS RAM 控制台,地址:https://console.aws.amazon.com/ram/
。 -
在左侧导航窗格中,依次选择设置、启用与 AWS Organizations 共享、保存设置。
您现在可以与组织的其他成员共享 IPAM 池。
步骤 6.2. 使用 AWS RAM 共享 IPAM 池
在本部分中,您将与其他 AWS Organizations 成员账户共享预生产开发池。有关共享 IPAM 池的完整说明,例如所需 IAM 权限的相关信息,请参阅 使用 AWS RAM 共享 IPAM 池。
使用 AWS RAM 共享 IPAM 池
-
使用 IPAM 管理员账户打开 IPAM 控制台,地址:https://console.aws.amazon.com/ipam/
。 -
在导航窗格中,选择池。
-
选择私有作用域,选择预生产 IPAM 池,然后选择操作 > 查看详细信息。
-
在资源共享下,选择创建资源共享。AWS RAM 控制台将打开。您将使用 AWS RAM 共享该池。
-
选择创建资源共享。
AWS RAM 控制台将打开。
-
在 AWS RAM 控制台中,再次选择创建资源共享。
-
为共享资源添加名称。
-
在选择资源类型下,选择 IPAM 池,然后选择预生产开发池的 ARN。
-
选择下一步。
-
将默认的 AWSRAMDefaultPermissionsIpamPool 权限保留为选中状态。本教程不提供权限选项的详细信息,但您可以在 使用 AWS RAM 共享 IPAM 池 中查看有关这些选项的更多信息。
-
选择下一步。
在主体下,选择仅允许在组织内共享。输入 AWS Organizations 组织单位 ID(如 AWS Organizations 如何与 IPAM 集成 中所述,然后选择添加)。
-
选择下一步。
-
查看资源共享选项和要共享的主体,然后选择创建。
现在池已共享,请转到下一步以创建 VPC,并向其分配 IPAM 池中的 CIDR。
步骤 7:创建一个 VPC,其具有从 IPAM 池分配的 CIDR
按照本部分中的步骤,创建一个具有从预生产池分配的 CIDR 的 VPC。此步骤应由上一部分中与之共享 IPAM 池的 OU 中的成员账户(在 AWS Organizations 如何与 IPAM 集成 中名为 example-member-account-2)完成。有关创建 VPC 所需的 IAM 权限的更多信息,请参阅《Amazon VPC 用户指南》中的 Amazon VPC 策略示例。
创建一个 VPC,其具有从 IPAM 池分配的 CIDR
-
使用成员账户,作为您将用作开发者账户的成员账户打开 VPC 控制台,地址 https://console.aws.amazon.com/vpc/
。 -
选择创建 VPC。
-
执行以下操作:
-
输入名称,例如 Example VPC。
-
选择 IPAM 分配的 IPv4 CIDR 块。
-
在 IPv4 IPAM 池下,选择预生产池的 ID。
-
选择网络掩码长度。由于您将此池的可用网络掩码长度限制为 /24(在 步骤 5:创建预生产开发池 中),因此唯一可用的网络掩码选项是 /24。
-
-
为方便演示,此时请勿在标签下添加任何其他标签。当您创建预生产池时(在 5. 创建预生产开发池
中),您添加了一个分配规则,要求使用该池中的 CIDR 创建的任何 VPC 都必须具有环境/预生产标签。暂时将环境/预生产标签保留为关闭状态,以便您能够看到出现的错误,告知您没有添加所需的标签。 -
选择创建 VPC。
出现一个错误,告知您没有添加所需的标签。出现该错误是因为您在创建预生产池(在 步骤 5:创建预生产开发池 中)时设置了分配规则。分配规则要求使用此池中的 CIDR 创建的任何 VPC 都具有环境/预生产标签。
现在,在标签下,添加环境/预生产标签,然后再次选择创建 VPC。
VPC 创建成功,并且 VPC 符合预生产池上的标签规则:
在 IPAM 控制台的资源窗格中,IPAM 管理员将能够查看和管理 VPC 及其分配的 CIDR。请注意,VPC 需要一些时间才能在资源窗格中显示。
步骤 8:清除
在本教程中,您通过委派管理员创建了 IPAM,也创建了多个池,还允许组织中的成员账户从池中分配 VPC CIDR。
按照本部分中的步骤清除您在本教程中创建的资源。
清除在本教程中创建的资源
使用创建示例 VPC 的成员账户,删除 VPC。有关详细说明,请参阅《Amazon Virtual Private Cloud 用户指南》中的删除 VPC。
使用 IPAM 管理员账户删除 AWS RAM 控制台中的示例资源共享。有关详细说明,请参阅《AWS Resource Access Manager 用户指南》中的删除 AWSAWS RAM 中的资源共享。
使用 IPAM 管理员账户登录 RAM 控制台并禁用您在 步骤 6.1. 在 AWS RAM 中启用资源共享 中启用的与 AWS Organizations 共享。
使用 IPAM 管理员账户,在 IPAM 控制台中选择 IPAM,然后选择操作 > 删除,来删除示例 IPAM。有关详细说明,请参阅 删除 IPAM。
当系统提示您删除 IPAM 时,选择级联删除。这将在删除 IPAM 之前,删除 IPAM 中的所有作用域和池。
输入删除并选择删除。
使用 AWS Organizations 管理账户登录 IPAM 控制台,选择设置,然后删除委派的管理员账户。
(可选)将 IPAM 与 AWS Organizations 集成时,IPAM 会自动在每个成员账户中创建一个服务相关角色。使用每个 AWS Organizations 成员账户,登录 IAM 并删除每个成员账户中的 AWSServiceRoleForIPAM 服务相关角色。
-
清理已完成。