チュートリアル: コンソールを使用して IPAM とプールを作成する
このチュートリアルでは、IPAM を作成し、AWS Organizations を統合し、IP アドレスプールを作成して、IPAM プールの CIDR を使って VPC を作成します。
このチュートリアルでは、IPAM を使用して、さまざまな開発ニーズに基づき IP アドレス空間を整理する方法について説明します。このチュートリアルを終了すると、本番稼働前のリソース用の IP アドレスプールが 1 つ完成します。その後、ルーティングとセキュリティのニーズに基づき、本番稼働用リソースのプールなど他のプールを作成することができます。
IPAM は単一のユーザーとしても使用できますが、AWS Organizations と統合すれば、組織内のアカウント全体の IP アドレスを管理できます。このチュートリアルでは、IPAM を組織内のアカウントと統合する方法も説明します。「IPAM を組織外のアカウントに統合する」方法については取り上げません。
注記
このチュートリアルでは、IPAM リソースに名前を付ける方法、特定のリージョンに IPAM リソースを作成する方法、プールに特定の IP アドレス CIDR 範囲を使用する方法を、説明します。これは、IPAM で利用できる選択肢を簡素化し、IPAM をすぐに開始できるようにすることを意図しています。このチュートリアルを終了すると、新しい IPAM を作成してその設定を変更できます。
内容
前提条件
開始する前に、1 つ以上のメンバーアカウントを持つ AWS Organizations アカウントを、セットアップする必要があります。手順については、「AWS Organizations ユーザーガイド」の「組織の作成と管理」を参照してください。
AWS Organizations を IPAM と統合する方法
このセクションでは、このチュートリアルで使用する AWS Organizations アカウントの例を紹介します。このチュートリアルで、IPAM と統合する際に使用する組織内のアカウントは、次の 3 つです。
-
管理アカウント (以下の図の example-management-account)。IPAM コンソールにログインして IPAM の管理者を委任するときに使用します。組織の管理アカウントを IPAM の管理者として使用することはできません。
-
メンバーアカウント (以下の図の example-member-account-1)。IPAM の管理者アカウントとして使用します。IPAM の管理者アカウントは、IPAM の作成と、組織全体における IP アドレスの使用状況の、IPAM を使用した管理およびモニタリングを行います。組織内のメンバーアカウントは、いずれも IPAM の管理者として委任することが可能です。
-
メンバーアカウント (以下の図の example-member-account-2)。デベロッパーアカウントとして使用します。このアカウントは、IPAM プールから割り当てられた CIDR を使って VPC を作成します。
これらのアカウントに加え、デベロッパーアカウントとして使用するメンバーアカウントが含まれる、組織単位の ID が必要になります (上の図の ou-fssg-q5brfv9c)。この 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 Organizations 内のアカウントと統合する」を参照してください。
IPAM の管理者アカウントとして委任するには
AWS Organizations 管理アカウントを使って IPAM コンソール (https://console.aws.amazon.com/ipam/
) を開きます。 AWS マネジメントコンソールで、IPAM を使用する AWS リージョンを選択します。
-
ナビゲーションペインで [組織の設定] を選択します。
-
[委任] を選択します。[委任] オプションは、コンソールに AWS Organizations 管理アカウントとしてログインしている場合のみ使用できます。
-
組織のメンバーアカウントの AWS アカウント ID を入力します。IPAM の管理者は、AWS Organizations の管理アカウントではなく、メンバーアカウントでなければなりません。
-
[Save changes] (変更の保存) をクリックします。[委任された管理者] の情報に、そのメンバーアカウントに関する詳細が入力されます。
ステップ 2: IPAM を作成する
このセクションでは、IPAM を作成します。IPAM を作成するときは、IPAM が、IPAM 用に 2 つのスコープを自動作成します。すべてのプライベートスペース用のプライベートスコープと、すべてのパブリックスペース用のパブリックスコープです。スコープは、プールおよび割り当てとともに、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 Address Manager がソースアカウントから IPAM 委任アカウントにデータをレプリケートするのを許可する) を選択します。このオプションを選択しないと、IPAM を作成できません。
[運用リージョン] で、この IPAM がリソースを管理および検出できる AWS リージョンを選択します。IPAM を作成している AWS リージョンは、運用リージョンの 1 つとして自動的に選択されます。このチュートリアルでは、IPAM のホームリージョンは us-east-1 です。したがって、追加の運用リージョンとして us-west-1 と us-west-2 を選択します。運用リージョンを忘れた場合は、後で IPAM の設定を編集し、リージョンを追加または削除することができます。
[Create IPAM] (IPAM を作成) を選択します。
ステップ 3: 最上位の IPAM プールの作成する
このチュートリアルでは、最上位の IPAM プールから始まるプールの階層を作成します。これ以降のステップでは、リージョンプールのペアと、そのうちの 1 つに含まれる本番稼働前開発プールを作成します。
IPAM を使って構築するプール階層の詳細については、「IPAM プール計画の例」を参照してください。
最上位のプールを作成するには
-
IPAM の管理者アカウントを使って IPAM コンソール (https://console.aws.amazon.com/ipam/
) を開きます。 -
ナビゲーションペインで、[プール] を選択します。
-
プライベートスコープを選択します。
-
[プールを作成] を選択します。
-
[IPAM スコープ] では、プライベートスコープを選択したままにします。
(オプション) プールの [名前タグ] とプールの説明 (「グローバルプール」など) を追加します。
[ソース]で [IPAM 範囲] を選択します。こちらは最上位のプールであるためソースプールはありません。
-
[アドレスファミリー] には [IPv4] を選択します。
-
[リソース計画] で、[範囲内のIP 空間計画] は選択したままにしておきます。このオプションを使用して VPC 内のサブネット IP スペースを計画する方法の詳細については、「チュートリアル: サブネット IP 割り当て用の VPC IP アドレス空間を計画する」を参照してください。
[Locale] (ロケール) で、[None] (なし) を選択します。ロケールは、この IPAM プールを割り当て可能にしようとしている AWS リージョンです。作成するリージョンプールのロケールは、本チュートリアルの次のセクションで設定します。
-
(オプション) プール用にプロビジョニングする CIDR を選択します。こちらの例では、10.0.0.0/16 をプロビジョニングします。
[このプールの割り当てルールを設定する] は無効のままにします。こちらは最上位のプールであり、このプールから VPC へ CIDR を直接割り当てることはできません。代わりに、このプールから作成したサブプールから、割り当てを行います。
[プールを作成] を選択します。プールが作成され、CIDR が [保留中のプロビジョン] 状態になります。
状態が [プロビジョニング済み] に変わったら、次のステップに進みます。
最上位のプールが作成されたので、次に、us-west-1 と us-west-2 にリージョンプールを作成します。
ステップ 4: リージョンの IPAM プールを作成する
このセクションでは、2 つのリージョンプールを使用して IP アドレスを整理する方法について説明します。このチュートリアルでは、IPAM プールプラン例の 1 つに従い、組織内のメンバーアカウントが VPC に CIDR を割り当てるときに使用できる、2 つのリージョンプールを作成します。
リージョンプールを作成するには
-
IPAM の管理者アカウントを使って IPAM コンソール (https://console.aws.amazon.com/ipam/
) を開きます。 -
ナビゲーションペインで、[プール] を選択します。
-
プライベートスコープを選択します。
-
[プールを作成] を選択します。
[IPAM スコープ] では、プライベートスコープを選択したままにします。
(オプション) プールの [名前タグ] と、プールの説明 (Regional pool us-west-1 など) を追加します。
-
[ソース] で、[IPAM プール] を選択し、「ステップ 3: 最上位の IPAM プールの作成する」で作成した最上位のプール (「グローバルプール」) を選択します。次に、[ロケール] で us-west-1 を選択します。
-
[リソース計画] で、[範囲内の IP スペースを計画] は選択したままにしておきます。このオプションを使用して VPC 内のサブネット IP スペースを計画する方法の詳細については、「チュートリアル: サブネット IP 割り当て用の VPC IP アドレス空間を計画する」を参照してください。
-
[プロビジョニングする CIDR] に 10.0.0.0/18 と入力します。これにより、このプールで約 16,000 の IP アドレスが利用できるようになります。
[このプールの割り当てルールを設定する] は無効のままにします。このプールから VPC へ CIDR を直接割り当てることはできません。代わりに、このプールから作成したサブプールから、割り当てを行います。
[プールを作成] を選択します。
[プール] 画面に戻ると、作成した IPAM プールの階層を確認できます。
このセクションのステップを繰り返し、us-west-2 ロケールに、それのためにプロビジョニングされた CIDR 10.0.64.0/18 を使って、2 つ目のリージョンプールを作成します。このプロセスを完了すると、次のように、階層に 3 つのプールが完成しています。
ステップ 5: 本番稼働前の開発プールを作成する
このセクションのステップに従って、いずれかのリージョンプールに、本番稼働前のリソース用の開発プールを作成します。
本番稼働前の開発プールを作成するには
-
前のセクションで行った方法と同じ方法で、IPAM の管理者アカウントを使用して Pre-prod pool という名前のプールを作成します。ただし、ここではソースプールに Regional pool us-west-1 を使用します。
プロビジョニングする CIDR を 10.0.0.0/20 に指定します。これで、このプールに約 4,000 の IP アドレスが付与されます。
[このプールの割り当てルールを設定する] のオプションを切り替えます。以下の操作を実行します。
[CIDR 管理] の [検出されたリソースを自動的にインポート] は、デフォルトの [許可しない] を選択したままにします。これを選択しておくことで、IPAM は、プールのロケールで検出したリソース CIDR を、自動的にインポートすることができます。このオプションの詳しい説明は本チュートリアルの対象外ですが、詳細は「トップレベル IPv4 プールを作成する」でご覧いただけます。
[ネットマスクのコンプライアンス] で、最小、デフォルト、最大のネットマスクの長さとして、[/24] を選択します。このオプションの詳しい説明は本チュートリアルの対象外ですが、詳細は「トップレベル IPv4 プールを作成する」でご覧いただけます。注意すべき点は、後ほどこのプールの CIDR を使用して作成する VPC は、ここでの設定に基づき、/24 に制限されるということです。
[タグコンプライアンス] に environment/pre-prod と入力します。このタグは、VPC がプールからスペースを割り当てるときに必要になります。この仕組みについては、後ほど説明します。
[プールを作成] を選択します。
-
プール階層の Regional pool us-west-1 の下に、新たにサブプールが追加されました。
これで、組織内の別のメンバーアカウントと IPAM プールを共有し、そのアカウントでプールから CIDR を割り当て、VPC を作成する準備が整いました。
ステップ 6: IPAM プールを共有する
このセクションのステップに従って、AWS Resource Access Manager (RAM) を使用して本番稼働前の IPAM プールを共有します。
このセクションは 2 つのサブセクションから構成されています。
-
ステップ 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 メンバーアカウントと共有します。必要な IAM アクセス許可に関する情報を含め、IPAM プールの共有に関する詳細な手順については、「AWS RAM を使用して IPAM プールを共有する」を参照してください。
AWS RAM を使用して IPAM プールを共有するには
-
IPAM の管理者アカウントを使って IPAM コンソール (https://console.aws.amazon.com/ipam/
) を開きます。 -
ナビゲーションペインで、[プール] を選択します。
-
プライベートスコープを選択し、本番稼働前の IPAM プールを選択して、[アクション] > [詳細を表示] の順に選択します。
-
[Resource sharing] (リソース共有) で [Create resource share] (リソース共有の作成) を選択します。AWS RAM コンソールが開きます。AWS RAM を使用してプールを共有します。
-
[リソースの共有の作成] を選択します。
AWS RAM コンソールが開きます。
-
AWS RAM コンソールで、[リソースの共有を作成] を再度選択します。
-
共有リソースの [名前] を追加します。
-
[リソースタイプを選択] で [IPAM プール] を選択し、次に、本番稼働前開発プールの ARN を選択します。
-
[Next] を選択します。
-
デフォルトの AWSRAMDefaultPermissionsIpamPool アクセス許可を選択したままにしておきます。アクセス許可オプションの詳細は本チュートリアルの対象外ですが、このオプションの詳細は「AWS RAM を使用して IPAM プールを共有する」にてご覧いただけます。
-
[Next] を選択します。
[プリンシパル] で [自分の組織内でのみ共有を許可] を選択します。AWS Organizations 組織単位 ID を入力し (「AWS Organizations を IPAM と統合する方法」の説明のとおり)、[追加] を選択します。
-
[Next] を選択します。
-
リソース共有オプションと共有先のプリンシパルを確認し、[作成] を選択します。
プールが共有されたので、次のステップで、IPAM プールから割り当てられた CIDR を使って VPC を作成します。
ステップ 7: IPAM プールから割り当てられた CIDR を使用して VPC を作成する
このセクションのステップに従って、本番稼働前のプールから割り当てられた CIDR を使って VPC を作成します。このステップは、前のセクションで IPAM プールが共有された、OU のメンバーアカウント (「AWS Organizations を IPAM と統合する方法」の example-member-account-2) が実行する必要があります。VPC の作成に必要な IAM アクセス許可の詳細については、「Amazon VPC ユーザーガイド」の「Amazon VPC ポリシーの例」を参照してください。
IPAM プールから割り当てられた CIDR を使って VPC を作成するには
-
メンバーアカウントを使用して、デベロッパーアカウントとして使用するメンバーアカウントとして VPC コンソール (https://console.aws.amazon.com/vpc/
) を開きます。 -
[Create VPC (VPC の作成)] を選択します。
-
以下の操作を実行します。
-
名前 (Example VPC など) を入力します。
-
[IPAM が割り当てられた IPv4 CIDR ブロック] を選択します。
-
[IPv4 IPAM プール] で本番稼働前プールの ID を選択します。
-
[ネットマスク] の長さを選択します。このプールで使用できるネットマスクの長さは (「ステップ 5: 本番稼働前の開発プールを作成する」で) /24 に制限されているため、選択可能なオプションは /24 のみです。
-
-
例として示すため、この時点では、[タグ] 下にいずれのタグも追加しません。(「ステップ 5: 本番稼働前の開発プールを作成する」で) 本番稼働前のプールを作成した際に、このプールの CIDR を使って作成した VPC には environment/pre-prod タグを付けなければならない、という割り当てルールを追加しました。ここでは、必要なタグが付いていないことを示すエラーを確認できるようにするため、environment/pre-prod タグは付けずに次へ進みます。
-
[Create VPC (VPC の作成)] を選択します。
必要なタグが追加されていないことを示すエラーが表示されます。このエラーは、本番稼働前プールを作成したとき (「ステップ 5: 本番稼働前の開発プールを作成する」) に割り当てルールを設定したため、表示されています。この割り当てルールは、このプールの CIDR を使って作成されるすべての VPC に、environment/pre-prod タグを付けることを要求していました。
次に、[タグ] で、タグ environment/pre-prod を追加し、[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 内のすべてのスコープとプールが削除されます。
delete と入力し、[削除] を選択します。
AWS Organizations 管理アカウントを使用して IPAM コンソールにログインし、[設定] を選択して、委任された管理者アカウントを削除します。
(オプション) IPAM を AWS Organizations と統合すると、IPAM は、サービスリンクロールを各メンバーアカウントに自動的に作成します。各 AWS Organizations メンバーアカウントを使用して IAM にログインし、各メンバーアカウントの AWSServiceRoleForIPAM サービスにリンクされたロールを削除します。
-
これで、クリーンアップは完了です。