内部範囲 API のご紹介: Google Cloud で IP アドレス管理を簡素化
Google Cloud Japan Team
※この投稿は米国時間 2024 年 2 月 27 日に、Google Cloud blog に投稿されたものの抄訳です。
ネットワーク トポロジが拡大し、複雑さが増すにつれて、IP アドレス空間の管理も複雑になります。ハイブリッド インフラストラクチャ、クロスクラウド ネットワーク、VPC ピアリング、共有 VPC によってデプロイが複雑化すると、IP アドレスの管理はさらに困難になります。そこで、プライベート IP 管理を簡素化するため、プライベート IP アドレスを管理しやすくする新しい内部範囲 API を提供することをお知らせいたします。内部範囲 API を使用すると、次のことが可能になります。
- VPC 内のフリーアドレス範囲からサブネットを自動的に割り当てる
- 特定の Google Cloud ネットワークで使用する内部範囲を予約、保護する
- オンプレミスまたは、Google Cloud VPC で使用しないようなクロスクラウド範囲を予約、保護する
このブログ記事では、概要とともに内部範囲 API の使用方法を説明し、次に一般的なユースケースを通じて内部範囲リソースを作成する方法について解説します。
内部範囲リソース
内部範囲リソースを使用すると、VPC ネットワークの IP ネットブロックを予約、保護できます。内部範囲リソースが作成されると、その範囲は予約、保護されます。その後のリソース作成(サブネット作成など)では、作成時に内部範囲リソースを直接参照する必要があり、範囲を使用する他の試みがブロックされます。Google Cloud により、VPC 内の他のリソースがこの範囲を使用しないようにデフォルトで強制されます。この新しいリソースを VPC 内で使用する方法を以下で見ていきます。
注: 内部範囲リソースは、VPC とそのピア内にあるサブネットワークと静的ルートの既存の割り当てをすべて認識し、割り当て時に重複チェックを行います。これにより、内部範囲を既存のネットワークに段階的に追加でき、IP アドレス管理の問題が軽減されます。
Google Cloud リソースを内部範囲に関連付ける
Google Cloud リソースと内部範囲の関連付けはリソースの作成時に行えます。内部範囲は用途プロパティを通じてインテントを指定します。VPC ネットワーク ピアリングのインテントは、内部範囲のピアリング プロパティで定義することもできます。詳しくは次のセクションで説明します。
使用タイプ
- FOR_VPC - 用途が FOR_VPC に設定されている場合、予約した IP ネットブロックは、内部範囲リソースに関連付けて VPC リソースで使用できます。これはデフォルトの設定です。
- EXTERNAL_TO_VPC -
- EXTERNAL_TO_VPC 用途プロパティで作成した範囲は、現在の VPC 内の Google Cloud リソースに関連付けできません。さまざまなユースケースに合わせてアドレス範囲を予約、保護することを目的としています。たとえば、オンプレミス、クロスクラウド ネットワーク、別の VPC ですでに使用されている IP 範囲を保護する場合や、今後の使用のために IP 範囲を予約する場合に使います。
ピアリング タイプ
用途が FOR_VPC の場合、ピアリング タイプが使用されます。
- FOR_SELF - これはデフォルトの動作であり、内部範囲が作成された VPC ネットワークでのみ、内部範囲を使用できることを指定します。関連する VPC ネットワークとその VPC ネットワークのピアから範囲にアクセスできます。ただし、ピア ネットワークのピアはこの範囲を使用できません。内部範囲は、関連付けられたネットワークに属するリソースのみが参照でき、ピアによる交換ができません。
- FOR_PEER - この動作は、内部範囲がピアによる使用のために予約されている場合に設定できます。つまり、リソースが作成されている VPC 内のどのリソースも、ローカル VPC リソースに関連付けるために内部範囲を使用できませんが、ピアなら内部範囲を使用できます。これにより、ピア ネットワークの使用する範囲が効果的に予約され、提供されます。
- NOT_SHARED(今後のユースケース用)- この動作は、内部範囲が作成された VPC による使用のために予約されているものの、ピアと共有されていない場合に設定できます。これにより、ローカル VPC のみに使用される内部範囲が効果的に予約されます。
注: NOT_SHARED は今後のユースケース向けであり、このプロパティに関連付けられた内部範囲を参照できるリソースは現在ありません。ただし、副作用があり、保護されている範囲の対象となる新しい静的ルートを作成できません。
ユースケース
ユースケース 1: 内部範囲を使用してサブネットワークを作成する
my-vpc-name という VPC があるとします。内部範囲を参照してサブネットの使用可能プライベート IP アドレス空間を指定することで、サブネットワークを作成できます。サブネットワークは、内部範囲全体または範囲のサブセットに関連付けることができます。サブネットワークのセカンダリ範囲を内部範囲に関連付けることもできます。
ステップ 1: 適切な IAM 権限がすでに付与されており、VPC ネットワークが作成されていることを確認します。
ステップ 2: 内部範囲を作成して、必要なサイズの空きアドレス空間を割り当てます。サイズ /24 のサブネットを作成するとします。
ステップ 3: 内部範囲全体を使用するサブネットワークを作成します。
ステップ 4: 内部範囲の一部を使用するサブネットワークを作成します。
ユースケース 2: オンプレミスの範囲を予約、保護する
オンプレミス ネットワークが VPC ネットワークに接続されている場合、「EXTERNAL_TO_VPC」用途プロパティを使用して、内部範囲がオンプレミス ネットワーク用に予約されることを指定できます。すると、予約範囲と競合する VPC 内にサブネットワークまたはルートを作成しようとする試みが Google Cloud に拒否されます。
ユースケース 3: 内部範囲を持つ GKE クラスタを作成する
この API は、Google Kubernetes Engine(GKE)が利用可能な範囲を自動的に割り当てる方法を提供しながら、競合が存在しないようにします。
ステップ 1: 適切な IAM 権限がすでに付与されており、それに応じて VPC を作成していることを確認します。
ステップ 2: 以下に示すように、GKE ノード、GKE Pod、GKE サービスの IP 範囲を予約します。
a)
b)
c)
ステップ 3: 上記の内部範囲を使用してサブネットを作成します。
ステップ 4: VPC ネイティブ クラスタを作成します。
Infoblox 内部範囲のインテグレーション
ネットワーク セキュリティ ベンダーの Infoblox との協力により、内部範囲は Infoblox の統合 DNS、DHCP、IPAM ソリューション(DDI)に組み込まれ、VPC ネットワーク、クロスクラウド ネットワーク、ハイブリッド ワークロードのデプロイのために可視性と制御を強化しています。
「オンプレミスとプライベート / パブリック クラウドを組み合わせてハイブリッド クラウド環境でネットワーク リソースを管理することは、IP アドレス管理(IPAM)が複雑になるため容易ではありません。すべての環境には固有の IPAM ニーズがあり、整合性を確保し競合を防ぐために入念な調整が必要です。」- Infoblox、プロダクト マネージャー Jeevan Sharma 氏
Infoblox と Google の内部範囲のインテグレーションは次のとおりです。
Infoblox の BloxOne DDI と Google の内部範囲を使用すると、GCP リソース、GKE リソース、クロスクラウド ネットワークにエンタープライズ IPAM ポリシーを適用できます。BloxOne DDI は、割り当てられた IP アドレスの一元管理を提供し、Google Cloud の Google 内部範囲 API を完全に統合することで、ハイブリッド クラウド環境の IPAM を簡素化します。BloxOne DDI は、API または Cloud Services Portal(CSP)を使用した単一のワークフローを提供し、Google Cloud で内部範囲リソースを作成して VPC やサブネットに関連付け、用途プロパティを管理し、ピアリング インテントを定義します。
内部範囲 API の詳細
プライベート IP アドレスの管理は複雑ですが、内部範囲 API を使用すれば簡単になります。内部範囲 API を使用すると、サブネットを自動的に割り当て、特定の Google Cloud ネットワークで使用する内部範囲を予約、保護するだけでなく、Google Cloud VPC で使用されないようなクロスクラウド範囲を保護することができます。内部 IP 範囲の作成と予約について詳しくは、こちらをご覧ください。
注: この機能には、Google Cloud 利用規約の pre-GA サービス規約が適用されます。pre-GA の機能についてはサポートが制限されます。また、pre-GA の機能の変更は pre-GA の他のバージョンと互換性がない可能性があります。詳細については、リリース ステージの説明をご覧ください。
-Google、Cloud テクニカル ソリューション スペシャリスト Muhammad Farrukh Munir
-Google、Cloud テクニカル ソリューション スペシャリスト Selin Goksu